home.social

Search

1000 results for “alt_graph”

  1. OS/2 Warp 4.52 on 86Box with Super Socket 7 [1998]

    OS/2 was a proprietary operating system that was initially developed by IBM in partnership with Microsoft as a replacement of DOS before it became entirely developed by IBM. OS/2 Warp 4 was officially released in 1996, and development slowed down to a halt because it failed to compete Microsoft Windows. OS/2 Warp 4.52 was officially released in December 2001, and this year, it will celebrate its 25th year anniversary.

    Our focus in this article is testing OS/2 Warp 4.52 on an 86Box emulated machine with a Super Socket 7 [1998] motherboard. You can download it from here.

    We’ve configured the virtual machine as follows:

    We’ve configured a virtual machine to run with:

    • Machine type: [1998] Super Socket 7
    • Machine: [SiS 5591] Gigabyte GA-5SG100
    • CPU: Intel Pentium @ 166 MHz
    • Memory: 128 MB
    • Video: [ISA16] Cirrus Logic GD5434
    • Keyboard: AT Keyboard
    • Mouse: PS/2 Mouse
    • Sound card: [ISA16] Sound Blaster 16 PnP
    • Floppy disk controller: Internal device
    • Hard disk controller 1: Internal device
    • New hard disk: os2warp452.vhd
      • C/H/S: 1054/16/63
      • Size: 518 MB
      • Bus: IDE
      • Channel: 0:0
    • CD-ROM drive 1: ATAPI (0:1) KENWOOD CD-ROM UCR-421 208E (72x)

    Once everything is configured as above, we can now start the virtual machine. Insert the boot disc called mcp2-refresh-boot-en.iso to the CD-ROM reader, then configure BIOS as necessary.

    To be more specific, we need to go to the BIOS setup using DEL and change the boot order so that CD-ROM goes first with PGUP/PGDN.

    After that, we save the changes and restart the virtual machine.

    The installer starts by telling you to insert the installation CD-ROM to the drive.

    In this case, right-click on the CD-ROM icon, select “Insert…”, select mcp2-refresh-install-en.iso, and double-click it. Then, press ENTER.

    After that, you should be able to see this welcome screen:

    Press ENTER, and you’ll be taken to another screen that welcomes you to the operating system installer.

    Press ENTER. At this point, since it’s a fresh installation, and the hard drive is already empty, you’ll get the “Volumes Too Small” message. This means that you’ll need to create a single partition that will be used to install OS/2 Warp 4.52 to.

    Press ENTER, and you’ll get a warning message telling you that all data on modified volumes will be deleted, and that backups should be made. Since there is no data on the hard drive, you can safely ignore this warning. Just press ENTER.

    After that, you’ll be taken to the partitioning screen where you’ll be presented with the logical volume manager, with the logical view being the default. Press F5, and you’ll be taken to a screen where you can see your hard disk, such as the below screenshot:

    Here, you can create a physical partition. Press TAB, then ENTER, and you’ll be presented with those options.

    Press ENTER to create a new partition. You’ll be asked whether this partition is going to be logical or primary. Select “Primary partition”.

    After you select it, you’ll be presented with various dialog boxes telling you to specify the size and the name of the partition, as well as the position of the partition. Select “Create at the start of the free space”, then enter the partition name, then the size.

    After that, this partition should be created.

    We are not done yet when it comes to partitioning, so we need to go back to the logical view. Press ENTER, then press ENTER on “Create a new volume”. Then, select “Create a volume that can be made bootable”, then C:.

    You’ll be brought back to the physical view that will tell you to choose a physical disk. Below the physical disk, the logical partition should be shown at the bottom of the screen. Press ENTER when this dialog box appears.

    Press ENTER again, then select “Use existing partition”.

    Now, a new logical volume will appear with the partition name that you’ve chosen. However, it’s still not ready yet for installation, since there are extra steps that are needed. We need to make it installable.

    Press ENTER, and you should see the menu box below:

    Select “Set the volume installable”. The status of your logical volume should change from “Startable” to “Installable”. Afterwards, press F3, and press ENTER when “Save the changes and exit” is highlighted.

    Afterwards, you should be able to see the below dialog box telling you to insert the boot CD-ROM to the drive and restart the virtual machine using CTRL + ALT + DEL.

    At this point, we need to change the BIOS boot order to avoid the black screen issue. Press DEL, go to BIOS Features Setup, and change the boot order so that CD-ROM goes first.

    Then, exit the BIOS setup while saving changes, and follow the instructions all the way until the following screen shows up:

    Verify that “Volume C” shows up. If not, you’ll have to configure the partitions again until the volume shows up in this screen. Since we’ve already configured everything, and that Volume C corresponds to our hard disk, press ENTER when “Accept the volume” is highlighted.

    Then, the installer asked us whether we’d like to format it slowly or quickly. This is a clean installation, so we’ve chosen a quick format. Then, the installer asked us whether we’d like to use FAT or HPFS. We’ve chosen the HPFS file system.

    After that, the installation of the base system begins.

    After that, the virtual machine will automatically restart. Go back to the BIOS setup and make sure that the C drive comes first before the CD-ROM.

    After that, OS/2 Warp should boot up to the GUI portion of the installer. The first thing you’ll be presented with is the configuration of the system, including the country, the graphics adapter, and the sound adapter.

    First of all, we went to “Multimedia Device Support”, and added the SoundBlaster 16 PnP device to the list of installed devices.

    Afterwards, we’re presented with another set of configuration, once we’ve selected “Next”. SInce there’s no need to configure anything on that screen, we’ve just clicked Next. Then, it presented us with options to choose the country/region, with the default selected country being “United States.”

    Then, the printer configuraion window has shown up. SInce there’s no printer installed, we’ll leave it as it is.

    We’re then presented with the graphics adapter configuration. It automatically selected the Cirrus Logic graphics adapter as we’ve chosen earlier for the virtual machine configuration.

    Once we’ve selected OK, we’re then presented with a set of packages to install.

    As soon as we clicked “Next”, we’re presented with another wizard that lets us configure some more services.

    Once we clicked Next, we’re presented with a prompt to identify ourselves.

    After that, we’re given another set of software packages to install. They represent the client services for OS/2.

    Once we clicked Next, we’re presented with another configuration screen where we needed to configure the user ID and password for the file and print sharing services, and the network adapter and protocol services.

    We went to create a new ID and a password for the sharing service

    Then, we went to “Network Adapters and Protocol Services”, and a dialog box that told us to add a network adapter appeared. Since we don’t intend to have internet connectivity in this installation of OS/2 Warp 4.52, we’ve selected “No network adapter.”

    Once we pressed OK, we’ve seen this result:

    Now, we’ve pressed Install, and a confirmation dialog box appeared.

    Now, the installation of the remaining system files started here.

    Once it was done copying files, we’re asked whether to use the defaults for the monitor type or to use the display adapter utility program.

    We’ve chosen the defaults, and an informational box appeared stating that the screen might flicker while the testing was underway.

    After that, the remaining portions of the installation started. This is part one of the long waiting journey!

    After the restart, depending on the region selected, OS/2 Warp 4.52 might tell you that there’s something wrong in the CONFIG.SYS file related to the codepage, just like below.

    After that, the long waiting journey continues…

    The system then restarted, and the desktop finally appeared, but with another dialog box asking us whether we needed to install sets of extra tools or not.

    We’ve chosen the biggest option, which was “OS/2 Toolkit (English only)”. Then, we’ve clicked on Install once we’ve inserted the boot disk back to the CD-ROM drive.

    Then, a configuration window where it tells us to configure the installation of the OS/2 Toolkit, just like below.

    We’ve chosen to install everything, so we just chose Install. Yet another long wait journey starts…

    After the installation of the toolkit reached 100%, a dialog box that told us that the installation was successful showed up. Once done, we’ve clicked on Quit in the toolkit installer.

    Since the dialog box told us that the CONFIG.SYS file was modified and that we needed to restart the virtual machine. Therefore, we’ve clicked on Exit, then right-clicked on an empty area around the desktop and chose “Shut down”.

    Once the shut down was done, we had to press CTRL + ALT + DEL in the virtual machine side. After that, the system booted up to the desktop, and the sound works!

    Nostalgic, isn’t it?

    #86Box #Linux #news #OS2 #OS2Warp #OS2Warp4 #OS2Warp452 #Retrocomputing #Tech #Technology #update
  2. OS/2 Warp 4.52 on 86Box with Super Socket 7 [1998]

    OS/2 was a proprietary operating system that was initially developed by IBM in partnership with Microsoft as a replacement of DOS before it became entirely developed by IBM. OS/2 Warp 4 was officially released in 1996, and development slowed down to a halt because it failed to compete Microsoft Windows. OS/2 Warp 4.52 was officially released in December 2001, and this year, it will celebrate its 25th year anniversary.

    Our focus in this article is testing OS/2 Warp 4.52 on an 86Box emulated machine with a Super Socket 7 [1998] motherboard. You can download it from here.

    We’ve configured the virtual machine as follows:

    We’ve configured a virtual machine to run with:

    • Machine type: [1998] Super Socket 7
    • Machine: [SiS 5591] Gigabyte GA-5SG100
    • CPU: Intel Pentium @ 166 MHz
    • Memory: 128 MB
    • Video: [ISA16] Cirrus Logic GD5434
    • Keyboard: AT Keyboard
    • Mouse: PS/2 Mouse
    • Sound card: [ISA16] Sound Blaster 16 PnP
    • Floppy disk controller: Internal device
    • Hard disk controller 1: Internal device
    • New hard disk: os2warp452.vhd
      • C/H/S: 1054/16/63
      • Size: 518 MB
      • Bus: IDE
      • Channel: 0:0
    • CD-ROM drive 1: ATAPI (0:1) KENWOOD CD-ROM UCR-421 208E (72x)

    Once everything is configured as above, we can now start the virtual machine. Insert the boot disc called mcp2-refresh-boot-en.iso to the CD-ROM reader, then configure BIOS as necessary.

    To be more specific, we need to go to the BIOS setup using DEL and change the boot order so that CD-ROM goes first with PGUP/PGDN.

    After that, we save the changes and restart the virtual machine.

    The installer starts by telling you to insert the installation CD-ROM to the drive.

    In this case, right-click on the CD-ROM icon, select “Insert…”, select mcp2-refresh-install-en.iso, and double-click it. Then, press ENTER.

    After that, you should be able to see this welcome screen:

    Press ENTER, and you’ll be taken to another screen that welcomes you to the operating system installer.

    Press ENTER. At this point, since it’s a fresh installation, and the hard drive is already empty, you’ll get the “Volumes Too Small” message. This means that you’ll need to create a single partition that will be used to install OS/2 Warp 4.52 to.

    Press ENTER, and you’ll get a warning message telling you that all data on modified volumes will be deleted, and that backups should be made. Since there is no data on the hard drive, you can safely ignore this warning. Just press ENTER.

    After that, you’ll be taken to the partitioning screen where you’ll be presented with the logical volume manager, with the logical view being the default. Press F5, and you’ll be taken to a screen where you can see your hard disk, such as the below screenshot:

    Here, you can create a physical partition. Press TAB, then ENTER, and you’ll be presented with those options.

    Press ENTER to create a new partition. You’ll be asked whether this partition is going to be logical or primary. Select “Primary partition”.

    After you select it, you’ll be presented with various dialog boxes telling you to specify the size and the name of the partition, as well as the position of the partition. Select “Create at the start of the free space”, then enter the partition name, then the size.

    After that, this partition should be created.

    We are not done yet when it comes to partitioning, so we need to go back to the logical view. Press ENTER, then press ENTER on “Create a new volume”. Then, select “Create a volume that can be made bootable”, then C:.

    You’ll be brought back to the physical view that will tell you to choose a physical disk. Below the physical disk, the logical partition should be shown at the bottom of the screen. Press ENTER when this dialog box appears.

    Press ENTER again, then select “Use existing partition”.

    Now, a new logical volume will appear with the partition name that you’ve chosen. However, it’s still not ready yet for installation, since there are extra steps that are needed. We need to make it installable.

    Press ENTER, and you should see the menu box below:

    Select “Set the volume installable”. The status of your logical volume should change from “Startable” to “Installable”. Afterwards, press F3, and press ENTER when “Save the changes and exit” is highlighted.

    Afterwards, you should be able to see the below dialog box telling you to insert the boot CD-ROM to the drive and restart the virtual machine using CTRL + ALT + DEL.

    At this point, we need to change the BIOS boot order to avoid the black screen issue. Press DEL, go to BIOS Features Setup, and change the boot order so that CD-ROM goes first.

    Then, exit the BIOS setup while saving changes, and follow the instructions all the way until the following screen shows up:

    Verify that “Volume C” shows up. If not, you’ll have to configure the partitions again until the volume shows up in this screen. Since we’ve already configured everything, and that Volume C corresponds to our hard disk, press ENTER when “Accept the volume” is highlighted.

    Then, the installer asked us whether we’d like to format it slowly or quickly. This is a clean installation, so we’ve chosen a quick format. Then, the installer asked us whether we’d like to use FAT or HPFS. We’ve chosen the HPFS file system.

    After that, the installation of the base system begins.

    After that, the virtual machine will automatically restart. Go back to the BIOS setup and make sure that the C drive comes first before the CD-ROM.

    After that, OS/2 Warp should boot up to the GUI portion of the installer. The first thing you’ll be presented with is the configuration of the system, including the country, the graphics adapter, and the sound adapter.

    First of all, we went to “Multimedia Device Support”, and added the SoundBlaster 16 PnP device to the list of installed devices.

    Afterwards, we’re presented with another set of configuration, once we’ve selected “Next”. SInce there’s no need to configure anything on that screen, we’ve just clicked Next. Then, it presented us with options to choose the country/region, with the default selected country being “United States.”

    Then, the printer configuraion window has shown up. SInce there’s no printer installed, we’ll leave it as it is.

    We’re then presented with the graphics adapter configuration. It automatically selected the Cirrus Logic graphics adapter as we’ve chosen earlier for the virtual machine configuration.

    Once we’ve selected OK, we’re then presented with a set of packages to install.

    As soon as we clicked “Next”, we’re presented with another wizard that lets us configure some more services.

    Once we clicked Next, we’re presented with a prompt to identify ourselves.

    After that, we’re given another set of software packages to install. They represent the client services for OS/2.

    Once we clicked Next, we’re presented with another configuration screen where we needed to configure the user ID and password for the file and print sharing services, and the network adapter and protocol services.

    We went to create a new ID and a password for the sharing service

    Then, we went to “Network Adapters and Protocol Services”, and a dialog box that told us to add a network adapter appeared. Since we don’t intend to have internet connectivity in this installation of OS/2 Warp 4.52, we’ve selected “No network adapter.”

    Once we pressed OK, we’ve seen this result:

    Now, we’ve pressed Install, and a confirmation dialog box appeared.

    Now, the installation of the remaining system files started here.

    Once it was done copying files, we’re asked whether to use the defaults for the monitor type or to use the display adapter utility program.

    We’ve chosen the defaults, and an informational box appeared stating that the screen might flicker while the testing was underway.

    After that, the remaining portions of the installation started. This is part one of the long waiting journey!

    After the restart, depending on the region selected, OS/2 Warp 4.52 might tell you that there’s something wrong in the CONFIG.SYS file related to the codepage, just like below.

    After that, the long waiting journey continues…

    The system then restarted, and the desktop finally appeared, but with another dialog box asking us whether we needed to install sets of extra tools or not.

    We’ve chosen the biggest option, which was “OS/2 Toolkit (English only)”. Then, we’ve clicked on Install once we’ve inserted the boot disk back to the CD-ROM drive.

    Then, a configuration window where it tells us to configure the installation of the OS/2 Toolkit, just like below.

    We’ve chosen to install everything, so we just chose Install. Yet another long wait journey starts…

    After the installation of the toolkit reached 100%, a dialog box that told us that the installation was successful showed up. Once done, we’ve clicked on Quit in the toolkit installer.

    Since the dialog box told us that the CONFIG.SYS file was modified and that we needed to restart the virtual machine. Therefore, we’ve clicked on Exit, then right-clicked on an empty area around the desktop and chose “Shut down”.

    Once the shut down was done, we had to press CTRL + ALT + DEL in the virtual machine side. After that, the system booted up to the desktop, and the sound works!

    Nostalgic, isn’t it?

    #86Box #Linux #news #OS2 #OS2Warp #OS2Warp4 #OS2Warp452 #Retrocomputing #Tech #Technology #update
  3. OS/2 Warp 4.52 on 86Box with Super Socket 7 [1998]

    OS/2 was a proprietary operating system that was initially developed by IBM in partnership with Microsoft as a replacement of DOS before it became entirely developed by IBM. OS/2 Warp 4 was officially released in 1996, and development slowed down to a halt because it failed to compete Microsoft Windows. OS/2 Warp 4.52 was officially released in December 2001, and this year, it will celebrate its 25th year anniversary.

    Our focus in this article is testing OS/2 Warp 4.52 on an 86Box emulated machine with a Super Socket 7 [1998] motherboard. You can download it from here.

    We’ve configured the virtual machine as follows:

    We’ve configured a virtual machine to run with:

    • Machine type: [1998] Super Socket 7
    • Machine: [SiS 5591] Gigabyte GA-5SG100
    • CPU: Intel Pentium @ 166 MHz
    • Memory: 128 MB
    • Video: [ISA16] Cirrus Logic GD5434
    • Keyboard: AT Keyboard
    • Mouse: PS/2 Mouse
    • Sound card: [ISA16] Sound Blaster 16 PnP
    • Floppy disk controller: Internal device
    • Hard disk controller 1: Internal device
    • New hard disk: os2warp452.vhd
      • C/H/S: 1054/16/63
      • Size: 518 MB
      • Bus: IDE
      • Channel: 0:0
    • CD-ROM drive 1: ATAPI (0:1) KENWOOD CD-ROM UCR-421 208E (72x)

    Once everything is configured as above, we can now start the virtual machine. Insert the boot disc called mcp2-refresh-boot-en.iso to the CD-ROM reader, then configure BIOS as necessary.

    To be more specific, we need to go to the BIOS setup using DEL and change the boot order so that CD-ROM goes first with PGUP/PGDN.

    After that, we save the changes and restart the virtual machine.

    The installer starts by telling you to insert the installation CD-ROM to the drive.

    In this case, right-click on the CD-ROM icon, select “Insert…”, select mcp2-refresh-install-en.iso, and double-click it. Then, press ENTER.

    After that, you should be able to see this welcome screen:

    Press ENTER, and you’ll be taken to another screen that welcomes you to the operating system installer.

    Press ENTER. At this point, since it’s a fresh installation, and the hard drive is already empty, you’ll get the “Volumes Too Small” message. This means that you’ll need to create a single partition that will be used to install OS/2 Warp 4.52 to.

    Press ENTER, and you’ll get a warning message telling you that all data on modified volumes will be deleted, and that backups should be made. Since there is no data on the hard drive, you can safely ignore this warning. Just press ENTER.

    After that, you’ll be taken to the partitioning screen where you’ll be presented with the logical volume manager, with the logical view being the default. Press F5, and you’ll be taken to a screen where you can see your hard disk, such as the below screenshot:

    Here, you can create a physical partition. Press TAB, then ENTER, and you’ll be presented with those options.

    Press ENTER to create a new partition. You’ll be asked whether this partition is going to be logical or primary. Select “Primary partition”.

    After you select it, you’ll be presented with various dialog boxes telling you to specify the size and the name of the partition, as well as the position of the partition. Select “Create at the start of the free space”, then enter the partition name, then the size.

    After that, this partition should be created.

    We are not done yet when it comes to partitioning, so we need to go back to the logical view. Press ENTER, then press ENTER on “Create a new volume”. Then, select “Create a volume that can be made bootable”, then C:.

    You’ll be brought back to the physical view that will tell you to choose a physical disk. Below the physical disk, the logical partition should be shown at the bottom of the screen. Press ENTER when this dialog box appears.

    Press ENTER again, then select “Use existing partition”.

    Now, a new logical volume will appear with the partition name that you’ve chosen. However, it’s still not ready yet for installation, since there are extra steps that are needed. We need to make it installable.

    Press ENTER, and you should see the menu box below:

    Select “Set the volume installable”. The status of your logical volume should change from “Startable” to “Installable”. Afterwards, press F3, and press ENTER when “Save the changes and exit” is highlighted.

    Afterwards, you should be able to see the below dialog box telling you to insert the boot CD-ROM to the drive and restart the virtual machine using CTRL + ALT + DEL.

    At this point, we need to change the BIOS boot order to avoid the black screen issue. Press DEL, go to BIOS Features Setup, and change the boot order so that CD-ROM goes first.

    Then, exit the BIOS setup while saving changes, and follow the instructions all the way until the following screen shows up:

    Verify that “Volume C” shows up. If not, you’ll have to configure the partitions again until the volume shows up in this screen. Since we’ve already configured everything, and that Volume C corresponds to our hard disk, press ENTER when “Accept the volume” is highlighted.

    Then, the installer asked us whether we’d like to format it slowly or quickly. This is a clean installation, so we’ve chosen a quick format. Then, the installer asked us whether we’d like to use FAT or HPFS. We’ve chosen the HPFS file system.

    After that, the installation of the base system begins.

    After that, the virtual machine will automatically restart. Go back to the BIOS setup and make sure that the C drive comes first before the CD-ROM.

    After that, OS/2 Warp should boot up to the GUI portion of the installer. The first thing you’ll be presented with is the configuration of the system, including the country, the graphics adapter, and the sound adapter.

    First of all, we went to “Multimedia Device Support”, and added the SoundBlaster 16 PnP device to the list of installed devices.

    Afterwards, we’re presented with another set of configuration, once we’ve selected “Next”. SInce there’s no need to configure anything on that screen, we’ve just clicked Next. Then, it presented us with options to choose the country/region, with the default selected country being “United States.”

    Then, the printer configuraion window has shown up. SInce there’s no printer installed, we’ll leave it as it is.

    We’re then presented with the graphics adapter configuration. It automatically selected the Cirrus Logic graphics adapter as we’ve chosen earlier for the virtual machine configuration.

    Once we’ve selected OK, we’re then presented with a set of packages to install.

    As soon as we clicked “Next”, we’re presented with another wizard that lets us configure some more services.

    Once we clicked Next, we’re presented with a prompt to identify ourselves.

    After that, we’re given another set of software packages to install. They represent the client services for OS/2.

    Once we clicked Next, we’re presented with another configuration screen where we needed to configure the user ID and password for the file and print sharing services, and the network adapter and protocol services.

    We went to create a new ID and a password for the sharing service

    Then, we went to “Network Adapters and Protocol Services”, and a dialog box that told us to add a network adapter appeared. Since we don’t intend to have internet connectivity in this installation of OS/2 Warp 4.52, we’ve selected “No network adapter.”

    Once we pressed OK, we’ve seen this result:

    Now, we’ve pressed Install, and a confirmation dialog box appeared.

    Now, the installation of the remaining system files started here.

    Once it was done copying files, we’re asked whether to use the defaults for the monitor type or to use the display adapter utility program.

    We’ve chosen the defaults, and an informational box appeared stating that the screen might flicker while the testing was underway.

    After that, the remaining portions of the installation started. This is part one of the long waiting journey!

    After the restart, depending on the region selected, OS/2 Warp 4.52 might tell you that there’s something wrong in the CONFIG.SYS file related to the codepage, just like below.

    After that, the long waiting journey continues…

    The system then restarted, and the desktop finally appeared, but with another dialog box asking us whether we needed to install sets of extra tools or not.

    We’ve chosen the biggest option, which was “OS/2 Toolkit (English only)”. Then, we’ve clicked on Install once we’ve inserted the boot disk back to the CD-ROM drive.

    Then, a configuration window where it tells us to configure the installation of the OS/2 Toolkit, just like below.

    We’ve chosen to install everything, so we just chose Install. Yet another long wait journey starts…

    After the installation of the toolkit reached 100%, a dialog box that told us that the installation was successful showed up. Once done, we’ve clicked on Quit in the toolkit installer.

    Since the dialog box told us that the CONFIG.SYS file was modified and that we needed to restart the virtual machine. Therefore, we’ve clicked on Exit, then right-clicked on an empty area around the desktop and chose “Shut down”.

    Once the shut down was done, we had to press CTRL + ALT + DEL in the virtual machine side. After that, the system booted up to the desktop, and the sound works!

    Nostalgic, isn’t it?

    #86Box #Linux #news #OS2 #OS2Warp #OS2Warp4 #OS2Warp452 #Retrocomputing #Tech #Technology #update
  4. Emergence of governance in open communities

    How the Fediverse is growing to meet its challenges

    [German language version of this text will be published in FIfF-Kommunikation, the journal of the Forum InformatikerInnen für Frieden und gesellschaftliche Verantwortung (FIfF e.V.)]

     

    ToC
    The dead live longer
    Multi-layered self-regulation
    Gab: the Nazis are coming
    Threads and Bluesky: Federation Washing?
    Conclusio: Small is Beautiful
    Literatur

     

    The social media landscape has been undergoing a tectonic shift since Elon Musk took over Twitter and Donald Trump took over the USA. The Fediverse emerged at a time when the previous phase of decentralised social networks – the blogosphere – was being supplanted by globally centralised platforms such as Facebook (2004), YouTube (2005) and Twitter (2006). With them came the problems: surveillance-based advertising, election manipulation by Cambridge Analytica, addictive design, enshittification of previously useful services (Cory Doctorow), techno-feudalism (Yanis Varoufakis).

    In contrast, a counter-movement for the recentralisation of the Internet (Kahle 2016, Berners-Lee et al. 2016) is emerging and for sovereignty in Europe, which is becoming painfully aware of its comprehensive technological dependence on the US.

    The perception of a crisis is giving rise to a new digital universe, the decentralised and federated Fediverse. For many migrants from toxic environments, it feels like a friendly neighbourhood where reason and civilised conversation prevail. Of course, this is not a genetic trait, hard-coded into Mastodon & Co. But how does an open community oriented towards the common good, a bustling field of players and technologies, organise itself? How does the governance of complex socio-technical systems unfold?

    Resilient structures of self-organisation, so the theory goes, are the result of experiences of conflict. Current external or internal conflicts as well as structural problems (onboarding, money, etc.) trigger a collective reflection that challenges open communities to emerge from a lack of structure. The solutions, as I would like to show with examples, can be of technical or social protocols, usually a combination of both.

    The dead live longer

    Distributed and federated protocols have been around since 1999 with XMPP. According to official historiography, the Fediverse began in 2008 with the decentralised OpenMicroBlogging protocol and the platform Identi.ca, a free version of Twitter based on it, both developed by Evan Prodromou.

    In January 2016, the World Wide Web Consortium (W3C) presented the ActivityPub protocol to improve the interoperability of the various decentralised platforms in the Fediverse. Prodromou is again co-author. Also since 2016, Eugen Rochko has been developing the microblog Mastodon, which is now the star among the decentralised platforms with around ten million users. In addition to Mastodon, the microblog Misskey, the photo platform Pixelfed, the link aggregator Lemmy and the video platform Peertube are also popular in the ActivityPub universe (FediDB: Software, April 2025).

    As already mentioned, the development is motivated by criticism of the techno-feudalism of the mega-platforms. The current lead author of ActivityPub, Christine Lemmer-Webber, notes that no companies are involved in the team developing the protocol, which is very unusual for technical committees. In addition, the team identifies predominantly as queer, which leads to functions in the protocol and in the clients that help users and administrators to protect themselves from ‘unwanted interaction’ (Klemens 2023).

    Mastodon is run by a non-profit limited company. The community excludes venture capital as well as surveillance advertising, which has made the mega-platforms the richest companies in the world. Mastodon per default does not even include a function for displaying adverts. But how is a global community that is essentially financed by collecting donations supposed to build an alternative to this overwhelming power and lure people out of the lock-in by the mega-companies?

    As the Fediverse contradicts all business logic, experts predicted that it would soon come to an end (Woźniak 2025). The opposite is the case. At Berlin Fediday 2024, Prodromou (2024) reported on growth by all criteria: ActivityPub is being implemented by more and more platforms (WordPress, Ghost.org, Flipboard, Threads). The number of users is growing continuously, as are the bridges to other protocols, applications, content, publications and institutions of self-organisation: the SocialCG (Community Group) for ActivityPub at the W3C, the online conference FediForum, the moderator community IFTAS, Mastodon’s non-profit offshoot in the USA. He answers the question of his presentation title ‘Is Bigger Better?’ with a resounding yes.

    A week later, Prodromou announced the creation of the Social Web Foundation (SWF), whose mission is a ‘growing, healthy, sustainable and multipolar Fediverse’. Shortly afterwards, the foundation became a member of the W3C as a community front-end for ActivityPub: ‘We collect requirements and design potential extensions to the ActivityPub protocol and guide them through standardisation’ (SWF 2025).

    Multi-layered self-regulation

    The Fediverse is, of course, also subject to external regulation through laws, etc. The focus here is on the area in which the Fediverse players are free to regulate themselves. The Fediverse project unites them on the basis of a normative conviction: a different, decentralised, federated Internet is possible. Civil society and the public sector can collectively create an online environment in which people treat each other in a civilised and respectful manner. Common values are initially shared tacitly. As the community grows and becomes more diverse, but especially when conflicts challenge these values, they are made explicit in rules of conduct, mission statements, etc. and operationalised with mechanisms for their implementation and enforcement.

    Projects usually start with minimal ad hoc organisational structures and move on to more permanent forms as required. Regulation arises in order to solve problems, e.g. a legal form must be established in order to open a bank account and thus collect donations. Internal dynamic lead to the problem of the Benevolent Dictator For Life (BDFL). A free software project is started by a man (is there really not a single woman in the Wikipedia list of BDFLs?), becomes popular, grows into a community of co-developers and users, in which the founder remains at the top, respected for his valuable contributions. A meritocracy that, if left unchecked, becomes dysfunctional. The term was coined for Linus Torvalds and his Linux kernel. In the Fediverse, this currently affects Matt Mullenweg from WordPress, Daniel Supernault from Pixelfed and Loops and Eugen Rochko from Mastodon, for example. The latter announced in January 2025 that he would retire from management and concentrate on development. A new non-profit company is to be founded to which he will transfer the Mastodon brand and the copyrights to the code. This means that Mastodon’s independence no longer depends on a single person (Mastodon 2025).

    Gab: the Nazis are coming

    2016 was a breakthrough year for the Fediverse. It was also the year of Brexit and Trump’s first presidential election. And behind both, the Alt-Right movement emerged onto the research radar from image boards like 4Chan. An Internet-native movement that only half-jokingly boasts of having voted Trump into office and promotes “Fashy”, a “fashionable fascism” (Cramer 2017).

    Gab was launched in August 2016 as a social network for radical free speech. Co-founder Andrew Torba cited ‘the total left-wing monopoly of Big Social’ as the motive. Especially during the 2016 election, Facebook and Twitter censored conservative voices. Gab started on its own technology as a mixture of Twitter and Reddit.

    Gab was soon banned from the app stores for hate and pornography. In October 2018, a white supremacist killed eleven people in a synagogue in Pittsburgh. The perpetrator had posted his anti-Semitism on Gab for almost a year. As a result, payment services, web hosts and cloud providers also blocked Gab. To circumvent this block, the creators decided to migrate Gab to a fork of Mastodon in July 2019, making it accessible with every Mastodon app.

    Mastodon founder Rochko spoke out on the same day. He explained that the licence (AGPLv3) does not allow certain uses or users to be excluded as long as it is complied with. At the same time, he expressed his disgust at Gab,

    “which uses the pretense of free speech absolutism as an excuse to platform racist and otherwise dehumanizing content. Mastodon has been originally developed by a person of Jewish heritage and first-generation immigrant background, and Mastodon’s userbase includes many people from marginalized communities.

    Mastodon’s decentralized approach that allows communities to self-govern according to their needs has enabled those marginalized communities to create safe spaces for themselves where previously they were reliant on big companies like Twitter to stand up for them, which these companies have often failed to do.” (Rochko 2019)

    It was precisely decentralisation and federation that brought about a social protocol as a solution. On the one hand, many Mastodon admins had already decided to block Gab, including mastodon.social, which is operated by the Mastodon gGmbH itself. On the other hand, rules have been made explicit for the servers listed on joinmastodon.org, which is also operated by the gGmbH. With the Mastodon Server Covenant, server operators commit to

    1. Active moderation against racism, sexism, homophobia and transphobia,

    2. Daily backups,

    3. At least one other person with emergency access to the server infrastructure,

    4. And to give users at least 3 months of advance warning in case of shutting down. (Mastodon: Covenant)

    There is no technical switch against Nazis. Although there have been discussions about inserting code into the clients to prevent them from logging into Gab servers, such changes can be easily reversed. The copyright licence also does not allow Nazis to be excluded from using one’s own software. There is a long debate about banning use for military purposes, for example (Kreutzer 2006). In practice, restrictions on use by licence violate the definition of free software and have not become established.

    Nazis can set up their own Fediverse servers. However, the Federation’s code of conduct, the Covenant, ensures that these instances remain isolated, like Gab and Truth Social, and do no harm in the Federation. For newcomers, this level is less visible than the policies of the individual instances. However, it is crucial for the information space as a whole.

    Regulations are only as good as their enforcement. Block lists for accounts and instances are maintained as tools for the daily work of admins and moderators (e.g. Oliphant). The moderators have joined forces in the IFTAS (Independent Federated Trust & Safety) forum.

    Looking back at research on “alternative social media” (ASM), Robert W. Gehl (2025) notes that the widespread assumption that ASM are progressive had a blind spot: they can just as easily be used by the political right. The deplatforming of right-wing radicals on the mega-platforms increased the pressure to build their own places for radical freedom of speech. Now the research has turned into the opposite and reduced ASM to ‘alt-right social media’. However, Gehl sees an advantage in the fact that an aspect that was largely missing from the earlier literature has since been addressed: governance. ‘Much of the earliest scholarship focused on how technical elements such as free and open source software and decentralized architectures would shift power away from corporate social media to end users, but had less to say about how those users might govern themselves.’ (ibid.)

    Threads and Bluesky: Federation Washing?

    The next invasion of the Fediverse threatened to come from one of the mega-platforms that the alternative was up against. Meta wanted to capitalise on the Twitter exodus following Musk’s takeover and planned a text-based companion app to Instagram. Threads launches with fanfare on 5 July 2023. Thanks to Instagram’s more than two billion users, the new service gained 100 million users within five days, except in Europe, where a data protection clarification delayed the launch until December. Threads also began integrating the ActivityPub protocol in December 2023 (The Verge 2023).

    The bridge from Instagram to the Fediverse has triggered even more heated debates than Gab, including reciprocal death threats. Above all, there were fears about the well-known strategy of embrace, extend, extinguish. From this camp, the tried and tested instrument used against Gab was brought up: a campaign for the collective exclusion of threads from the federation, which was followed by many instances.

    Conversely, Fediverse stakeholders welcomed threads because they see interoperability between platforms as a major step forward. ‘We’ve been advocating for this for years,’ wrote Rochko (2023) on the day of the threads launch. In his blog post, he addresses accusations (data tracking, advertising, being overwhelmed by huge servers, embrace-extend-extinguish, moderation). However, he describes the lock-in of the social graph as the biggest problem, which prevents users from switching platforms if they do not want to lose all their contacts.

    “The fact that large platforms are adopting ActivityPub is not only validation of the movement towards decentralized social media, but a path forward for people locked into these platforms to switch to better providers. Which in turn, puts pressure on such platforms to provide better, less exploitative services. This is a clear victory for our cause, hopefully one of many to come.” (ibid.)

    Prodromou also welcomed the mega-platform’s access so that the Fediverse can quickly grow and become a powerful alternative. If there are problems, every site and all users are free not to connect to the newcomers. ‘Choice is part of the strength of the Fediverse.’ (Prodromou 2024)

    Another invasion came from Twitter, specifically from its co-founder and former CEO Jack Dorsey. In 2019, he launched an initiative that gave rise to the AT Protocol and Bluesky Social. The platform with the look and feel of the original Twitter was launched in 2023. In January 2025, Bluesky claimed to have 30 million users (BNO News 2025).

    Technically, the AT protocol allows decentralisation. In fact, the system is currently neither decentralised nor federated, as Lemmer-Webber (2024) discusses in detail. Furthermore, venture capital financing, not least from blockchain circles, raises doubts about sustainable freedom.

    Conclusio: Small is Beautiful

    The mega-platforms must continue to be rendered less hazardous through legal regulation. Buying oneself free is not an option. Rather, building alternatives is crucial. Decentralisation from above leads to a Fedi-Washing that only looks like it. The inherently decentralised network of protocol-connected nodes that has grown over the years and organises itself from below is sustainable. Last but not least, the Fediverse offers an opportunity for Europe. Many of the developers and more than twice as many Fediverse servers are in the EU (8,818) than in the USA (4,275) (Fediverse Observer, April 2025).

    The non-profit nature and small size of the communities are clearly positive features of the Fediverse. Kissane & Kazemi (2024) have investigated how governance is organised on individual servers and between servers. Their conclusion: ‘Fediverse governance as we encountered it in our research conversations is emergent, unevenly distributed, and often reactive.’ The majority of Fediverse servers are operated by individuals or small groups. Medium-sized servers offer uniquely favourable conditions for community self-governance according to local norms and allow for very direct, context-dependent moderation that is superior to that of centralised platforms. ‘The Fediverse’s combined emphasis on the sovereignty of local norms and a federated form of network diplomacy can offer a real and optimistic challenge to the dead end of centralized content moderation at scale’ (ibid.).

    To summarise: local, manageable communities form the basis, create diplomatic networks and grow organically into a fediverse that is more than the sum of its parts. Small is Beautiful as a prerequisite for Bigger is Better.

    Literatur

    Berners-Lee, Tim et al. (2016). Solid: A Platform for Decentralized Social Applications Based on Linked Data, 2016, http://emansour.com/research/meccano/solid_protocols.pdf.

    BNO News (2015). Twitter alternative Bluesky hits 30 million users, 28.01.2025, https://bnonews.com/index.php/2025/01/twitter-alternative-bluesky-hits-30-million-users/.

    Cramer, Florian (2017). Meme Wars: Internet culture and the ‘alt right’, at FACT Liverpool, 07.03.2017, https://www.youtube.com/watch?v=OiNYuhLKzi8.

    FediDB: Software (o.J.). https://fedidb.org/software.

    Fediverse Observer (o.J.). Server nach Land, https://fediverse.observer/stats.

    Gehl, Robert W. (2025). A Brief History of Alternative Social Media Scholarship, 07.02.2025, https://www.socialmediaalternatives.org/2025/02/07/asm-scholarship-history.html.

    Kahle, Brewster (2016). Locking the Web Open: A Call for a Decentralized Web, Juni 2016, https://archive.org/details/LockingTheWebOpen_2016.

    Kissane, Erin & Darius Kazemi (2024). Findings Report: Governance on Fediverse Microblogging Servers, https://fediverse-governance.github.io/.

    Klemens, Ben (2023). Mastodon – and the pros and cons of moving beyond Big Tech gatekeepers, Ars Technica, 02.01.2023, https://arstechnica.com/gadgets/2023/01/mastodon-highlights-pros-and-cons-of-moving-beyond-big-tech-gatekeepers/.

    Kreutzer, Till (2006). Open-Source-Software zwischen Moral und Freiheit, iRights, 15.08.2006, https://irights.info/artikel/open-source-software-zwischen-moral-und-freiheit/6219.

    Lemmer-Webber, Christine (2024). How decentralized is Bluesky really?, 22.11.2024, https://dustycloud.org/blog/how-decentralized-is-bluesky/.

    Lemmer-Webber, Christine (2025). Toot, 19.01.2025, https://social.coop/@cwebber/113856458328842294.

    Mastdon: Covenant (n.d.), https://joinmastodon.org/covenant.

    Mastodon (2025). The people should own the town square, 13.01.2025, https://blog.joinmastodon.org/2025/01/the-people-should-own-the-town-square/.

    Prodromou, Evan (2024). A Bigger Better Fediverse, presentation at Berlin Fediday 2024, 14.10.2024, https://berlinfedi.day/2024/.

    Rochko, Eugen (2019). Gab switches to Mastodon’s code. Our statement, 04.07.2019, https://blog.joinmastodon.org/2019/07/statement-on-gabs-fork-of-mastodon/.

    Rochko, Eugen (2023). What to know about Threads, 05.07.2023, https://blog.joinmastodon.org/2023/07/what-to-know-about-threads/.

    SWF (2025). The Social Web Foundation announces its membership in the World Wide Web Consortium, 11.2.2025, https://socialwebfoundation.org/2025/02/11/the-social-web-foundation-announces-its-membership-in-the-world-wide-web-consortium/.

    The Verge (2023). Threads is officially starting to test ActivityPub integration, 13.12.2023, https://www.theverge.com/2023/12/13/24000120/threads-meta-activitypub-test-mastodon.

    Woźniak, Michał “rysiek” (2025). Eight years on, Mastodon stubbornly survives, personal blog, 05.04.2025, https://rys.io/en/177.html.

    #Fediverse #FreeCulture #Internet #mediaScience #publicSphere

  5. **Switching to Linux on the desktop in 2025 (part 1)**

    Read it on my blog, it has a nicer image/text layout.

    TL;DR

    If you are seeking the answer to the question “Should I switch from Windows (10) to Linux on desktop” in this blog post, the answer is: Yes, definitely (for web browsing and web app usage, document/image/video editing).

    Don’t mind the complaining of a middle aged guy (me) who has too much time to tinker with, what someone on Mastodon named, ‘edge scenarios’.

    Intro

    It’s 2025 and this is a diary of my … hmmm … 3rd? 5th? attempt of transition of my main working computer (laptop) to Linux. Also, a copy of my Mastodon thread. Also, it’s a record of some strange obsession.

    https://mastodon.social/@po3mah/114143122181950524

    The triggers for the transition to desktop Linux were:

    • soon-to-EOL Windows 10
    • pushy Windows Recall – no, thank you, I don’t want an all-seeing eye watching my monitor and my dirty little secrets I watch.
    • overall enshittification of Windows OS.

    I’m stubbornly clicking ‘no, I don’t wanna upgrade to Windows 11’ button for over a year.

    Just a small note about my work and why the switch to Linux was possible: I do most of my work in a web browser (collaborative document editing in Google Docs, Office356 or OnlyOffice) and I deal a lot with files in various distributed international teams. I run projects that produce various documents, learning content, research content, reports, e-learning platforms. I don’t program, sometimes I configure various web/FOSS systems. I communicate with my teams vie email, Signal, Element, Whatsapp. I wrote this to narrow the scenarios for whom the switch to Linux makes sense.

    Short history of my attempts

    You’re not interested in it, but I will write about it anyway. I will put aside my Linux on server installs(from ~2001), because they’re a different kind of animal.

    My first serious attempt in using Linux on a desktop was in 2010. I installed Ubuntu on my HP550 (dual core, 2GB RAM), Compiz for fancy desktop effects- especially desktop cube rotation. I added Virtual Box, converted my previous Windows 7 installation to a virtual machine and ran it from Linux when needed. Mostly because of Microsoft Visio that I needed for some project for public administration. I still can’t forget faces of people on one meeting when I was switching virtual desktops (rotating cube – see an example here). My laptop didn’t have any special GPU but it managed desktop 3D effects without breaking a sweat. They asked: What kind of Mac is this? 🙂

    Then I bought a new laptop in 2012 and stopped using Linux, I just went with preinstalled Windows. What went wrong, why didn’t I continue using Linux back then?

    Honestly, I can’t remember. Probably I was too busy or dealing with other things to make my company afloat so I didn’t bother.

    Fast forward to 2025.

    Ubuntu attempt

    The thread is 35 posts long.

    I started on 13. March and my intention was to log paper-cuts along the way.

    (1/)

    Today’s ‘biting a green apple’ and a step towards my de-microsoftization:

    I will work the whole day on Ubuntu/live edition from USB.
    Just to force myself out of comfort zone and observe paper cuts along the way — in the thread (1/) –>

    (2/)

    First paper cut: my Logitech MX Anywhere 3 Bluetooth mouse doesn’t wake up from sleep mode. I had to disconnect/reconnect it.

    **edit: looks like after switching to Wayland the problem is gone.

    (3/)

    Next paper cut: I have 2 monitors. Built-in (laptop), 60Hz and external (USB), 144Hz. Both work OK.
    I observed a funny thing: laptop’s monitor sometimes reduces and increases brightness by itself (only in dark mode). Briefly, but noticeable.

    **edit1: solved by disabling Automatic screen brightness (in Power settings)

    **edit2: X11 said 144Hz on secondary monitor works but it didn’t. Dragging a window was choppy. In Wayland it really works (so smooth!)

    (4/)

    Next paper cut: Settings window does not float to the top.
    I had ‘Settings’ window opened, but hidden behind some window.
    When I tried to run it from the docker menu (several times), it didn’t float to the top. I thought it just won’t open. I needed some minutes to figure out it is already opened, but hidden.

    That’s it for today. Overall, almost everything works. Firefox, Google Meet finds my headset and camera.

    (5/)

    Next paper cut: at the end of the day, I had to boot Windows.
    It welcomed me with ‘Enter your Bitlocker passphrase’.
    But why? Did Ubuntu live USB messed with the partition or what? Is this normal?
    All I did in Ubuntu – I clicked on windows disk and it said it is encrypted.

    (6/)

    Day 2 (using Ubuntu Live USB).
    – Firefox on Linux has a profile manager – nice!
    – Oh, I can sync Firefox Multi-Account containers – nice!
    – Large Text is not large enough for me. Fractional scaling (primary monitor – 125%, large one 150%) to the help and now everything is nice and large.
    – I can move taskbar from the left side to the bottom.

    – Only one paper cut today – I can’t use google drive account in gnome, probably because I use live USB.

    (7/)

    Next paper cut: first mouse scroll tick is ignored when changing direction of scrolling in Firefox.
    This is quite annoying.

    *edit: changing to Wayland solved the issue.

    (8/)

    Day 3 (using Ubuntu Live USB).
    Can you believe it? No paper cuts today. I really like the overall feeling and smoothness of the desktop.
    And here is solaar: fine grained settings for Logitech mice and similar 🙂

    (9/)

    Day 4 (using Ubuntu Live USB).
    Firefox crashed for the first time today.
    But fear not – when it recovered, also my unsaved WP post was there (because of WP, not FF).

    I started to wonder – do I even need to install Ubuntu on my computer? After several days running live USB, I don’t miss native installation (yet).

    (10/)

    Day 5. Enough of this live USB nonsense. Let’s install it.
    (actually, the system froze for the first time today and I’m blaming live USB).

    • Bitlocker off
    • Space freed (550GB for Ubuntu, 450 for Windows)
    • Backup made

    (no, I lie)
    Posting this and live recording screen cast WHILE INSTALLING 🙂

    (11/)

    Not sure what I was afraid of. Install took only several minutes. There is a no-brainier install option ‘install along windows’. Yeah, now I know why I was nervous. Partitioning. It looks like they made the installation more human than the last time I did it (10+years ago).

    Dual boot works.
    Not sure what is this ‘Ubuntu Pro’ good for.

    (12/)

    Accessing google drive from file explorer.
    I tried Gnome Online Accounts and connected to my gdrive.
    All I can say it didn’t improve much from the last time I used it several years ago. I can browse folders and files in Nautilus, but can’t edit them.

    Will try out #ocamlfuse and #rclone. Which one do you use?

    (13/)

    Moar paper cuts.
    – rclone installation to access gdrive was successful, but PITA (especially obtaining google ID from google apps). Absolutely not for ‘normal’ users.

    – could not not open files from mounted folder with LibreOffice. (fix: adding “–vfs-cache-mode full” to rclone mount command)

    – don’t see ‘shared with me’ in gdrive

    – Dropbox mount with rclone was seamless.

    I’m almost at the point I can say my workspace is ready to do the work, not to tinker with the OS.

    Sigh.

    (14/)

    Yes, I will bother you some more with paper cuts from Win->Ubuntu transition. It’s the year of the desktop Linux, right?

    – tried 3 file managers (Nautilus, Dolphin, Thunar). Each has something that annoys me.

    – Nautilus: No tree view in left pane (in combination with right content pane).

    – Thunar: won’t open my LibreOffice files from mounted folders

    – Dolphin: similar annoyances as Nautilus.

    Tree view worked 30 years ago, not sure why is so hard to keep UX patterns that work.

    (15/)

    … contd:
    – opening files from gdrive mounted folder (streamed via rclone) is painfully slow. 10 seconds or more. GDrive app on Win streams too, but it is significantly faster.

    – SORTING! My folder structure uses _ and __ prefixes to sort these folders to the top for the last 30 years. This worked in DOS, Windows (win explorer, cmd). Except here in Linux. CLI and Nautilus try to be smart and skip prefixes when sorting folders and files. Please don’t do that!

    Sigh².

    (16/)

    Intermezzo.
    My complaints doesn’t mean I don’t like Linux/Ubuntu.
    I just describe my journey, a transition from windows 10, from installation to usable workspace/desktop.
    I want it to work out.

    That’s why I use the term ‘paper cuts’: they hurt, but aren’t life threatening.

    (17/)

    Paper cut called Thorium reader.

    – installed Thorium reader via .deb package: won’t start

    – installed (‘unofficial’)snap package: starts, but won’t accept my library passphrase

    – installed AppImage: can’t run, something something FUSE. OK, extracted it, messed with access rights of a sandbox, it runs and it accepts my library passphrase to read DRM protected books.

    (18/)

    What is this s**t? Am I totally incompetent or what?
    Ubuntu made recursive links (Desktop, Documents, Templates, Pictures) after a fresh installation?

    (solved by suggestion: https://askubuntu.com/questions/1483018/home-user-desktop-and-public-folders-show-as-type-link-broken-inode-symlink)

    (19/)

    Day 6 and I broke Ubuntu for the first time. Why? I wanted to run Ultimaker Cura AppImage, it said it needed Fuse, I was stupid to just sudo apt install fuse, Y of course. It removed some gnome packages.

    No login screen anymore.

    I thought it is catastrophe.
    But no.
    ctrl-alt-f3 to the rescue, reinstall fuse3, gnome, desktop, shell and I’m back in the saddle after 5 minutes.

    Easy to break, easy to fix. But not for the faint-hearted.

    (20/)

    yes, I’m still still here, fighting the windmills.
    Today I installed sw from/via .deb, apt get, snap, appimage, flatpak.

    1. Thorium reader and Cura Slicer via appimage. A lot of cli gymnastics because of fuse3 and fuse2 lib mixing

    2. Davinci Resolve via install script which was appimage in disguise. Damn, this was hard, because Davinci didn’t detect my graphic card and OpenCL didn’t work. Installed AMD drivers. No luck. Added myself to video group. Success.

    Sigh^3

    (21/)

    Something positive for a change.
    #Nautilus TABS! What a useful functionality!
    I didn’t even know what I was missing.
    Scenario: once per year I dump photos from my phone to NAS folder called ‘uncategorized’. Then I categorize photos manually – moving to appropriate folders (e. g. 2025-03-27-EventName).
    I create new photo sub-folders and open them in separate Nautilus tabs, then I can categorize them quickly.

    And no, I’m not looking for a tool that does that for me.

    (22/)

    … aaaaand another paper cut. Sometimes my mouse cursor freezes for 10 seconds.
    Not sure why.
    I suspect when something wants to access samba share (my NAS is pretty slow).
    Nevertheless: Last time I experienced freezing mouse cursor, was in … windows 3.1.
    I remember my Amiga friends always made jokes about it.
    Multitasking OSes shouldn’t do this.

    (23/)

    it’s not samba share, it’s my external monitor that causes freezes. When mouse cursor freezes, I unplug monitor’s USB from my laptop and re-plug it, and it starts to work immediately.
    Yeah, graphic card drivers, Wayland, whatever.

    Another paper cut: file drag&drop from my mounted GDrive folder to a web page upload widget doesn’t work.

    (24/)

    But AGAIN not everything is grim.
    Today I’d like to praise old humble symbolic links.
    I just made some links to some of my deep-nested folders in Nautilus. Quick access is one of those little things that make life brighter.

    (25/)

    More silver lining:
    NoMachine remote access application installed (.deb) and works without any major fuckery.

    – paper cut: It detected servers on my network, but wanted to connect to them via 172….. by default. BUT I can quickly change the IP of the server in the NoMachine dropdown, it offers all addresses (ipv4, ipv6 and 172???? why?) the server is reachable by.

    (26/)

    New day, new paper cut.
    Davinci Resolve does not support mp4 (h.264) on Linux (but on Windows it does). Besides, the installation on Ubuntu is p.i.t.a., UI scaling/fonts is/are way too small (I can fix it by desktop scaling but anyway), and the window doesn’t behave at all. No top-bar handle to move it around or full-screen it.
    Moreover, it supports only 100 or 200% scaling. If I use 125%, it crashes the machine.
    OpenShot then. It installs and works smooth and ok for basic video editing.

    (27/)

    Desktop crashes at least 2 times per day. Sometimes it freezes for 10 seconds. I connected my external monitor via HDMI instead of USB-DP and was a bit better.

    Everything feels wonky and unstable.
    That’s why I switched from Wayland to x11 and it feels more stable.
    For now.

    Mint era

    (28/) – 2. April 2025

    Nope, x11 has different problems. After waking up and re-login, it crashes all apps.
    #Ubuntu – I gave you a chance, but you didn’t want to play nice. So long and bye.

    Mint live USB booted, runs solid for now.
    So far everything works out of the box. Even AppImages have icons 🙂 Yeah, small things.

    Am I on the path of distro hopping?

    (29/)

    Mint installed. I’m a simple man, looks like Mint will be OK.
    It survived the night and woke up without a crash. All N browser tabs are still open.

    But it’s not without it’s own paper cuts.

    I liked rclone-manager (ubuntu/gnome extension), but there are no gnome-extensions in Mint.

    Whatever. A bit pissed off and wrote mount scripts to my dropboxes and google drives by hand and let’s go.

    I’m scared (of myself?), what is the next step? Ditching GUI altogether and working only in CLI?

    (30/)

    Next (#Mint) paper cut:
    In Ubuntu, when clicking Firefox icon I could launch profile manager. This option is missing in Mint.

    Whatever. This is Linux, I can probably add it by myself.

    Edited Firefox desktop launcher (firefox.desktop):

    [Desktop Action ProfileManager]
    Name=Open Profile Manager
    Exec=firefox –no-remote -P
    Icon=firefox

    and

    Actions=….;ProfileManager;

    This should be a blog, because I will forget everything until next installation.

    (31/)

    Already 31? I should be muted at least, if not blocked. And my devices should be taken away.

    Anyways.
    Remember the last time I was crying there is no tree view in Nautilus?

    Well, Nemo in Mint has it. Nice. No tabs for the right side content view (like Nautilus), but I can split content pane in 2.
    Almost perfect.
    I’m old and my first file manager was PC commander (something older than Norton Commander) which had a tree view.
    I will probably demand a tree view on my tombstone.

    (32/)

    I was a bit nervous today.
    I had a video conference via Teams that I forgot about it until this morning.

    During my breakfast I remembered I didn’t test my cam, mic and screen sharing on newly installed Mint.

    But everything went smoothly. Teams (via Firefox) worked just fine for an hour.
    #Mint recognized my 2 cams and I could switch among them, also my headset. Sharing on 2 monitors also worked.

    (33/)

    Cont. setting up my work-related starter pack on #Mint:
    – Element (works, install went smoothly after initial hang on ‘verifying this device’, just copy-paste install script in CLI).
    – Signal (ditto, all good)
    – ProtonVPN (it says it supports Ubuntu/gnome, but also installs and works on mint/cinnamon)
    – OpenShot/Shotcut for light video editing – both work faster than on Ubuntu. Especially Shotcut.

    (34/)

    I used Hello on Windows to login with my face. I wanted to do the same on Linux.

    I found a nice project (#Howdy), but I didn’t succeed to make it work. Mint 22 (and others) are picky about Python and installing things in externally managed environment (https://peps.python.org/pep-0668/). Tried with venv, but failed.
    I came to the point I could add my faces to the Howdy and it recognized them, but couldn’t add it to login screen.

    Dismissed, next time.

    Goes to the list of paper cuts.

    (35/)

    3 weeks from the beginning of the transition to Linux (on my main working laptop) and 1 week of Mint.

    I’m glad to finally say that I can already perform my work 100% without resorting to tinkering with OS.

    This doesn’t mean I won’t tinker in every spare minute I have 🙂

    I should have installed Mint at the start.

    Conclusion

    Guess how many times I booted Windows after I started with Linux?

    1x. Just to check if dual boot works and that was it. I didn’t need to move any data, because all my data is synced to some NAS or some cloud storage. This made my transition easier.

    I will stop this thread for now. Everything works, I learned quite some new things about Linux and most importantly, I got rid of Microsoft tentacles.

    Summary of my current sw setup:

    • Mint+Cinnamon, X11, dual monitors, 125% fractional scaling
    • Nemo file browser with various mounted NAS drives and rclone mounts. I was most afraid how will I manage without official Google Drive and Dropbox apps. Rclone works just fine. I miss rclone-manager (from Ubuntu). Anyways, I did some mount scripts and I run them at startup. It’s even better, because I can mount cloud storages only when needed.
    • Firefox with multiple profiles and Multi-Account containers. I did the transfer to FF some months ago, so this was no issue. Everything synced well. I can do most of my work in FF and web apps.
    • Gimp/Inkscape for light graphics editing – again, I did the transfer to Gimp /Inkscape(under Windows) some months ago so this was no issue.
    • OpenShot/Shotcut – light video editing, same scenario as above.
    • Cura Slicer (transitioned from Sovol Cura) for 3D print slicing. It works even better than Sovol branch of Cura. I can connect to Octoprint directly.
    • LibreOffice – again, I occasionally used Open- and then LibreOffice, so I just needed to take a jump. I’m still getting used, but it’s fine.
    • Gigolo – to auto-mount my NAS samba shares. I expected auto-mount will work out of the box. It didn’t, so I installed Gigolo.
      • Signal and Element for messaging. Both Linux apps install and work OK.

    During the transition I realized I’m not so dependent of Microsoft Office as I thought. I do the majority of (collaborative) document editing in Google Docs anyway. Some documents, that were designed in Word, I edited in Libre Office or GDocs/Presentations. Yeah, it broke the layout, but I swallowed the bitter pill and redesigned some document templates in a way that can be seamlessly transferred between GDocs, Word, Libre Office Writer. I’m also sending documents to my team strictly in .odt format. Nobody complained till now.

    P. S. Thanks for all supportive comments (in Mastodon thread) I received during writing this long thread. Especially for those I should try Arch btw. I did (Endavour OS), but that’s another thread.

    Tags: #linux #mint #windows10 #transition #switch #papercuts

    Continued: Part 2 >>

    https://blog.rozman.info/switching-to-linux-on-the-desktop-in-2025/

    #Linux #Mint #ocamlfuse #papercuts #rclone #switch #transition #windows10

  6. **Switching to Linux on the desktop in 2025**

    Read it on my blog, it has a nicer image/text layout.

    TL;DR

    If you are seeking the answer to the question “Should I switch from Windows (10) to Linux on desktop” in this blog post, the answer is: Yes, definitely (for web browsing and web app usage, document/image/video editing).

    Don’t mind the complaining of a middle aged guy (me) who has too much time to tinker with, what someone on Mastodon named, ‘edge scenarios’.

    Intro

    It’s 2025 and this is a diary of my … hmmm … 3rd? 5th? attempt of transition of my main working computer (laptop) to Linux. Also, a copy of my Mastodon thread. Also, a record of some strange obsession.

    The triggers for the transition to desktop Linux were:

    • soon-to-EOL Windows 10
    • pushy Windows Recall – no, thank you, I don’t want an all-seeing eye watching my monitor and my dirty little secrets I watch.
    • overall enshittification of Windows OS.

    I’m stubbornly clicking ‘no, I don’t wanna upgrade to Windows 11’ button for over a year.

    Just a small note about my work and why the switch to Linux was possible: I do most of my work in a web browser (collaborative document editing in Google Docs, Office356 or OnlyOffice) and I deal a lot with files in various distributed international teams. I run projects that produce various documents, learning content, research content, reports, e-learning platforms. I don’t program, sometimes I configure various web/FOSS systems. I communicate with my teams vie email, Signal, Element, Whatsapp. I wrote this to narrow the scenarios for whom the switch to Linux makes sense.

    Short history of my attempts

    You’re not interested in it, but I will write about it anyway. I will put aside my Linux on server installs(from ~2001), because they’re a different kind of animal.

    My first serious attempt in using Linux on a desktop was in 2010. I installed Ubuntu on my HP550 (dual core, 2GB RAM), Compiz for fancy desktop effects- especially desktop cube rotation. I added Virtual Box, converted my previous Windows 7 installation to a virtual machine and ran it from Linux when needed. Mostly because of Microsoft Visio that I needed for some project for public administration. I still can’t forget faces of people on one meeting when I was switching virtual desktops (rotating cube – see an example here). My laptop didn’t have any special GPU but it managed desktop 3D effects without breaking a sweat. They asked: What kind of Mac is this? 🙂

    Then I bought a new laptop in 2012 and stopped using Linux, I just went with preinstalled Windows. What went wrong, why didn’t I continue using Linux back then?

    Honestly, I can’t remember. Probably I was too busy or dealing with other things to make my company afloat so I didn’t bother.

    Fast forward to 2025.

    Ubuntu attempt

    The thread is 35 posts long.

    I started on 13. March and my intention was to log paper-cuts along the way.

    (1/)

    Today’s ‘biting a green apple’ and a step towards my de-microsoftization:

    I will work the whole day on Ubuntu/live edition from USB.
    Just to force myself out of comfort zone and observe paper cuts along the way — in the thread (1/) –>

    (2/)

    First paper cut: my Logitech MX Anywhere 3 Bluetooth mouse doesn’t wake up from sleep mode. I had to disconnect/reconnect it.

    **edit: looks like after switching to Wayland the problem is gone.

    (3/)

    Next paper cut: I have 2 monitors. Built-in (laptop), 60Hz and external (USB), 144Hz. Both work OK.
    I observed a funny thing: laptop’s monitor sometimes reduces and increases brightness by itself (only in dark mode). Briefly, but noticeable.

    **edit1: solved by disabling Automatic screen brightness (in Power settings)

    **edit2: X11 said 144Hz on secondary monitor works but it didn’t. Dragging a window was choppy. In Wayland it really works (so smooth!)

    (4/)

    Next paper cut: Settings window does not float to the top.
    I had ‘Settings’ window opened, but hidden behind some window.
    When I tried to run it from the docker menu (several times), it didn’t float to the top. I thought it just won’t open. I needed some minutes to figure out it is already opened, but hidden.

    That’s it for today. Overall, almost everything works. Firefox, Google Meet finds my headset and camera.

    (5/)

    Next paper cut: at the end of the day, I had to boot Windows.
    It welcomed me with ‘Enter your Bitlocker passphrase’.
    But why? Did Ubuntu live USB messed with the partition or what? Is this normal?
    All I did in Ubuntu – I clicked on windows disk and it said it is encrypted.

    (6/)

    Day 2 (using Ubuntu Live USB).
    – Firefox on Linux has a profile manager – nice!
    – Oh, I can sync Firefox Multi-Account containers – nice!
    – Large Text is not large enough for me. Fractional scaling (primary monitor – 125%, large one 150%) to the help and now everything is nice and large.
    – I can move taskbar from the left side to the bottom.

    – Only one paper cut today – I can’t use google drive account in gnome, probably because I use live USB.

    (7/)

    Next paper cut: first mouse scroll tick is ignored when changing direction of scrolling in Firefox.
    This is quite annoying.

    *edit: changing to Wayland solved the issue.

    (8/)

    Day 3 (using Ubuntu Live USB).
    Can you believe it? No paper cuts today. I really like the overall feeling and smoothness of the desktop.
    And here is solaar: fine grained settings for Logitech mice and similar 🙂

    (9/)

    Day 4 (using Ubuntu Live USB).
    Firefox crashed for the first time today.
    But fear not – when it recovered, also my unsaved WP post was there (because of WP, not FF).

    I started to wonder – do I even need to install Ubuntu on my computer? After several days running live USB, I don’t miss native installation (yet).

    (10/)

    Day 5. Enough of this live USB nonsense. Let’s install it.
    (actually, the system froze for the first time today and I’m blaming live USB).

    • Bitlocker off
    • Space freed (550GB for Ubuntu, 450 for Windows)
    • Backup made

    (no, I lie)
    Posting this and live recording screen cast WHILE INSTALLING 🙂

    (11/)

    Not sure what I was afraid of. Install took only several minutes. There is a no-brainier install option ‘install along windows’. Yeah, now I know why I was nervous. Partitioning. It looks like they made the installation more human than the last time I did it (10+years ago).

    Dual boot works.
    Not sure what is this ‘Ubuntu Pro’ good for.

    (12/)

    Accessing google drive from file explorer.
    I tried Gnome Online Accounts and connected to my gdrive.
    All I can say it didn’t improve much from the last time I used it several years ago. I can browse folders and files in Nautilus, but can’t edit them.

    Will try out #ocamlfuse and #rclone. Which one do you use?

    (13/)

    Moar paper cuts.
    – rclone installation to access gdrive was successful, but PITA (especially obtaining google ID from google apps). Absolutely not for ‘normal’ users.

    – could not not open files from mounted folder with LibreOffice. (fix: adding “–vfs-cache-mode full” to rclone mount command)

    – don’t see ‘shared with me’ in gdrive

    – Dropbox mount with rclone was seamless.

    I’m almost at the point I can say my workspace is ready to do the work, not to tinker with the OS.

    Sigh.

    (14/)

    Yes, I will bother you some more with paper cuts from Win->Ubuntu transition. It’s the year of the desktop Linux, right?

    – tried 3 file managers (Nautilus, Dolphin, Thunar). Each has something that annoys me.

    – Nautilus: No tree view in left pane (in combination with right content pane).

    – Thunar: won’t open my LibreOffice files from mounted folders

    – Dolphin: similar annoyances as Nautilus.

    Tree view worked 30 years ago, not sure why is so hard to keep UX patterns that work.

    (15/)

    … contd:
    – opening files from gdrive mounted folder (streamed via rclone) is painfully slow. 10 seconds or more. GDrive app on Win streams too, but it is significantly faster.

    – SORTING! My folder structure uses _ and __ prefixes to sort these folders to the top for the last 30 years. This worked in DOS, Windows (win explorer, cmd). Except here in Linux. CLI and Nautilus try to be smart and skip prefixes when sorting folders and files. Please don’t do that!

    Sigh².

    (16/)

    Intermezzo.
    My complaints doesn’t mean I don’t like Linux/Ubuntu.
    I just describe my journey, a transition from windows 10, from installation to usable workspace/desktop.
    I want it to work out.

    That’s why I use the term ‘paper cuts’: they hurt, but aren’t life threatening.

    (17/)

    Paper cut called Thorium reader.

    – installed Thorium reader via .deb package: won’t start

    – installed (‘unofficial’)snap package: starts, but won’t accept my library passphrase

    – installed AppImage: can’t run, something something FUSE. OK, extracted it, messed with access rights of a sandbox, it runs and it accepts my library passphrase to read DRM protected books.

    (18/)

    What is this s**t? Am I totally incompetent or what?
    Ubuntu made recursive links (Desktop, Documents, Templates, Pictures) after a fresh installation?

    (solved by suggestion: https://askubuntu.com/questions/1483018/home-user-desktop-and-public-folders-show-as-type-link-broken-inode-symlink)

    (19/)

    Day 6 and I broke Ubuntu for the first time. Why? I wanted to run Ultimaker Cura AppImage, it said it needed Fuse, I was stupid to just sudo apt install fuse, Y of course. It removed some gnome packages.

    No login screen anymore.

    I thought it is catastrophe.
    But no.
    ctrl-alt-f3 to the rescue, reinstall fuse3, gnome, desktop, shell and I’m back in the saddle after 5 minutes.

    Easy to break, easy to fix. But not for the faint-hearted.

    (20/)

    yes, I’m still still here, fighting the windmills.
    Today I installed sw from/via .deb, apt get, snap, appimage, flatpak.

    1. Thorium reader and Cura Slicer via appimage. A lot of cli gymnastics because of fuse3 and fuse2 lib mixing

    2. Davinci Resolve via install script which was appimage in disguise. Damn, this was hard, because Davinci didn’t detect my graphic card and OpenCL didn’t work. Installed AMD drivers. No luck. Added myself to video group. Success.

    Sigh^3

    (21/)

    Something positive for a change.
    #Nautilus TABS! What a useful functionality!
    I didn’t even know what I was missing.
    Scenario: once per year I dump photos from my phone to NAS folder called ‘uncategorized’. Then I categorize photos manually – moving to appropriate folders (e. g. 2025-03-27-EventName).
    I create new photo sub-folders and open them in separate Nautilus tabs, then I can categorize them quickly.

    And no, I’m not looking for a tool that does that for me.

    (22/)

    … aaaaand another paper cut. Sometimes my mouse cursor freezes for 10 seconds.
    Not sure why.
    I suspect when something wants to access samba share (my NAS is pretty slow).
    Nevertheless: Last time I experienced freezing mouse cursor, was in … windows 3.1.
    I remember my Amiga friends always made jokes about it.
    Multitasking OSes shouldn’t do this.

    (23/)

    it’s not samba share, it’s my external monitor that causes freezes. When mouse cursor freezes, I unplug monitor’s USB from my laptop and re-plug it, and it starts to work immediately.
    Yeah, graphic card drivers, Wayland, whatever.

    Another paper cut: file drag&drop from my mounted GDrive folder to a web page upload widget doesn’t work.

    (24/)

    But AGAIN not everything is grim.
    Today I’d like to praise old humble symbolic links.
    I just made some links to some of my deep-nested folders in Nautilus. Quick access is one of those little things that make life brighter.

    (25/)

    More silver lining:
    NoMachine remote access application installed (.deb) and works without any major fuckery.

    – paper cut: It detected servers on my network, but wanted to connect to them via 172….. by default. BUT I can quickly change the IP of the server in the NoMachine dropdown, it offers all addresses (ipv4, ipv6 and 172???? why?) the server is reachable by.

    (26/)

    New day, new paper cut.
    Davinci Resolve does not support mp4 (h.264) on Linux (but on Windows it does). Besides, the installation on Ubuntu is p.i.t.a., UI scaling/fonts is/are way too small (I can fix it by desktop scaling but anyway), and the window doesn’t behave at all. No top-bar handle to move it around or full-screen it.
    Moreover, it supports only 100 or 200% scaling. If I use 125%, it crashes the machine.
    OpenShot then. It installs and works smooth and ok for basic video editing.

    (27/)

    Desktop crashes at least 2 times per day. Sometimes it freezes for 10 seconds. I connected my external monitor via HDMI instead of USB-DP and was a bit better.

    Everything feels wonky and unstable.
    That’s why I switched from Wayland to x11 and it feels more stable.
    For now.

    Mint era

    (28/) – 2. April 2025

    Nope, x11 has different problems. After waking up and re-login, it crashes all apps.
    #Ubuntu – I gave you a chance, but you didn’t want to play nice. So long and bye.

    Mint live USB booted, runs solid for now.
    So far everything works out of the box. Even AppImages have icons 🙂 Yeah, small things.

    Am I on the path of distro hopping?

    (29/)

    Mint installed. I’m a simple man, looks like Mint will be OK.
    It survived the night and woke up without a crash. All N browser tabs are still open.

    But it’s not without it’s own paper cuts.

    I liked rclone-manager (ubuntu/gnome extension), but there are no gnome-extensions in Mint.

    Whatever. A bit pissed off and wrote mount scripts to my dropboxes and google drives by hand and let’s go.

    I’m scared (of myself?), what is the next step? Ditching GUI altogether and working only in CLI?

    (30/)

    Next (#Mint) paper cut:
    In Ubuntu, when clicking Firefox icon I could launch profile manager. This option is missing in Mint.

    Whatever. This is Linux, I can probably add it by myself.

    Edited Firefox desktop launcher (firefox.desktop):

    [Desktop Action ProfileManager]
    Name=Open Profile Manager
    Exec=firefox –no-remote -P
    Icon=firefox

    and

    Actions=….;ProfileManager;

    This should be a blog, because I will forget everything until next installation.

    (31/)

    Already 31? I should be muted at least, if not blocked. And my devices should be taken away.

    Anyways.
    Remember the last time I was crying there is no tree view in Nautilus?

    Well, Nemo in Mint has it. Nice. No tabs for the right side content view (like Nautilus), but I can split content pane in 2.
    Almost perfect.
    I’m old and my first file manager was PC commander (something older than Norton Commander) which had a tree view.
    I will probably demand a tree view on my tombstone.

    (32/)

    I was a bit nervous today.
    I had a video conference via Teams that I forgot about it until this morning.

    During my breakfast I remembered I didn’t test my cam, mic and screen sharing on newly installed Mint.

    But everything went smoothly. Teams (via Firefox) worked just fine for an hour.
    #Mint recognized my 2 cams and I could switch among them, also my headset. Sharing on 2 monitors also worked.

    (33/)

    Cont. setting up my work-related starter pack on #Mint:
    – Element (works, install went smoothly after initial hang on ‘verifying this device’, just copy-paste install script in CLI).
    – Signal (ditto, all good)
    – ProtonVPN (it says it supports Ubuntu/gnome, but also installs and works on mint/cinnamon)
    – OpenShot/Shotcut for light video editing – both work faster than on Ubuntu. Especially Shotcut.

    (34/)

    I used Hello on Windows to login with my face. I wanted to do the same on Linux.

    I found a nice project (#Howdy), but I didn’t succeed to make it work. Mint 22 (and others) are picky about Python and installing things in externally managed environment (https://peps.python.org/pep-0668/). Tried with venv, but failed.
    I came to the point I could add my faces to the Howdy and it recognized them, but couldn’t add it to login screen.

    Dismissed, next time.

    Goes to the list of paper cuts.

    (35/)

    3 weeks from the beginning of the transition to Linux (on my main working laptop) and 1 week of Mint.

    I’m glad to finally say that I can already perform my work 100% without resorting to tinkering with OS.

    This doesn’t mean I won’t tinker in every spare minute I have 🙂

    I should have installed Mint at the start.

    Conclusion

    Guess how many times I booted Windows after I started with Linux?

    1x. Just to check if dual boot works and that was it. I didn’t need to move any data, because all my data is synced to some NAS or some cloud storage. This made my transition easier.

    I will stop this thread for now. Everything works, I learned quite some new things about Linux and most importantly, I got rid of Microsoft tentacles.

    Summary of my current sw setup:

    • Mint+Cinnamon, X11, dual monitors, 125% fractional scaling
    • Nemo file browser with various mounted NAS drives and rclone mounts. I was most afraid how will I manage without official Google Drive and Dropbox apps. Rclone works just fine. I miss rclone-manager (from Ubuntu). Anyways, I did some mount scripts and I run them at startup. It’s even better, because I can mount cloud storages only when needed.
    • Firefox with multiple profiles and Multi-Account containers. I did the transfer to FF some months ago, so this was no issue. Everything synced well. I can do most of my work in FF and web apps.
    • Gimp/Inkscape for light graphics editing – again, I did the transfer to Gimp /Inkscape(under Windows) some months ago so this was no issue.
    • OpenShot/Shotcut – light video editing, same scenario as above.
    • Cura Slicer (transitioned from Sovol Cura) for 3D print slicing. It works even better than Sovol branch of Cura. I can connect to Octoprint directly.
    • LibreOffice – again, I occasionally used Open- and then LibreOffice, so I just needed to take a jump. I’m still getting used, but it’s fine.
    • Gigolo – to auto-mount my NAS samba shares. I expected auto-mount will work out of the box. It didn’t, so I installed Gigolo.

    During the transition I realized I’m not so dependent of Microsoft Office as I thought. I do the majority of (collaborative) document editing in Google Docs anyway. Some documents, that were designed in Word, I edited in Libre Office or GDocs/Presentations. Yeah, it broke layout, but I swallowed the bitter pill and redesigned some document templates in a way that can be seamlessly transferred between GDocs, Word, Libre Office Writer. I’m also sending documents to my team strictly in .odt format. Nobody complained till now.

    P. S. Thanks for all supportive comments (in Mastodon thread) I received during writing this long thread. Especially for those I should try Arch btw. I did (Endavour OS), but that’s another thread.

    Tags: #linux #mint #windows10 #transition #switch #papercuts

    https://blog.rozman.info/switching-to-linux-on-the-desktop-in-2025/

    #Linux #Mint #ocamlfuse #papercuts #rclone #switch #transition #windows10

  7. **Switching to Linux on the desktop in 2025**

    Read it on my blog, it has a nicer image/text layout.

    TL;DR

    If you are seeking the answer to the question “Should I switch from Windows (10) to Linux on desktop” in this blog post, the answer is: Yes, definitely (for web browsing and web app usage, document/image/video editing).

    Don’t mind the complaining of a middle aged guy (me) who has too much time to tinker with, what someone on Mastodon named, ‘edge scenarios’.

    Intro

    It’s 2025 and this is a diary of my … hmmm … 3rd? 5th? attempt of transition of my main working computer (laptop) to Linux. Also, a copy of my Mastodon thread. Also, a record of some strange obsession.

    The triggers for the transition to desktop Linux were:

    • soon-to-EOL Windows 10
    • pushy Windows Recall – no, thank you, I don’t want an all-seeing eye watching my monitor and my dirty little secrets I watch.
    • overall enshittification of Windows OS.

    I’m stubbornly clicking ‘no, I don’t wanna upgrade to Windows 11’ button for over a year.

    Just a small note about my work and why the switch to Linux was possible: I do most of my work in a web browser (collaborative document editing in Google Docs, Office356 or OnlyOffice) and I deal a lot with files in various distributed international teams. I run projects that produce various documents, learning content, research content, reports, e-learning platforms. I don’t program, sometimes I configure various web/FOSS systems. I communicate with my teams vie email, Signal, Element, Whatsapp. I wrote this to narrow the scenarios for whom the switch to Linux makes sense.

    Short history of my attempts

    You’re not interested in it, but I will write about it anyway. I will put aside my Linux on server installs(from ~2001), because they’re a different kind of animal.

    My first serious attempt in using Linux on a desktop was in 2010. I installed Ubuntu on my HP550 (dual core, 2GB RAM), Compiz for fancy desktop effects- especially desktop cube rotation. I added Virtual Box, converted my previous Windows 7 installation to a virtual machine and ran it from Linux when needed. Mostly because of Microsoft Visio that I needed for some project for public administration. I still can’t forget faces of people on one meeting when I was switching virtual desktops (rotating cube – see an example here). My laptop didn’t have any special GPU but it managed desktop 3D effects without breaking a sweat. They asked: What kind of Mac is this? 🙂

    Then I bought a new laptop in 2012 and stopped using Linux, I just went with preinstalled Windows. What went wrong, why didn’t I continue using Linux back then?

    Honestly, I can’t remember. Probably I was too busy or dealing with other things to make my company afloat so I didn’t bother.

    Fast forward to 2025.

    Ubuntu attempt

    The thread is 35 posts long.

    I started on 13. March and my intention was to log paper-cuts along the way.

    (1/)

    Today’s ‘biting a green apple’ and a step towards my de-microsoftization:

    I will work the whole day on Ubuntu/live edition from USB.
    Just to force myself out of comfort zone and observe paper cuts along the way — in the thread (1/) –>

    (2/)

    First paper cut: my Logitech MX Anywhere 3 Bluetooth mouse doesn’t wake up from sleep mode. I had to disconnect/reconnect it.

    **edit: looks like after switching to Wayland the problem is gone.

    (3/)

    Next paper cut: I have 2 monitors. Built-in (laptop), 60Hz and external (USB), 144Hz. Both work OK.
    I observed a funny thing: laptop’s monitor sometimes reduces and increases brightness by itself (only in dark mode). Briefly, but noticeable.

    **edit1: solved by disabling Automatic screen brightness (in Power settings)

    **edit2: X11 said 144Hz on secondary monitor works but it didn’t. Dragging a window was choppy. In Wayland it really works (so smooth!)

    (4/)

    Next paper cut: Settings window does not float to the top.
    I had ‘Settings’ window opened, but hidden behind some window.
    When I tried to run it from the docker menu (several times), it didn’t float to the top. I thought it just won’t open. I needed some minutes to figure out it is already opened, but hidden.

    That’s it for today. Overall, almost everything works. Firefox, Google Meet finds my headset and camera.

    (5/)

    Next paper cut: at the end of the day, I had to boot Windows.
    It welcomed me with ‘Enter your Bitlocker passphrase’.
    But why? Did Ubuntu live USB messed with the partition or what? Is this normal?
    All I did in Ubuntu – I clicked on windows disk and it said it is encrypted.

    (6/)

    Day 2 (using Ubuntu Live USB).
    – Firefox on Linux has a profile manager – nice!
    – Oh, I can sync Firefox Multi-Account containers – nice!
    – Large Text is not large enough for me. Fractional scaling (primary monitor – 125%, large one 150%) to the help and now everything is nice and large.
    – I can move taskbar from the left side to the bottom.

    – Only one paper cut today – I can’t use google drive account in gnome, probably because I use live USB.

    (7/)

    Next paper cut: first mouse scroll tick is ignored when changing direction of scrolling in Firefox.
    This is quite annoying.

    *edit: changing to Wayland solved the issue.

    (8/)

    Day 3 (using Ubuntu Live USB).
    Can you believe it? No paper cuts today. I really like the overall feeling and smoothness of the desktop.
    And here is solaar: fine grained settings for Logitech mice and similar 🙂

    (9/)

    Day 4 (using Ubuntu Live USB).
    Firefox crashed for the first time today.
    But fear not – when it recovered, also my unsaved WP post was there (because of WP, not FF).

    I started to wonder – do I even need to install Ubuntu on my computer? After several days running live USB, I don’t miss native installation (yet).

    (10/)

    Day 5. Enough of this live USB nonsense. Let’s install it.
    (actually, the system froze for the first time today and I’m blaming live USB).

    • Bitlocker off
    • Space freed (550GB for Ubuntu, 450 for Windows)
    • Backup made

    (no, I lie)
    Posting this and live recording screen cast WHILE INSTALLING 🙂

    (11/)

    Not sure what I was afraid of. Install took only several minutes. There is a no-brainier install option ‘install along windows’. Yeah, now I know why I was nervous. Partitioning. It looks like they made the installation more human than the last time I did it (10+years ago).

    Dual boot works.
    Not sure what is this ‘Ubuntu Pro’ good for.

    (12/)

    Accessing google drive from file explorer.
    I tried Gnome Online Accounts and connected to my gdrive.
    All I can say it didn’t improve much from the last time I used it several years ago. I can browse folders and files in Nautilus, but can’t edit them.

    Will try out #ocamlfuse and #rclone. Which one do you use?

    (13/)

    Moar paper cuts.
    – rclone installation to access gdrive was successful, but PITA (especially obtaining google ID from google apps). Absolutely not for ‘normal’ users.

    – could not not open files from mounted folder with LibreOffice. (fix: adding “–vfs-cache-mode full” to rclone mount command)

    – don’t see ‘shared with me’ in gdrive

    – Dropbox mount with rclone was seamless.

    I’m almost at the point I can say my workspace is ready to do the work, not to tinker with the OS.

    Sigh.

    (14/)

    Yes, I will bother you some more with paper cuts from Win->Ubuntu transition. It’s the year of the desktop Linux, right?

    – tried 3 file managers (Nautilus, Dolphin, Thunar). Each has something that annoys me.

    – Nautilus: No tree view in left pane (in combination with right content pane).

    – Thunar: won’t open my LibreOffice files from mounted folders

    – Dolphin: similar annoyances as Nautilus.

    Tree view worked 30 years ago, not sure why is so hard to keep UX patterns that work.

    (15/)

    … contd:
    – opening files from gdrive mounted folder (streamed via rclone) is painfully slow. 10 seconds or more. GDrive app on Win streams too, but it is significantly faster.

    – SORTING! My folder structure uses _ and __ prefixes to sort these folders to the top for the last 30 years. This worked in DOS, Windows (win explorer, cmd). Except here in Linux. CLI and Nautilus try to be smart and skip prefixes when sorting folders and files. Please don’t do that!

    Sigh².

    (16/)

    Intermezzo.
    My complaints doesn’t mean I don’t like Linux/Ubuntu.
    I just describe my journey, a transition from windows 10, from installation to usable workspace/desktop.
    I want it to work out.

    That’s why I use the term ‘paper cuts’: they hurt, but aren’t life threatening.

    (17/)

    Paper cut called Thorium reader.

    – installed Thorium reader via .deb package: won’t start

    – installed (‘unofficial’)snap package: starts, but won’t accept my library passphrase

    – installed AppImage: can’t run, something something FUSE. OK, extracted it, messed with access rights of a sandbox, it runs and it accepts my library passphrase to read DRM protected books.

    (18/)

    What is this s**t? Am I totally incompetent or what?
    Ubuntu made recursive links (Desktop, Documents, Templates, Pictures) after a fresh installation?

    (solved by suggestion: https://askubuntu.com/questions/1483018/home-user-desktop-and-public-folders-show-as-type-link-broken-inode-symlink)

    (19/)

    Day 6 and I broke Ubuntu for the first time. Why? I wanted to run Ultimaker Cura AppImage, it said it needed Fuse, I was stupid to just sudo apt install fuse, Y of course. It removed some gnome packages.

    No login screen anymore.

    I thought it is catastrophe.
    But no.
    ctrl-alt-f3 to the rescue, reinstall fuse3, gnome, desktop, shell and I’m back in the saddle after 5 minutes.

    Easy to break, easy to fix. But not for the faint-hearted.

    (20/)

    yes, I’m still still here, fighting the windmills.
    Today I installed sw from/via .deb, apt get, snap, appimage, flatpak.

    1. Thorium reader and Cura Slicer via appimage. A lot of cli gymnastics because of fuse3 and fuse2 lib mixing

    2. Davinci Resolve via install script which was appimage in disguise. Damn, this was hard, because Davinci didn’t detect my graphic card and OpenCL didn’t work. Installed AMD drivers. No luck. Added myself to video group. Success.

    Sigh^3

    (21/)

    Something positive for a change.
    #Nautilus TABS! What a useful functionality!
    I didn’t even know what I was missing.
    Scenario: once per year I dump photos from my phone to NAS folder called ‘uncategorized’. Then I categorize photos manually – moving to appropriate folders (e. g. 2025-03-27-EventName).
    I create new photo sub-folders and open them in separate Nautilus tabs, then I can categorize them quickly.

    And no, I’m not looking for a tool that does that for me.

    (22/)

    … aaaaand another paper cut. Sometimes my mouse cursor freezes for 10 seconds.
    Not sure why.
    I suspect when something wants to access samba share (my NAS is pretty slow).
    Nevertheless: Last time I experienced freezing mouse cursor, was in … windows 3.1.
    I remember my Amiga friends always made jokes about it.
    Multitasking OSes shouldn’t do this.

    (23/)

    it’s not samba share, it’s my external monitor that causes freezes. When mouse cursor freezes, I unplug monitor’s USB from my laptop and re-plug it, and it starts to work immediately.
    Yeah, graphic card drivers, Wayland, whatever.

    Another paper cut: file drag&drop from my mounted GDrive folder to a web page upload widget doesn’t work.

    (24/)

    But AGAIN not everything is grim.
    Today I’d like to praise old humble symbolic links.
    I just made some links to some of my deep-nested folders in Nautilus. Quick access is one of those little things that make life brighter.

    (25/)

    More silver lining:
    NoMachine remote access application installed (.deb) and works without any major fuckery.

    – paper cut: It detected servers on my network, but wanted to connect to them via 172….. by default. BUT I can quickly change the IP of the server in the NoMachine dropdown, it offers all addresses (ipv4, ipv6 and 172???? why?) the server is reachable by.

    (26/)

    New day, new paper cut.
    Davinci Resolve does not support mp4 (h.264) on Linux (but on Windows it does). Besides, the installation on Ubuntu is p.i.t.a., UI scaling/fonts is/are way too small (I can fix it by desktop scaling but anyway), and the window doesn’t behave at all. No top-bar handle to move it around or full-screen it.
    Moreover, it supports only 100 or 200% scaling. If I use 125%, it crashes the machine.
    OpenShot then. It installs and works smooth and ok for basic video editing.

    (27/)

    Desktop crashes at least 2 times per day. Sometimes it freezes for 10 seconds. I connected my external monitor via HDMI instead of USB-DP and was a bit better.

    Everything feels wonky and unstable.
    That’s why I switched from Wayland to x11 and it feels more stable.
    For now.

    Mint era

    (28/) – 2. April 2025

    Nope, x11 has different problems. After waking up and re-login, it crashes all apps.
    #Ubuntu – I gave you a chance, but you didn’t want to play nice. So long and bye.

    Mint live USB booted, runs solid for now.
    So far everything works out of the box. Even AppImages have icons 🙂 Yeah, small things.

    Am I on the path of distro hopping?

    (29/)

    Mint installed. I’m a simple man, looks like Mint will be OK.
    It survived the night and woke up without a crash. All N browser tabs are still open.

    But it’s not without it’s own paper cuts.

    I liked rclone-manager (ubuntu/gnome extension), but there are no gnome-extensions in Mint.

    Whatever. A bit pissed off and wrote mount scripts to my dropboxes and google drives by hand and let’s go.

    I’m scared (of myself?), what is the next step? Ditching GUI altogether and working only in CLI?

    (30/)

    Next (#Mint) paper cut:
    In Ubuntu, when clicking Firefox icon I could launch profile manager. This option is missing in Mint.

    Whatever. This is Linux, I can probably add it by myself.

    Edited Firefox desktop launcher (firefox.desktop):

    [Desktop Action ProfileManager]
    Name=Open Profile Manager
    Exec=firefox –no-remote -P
    Icon=firefox

    and

    Actions=….;ProfileManager;

    This should be a blog, because I will forget everything until next installation.

    (31/)

    Already 31? I should be muted at least, if not blocked. And my devices should be taken away.

    Anyways.
    Remember the last time I was crying there is no tree view in Nautilus?

    Well, Nemo in Mint has it. Nice. No tabs for the right side content view (like Nautilus), but I can split content pane in 2.
    Almost perfect.
    I’m old and my first file manager was PC commander (something older than Norton Commander) which had a tree view.
    I will probably demand a tree view on my tombstone.

    (32/)

    I was a bit nervous today.
    I had a video conference via Teams that I forgot about it until this morning.

    During my breakfast I remembered I didn’t test my cam, mic and screen sharing on newly installed Mint.

    But everything went smoothly. Teams (via Firefox) worked just fine for an hour.
    #Mint recognized my 2 cams and I could switch among them, also my headset. Sharing on 2 monitors also worked.

    (33/)

    Cont. setting up my work-related starter pack on #Mint:
    – Element (works, install went smoothly after initial hang on ‘verifying this device’, just copy-paste install script in CLI).
    – Signal (ditto, all good)
    – ProtonVPN (it says it supports Ubuntu/gnome, but also installs and works on mint/cinnamon)
    – OpenShot/Shotcut for light video editing – both work faster than on Ubuntu. Especially Shotcut.

    (34/)

    I used Hello on Windows to login with my face. I wanted to do the same on Linux.

    I found a nice project (#Howdy), but I didn’t succeed to make it work. Mint 22 (and others) are picky about Python and installing things in externally managed environment (https://peps.python.org/pep-0668/). Tried with venv, but failed.
    I came to the point I could add my faces to the Howdy and it recognized them, but couldn’t add it to login screen.

    Dismissed, next time.

    Goes to the list of paper cuts.

    (35/)

    3 weeks from the beginning of the transition to Linux (on my main working laptop) and 1 week of Mint.

    I’m glad to finally say that I can already perform my work 100% without resorting to tinkering with OS.

    This doesn’t mean I won’t tinker in every spare minute I have 🙂

    I should have installed Mint at the start.

    Conclusion

    Guess how many times I booted Windows after I started with Linux?

    1x. Just to check if dual boot works and that was it. I didn’t need to move any data, because all my data is synced to some NAS or some cloud storage. This made my transition easier.

    I will stop this thread for now. Everything works, I learned quite some new things about Linux and most importantly, I got rid of Microsoft tentacles.

    Summary of my current sw setup:

    • Mint+Cinnamon, X11, dual monitors, 125% fractional scaling
    • Nemo file browser with various mounted NAS drives and rclone mounts. I was most afraid how will I manage without official Google Drive and Dropbox apps. Rclone works just fine. I miss rclone-manager (from Ubuntu). Anyways, I did some mount scripts and I run them at startup. It’s even better, because I can mount cloud storages only when needed.
    • Firefox with multiple profiles and Multi-Account containers. I did the transfer to FF some months ago, so this was no issue. Everything synced well. I can do most of my work in FF and web apps.
    • Gimp/Inkscape for light graphics editing – again, I did the transfer to Gimp /Inkscape(under Windows) some months ago so this was no issue.
    • OpenShot/Shotcut – light video editing, same scenario as above.
    • Cura Slicer (transitioned from Sovol Cura) for 3D print slicing. It works even better than Sovol branch of Cura. I can connect to Octoprint directly.
    • LibreOffice – again, I occasionally used Open- and then LibreOffice, so I just needed to take a jump. I’m still getting used, but it’s fine.
    • Gigolo – to auto-mount my NAS samba shares. I expected auto-mount will work out of the box. It didn’t, so I installed Gigolo.

    During the transition I realized I’m not so dependent of Microsoft Office as I thought. I do the majority of (collaborative) document editing in Google Docs anyway. Some documents, that were designed in Word, I edited in Libre Office or GDocs/Presentations. Yeah, it broke layout, but I swallowed the bitter pill and redesigned some document templates in a way that can be seamlessly transferred between GDocs, Word, Libre Office Writer. I’m also sending documents to my team strictly in .odt format. Nobody complained till now.

    P. S. Thanks for all supportive comments (in Mastodon thread) I received during writing this long thread. Especially for those I should try Arch btw. I did (Endavour OS), but that’s another thread.

    Tags: #linux #mint #windows10 #transition #switch #papercuts

    https://blog.rozman.info/switching-to-linux-on-the-desktop-in-2025/

    #Linux #Mint #ocamlfuse #papercuts #rclone #switch #transition #windows10

  8. **Switching to Linux on the desktop in 2025**

    Read it on my blog, it has a nicer image/text layout.

    TL;DR

    If you are seeking the answer to the question “Should I switch from Windows (10) to Linux on desktop” in this blog post, the answer is: Yes, definitely (for web browsing and web app usage, document/image/video editing).

    Don’t mind the complaining of a middle aged guy (me) who has too much time to tinker with, what someone on Mastodon named, ‘edge scenarios’.

    Intro

    It’s 2025 and this is a diary of my … hmmm … 3rd? 5th? attempt of transition of my main working computer (laptop) to Linux. Also, a copy of my Mastodon thread. Also, a record of some strange obsession.

    The triggers for the transition to desktop Linux were:

    • soon-to-EOL Windows 10
    • pushy Windows Recall – no, thank you, I don’t want an all-seeing eye watching my monitor and my dirty little secrets I watch.
    • overall enshittification of Windows OS.

    I’m stubbornly clicking ‘no, I don’t wanna upgrade to Windows 11’ button for over a year.

    Just a small note about my work and why the switch to Linux was possible: I do most of my work in a web browser (collaborative document editing in Google Docs, Office356 or OnlyOffice) and I deal a lot with files in various distributed international teams. I run projects that produce various documents, learning content, research content, reports, e-learning platforms. I don’t program, sometimes I configure various web/FOSS systems. I communicate with my teams vie email, Signal, Element, Whatsapp. I wrote this to narrow the scenarios for whom the switch to Linux makes sense.

    Short history of my attempts

    You’re not interested in it, but I will write about it anyway. I will put aside my Linux on server installs(from ~2001), because they’re a different kind of animal.

    My first serious attempt in using Linux on a desktop was in 2010. I installed Ubuntu on my HP550 (dual core, 2GB RAM), Compiz for fancy desktop effects- especially desktop cube rotation. I added Virtual Box, converted my previous Windows 7 installation to a virtual machine and ran it from Linux when needed. Mostly because of Microsoft Visio that I needed for some project for public administration. I still can’t forget faces of people on one meeting when I was switching virtual desktops (rotating cube – see an example here). My laptop didn’t have any special GPU but it managed desktop 3D effects without breaking a sweat. They asked: What kind of Mac is this? 🙂

    Then I bought a new laptop in 2012 and stopped using Linux, I just went with preinstalled Windows. What went wrong, why didn’t I continue using Linux back then?

    Honestly, I can’t remember. Probably I was too busy or dealing with other things to make my company afloat so I didn’t bother.

    Fast forward to 2025.

    Ubuntu attempt

    The thread is 35 posts long.

    I started on 13. March and my intention was to log paper-cuts along the way.

    (1/)

    Today’s ‘biting a green apple’ and a step towards my de-microsoftization:

    I will work the whole day on Ubuntu/live edition from USB.
    Just to force myself out of comfort zone and observe paper cuts along the way — in the thread (1/) –>

    (2/)

    First paper cut: my Logitech MX Anywhere 3 Bluetooth mouse doesn’t wake up from sleep mode. I had to disconnect/reconnect it.

    **edit: looks like after switching to Wayland the problem is gone.

    (3/)

    Next paper cut: I have 2 monitors. Built-in (laptop), 60Hz and external (USB), 144Hz. Both work OK.
    I observed a funny thing: laptop’s monitor sometimes reduces and increases brightness by itself (only in dark mode). Briefly, but noticeable.

    **edit1: solved by disabling Automatic screen brightness (in Power settings)

    **edit2: X11 said 144Hz on secondary monitor works but it didn’t. Dragging a window was choppy. In Wayland it really works (so smooth!)

    (4/)

    Next paper cut: Settings window does not float to the top.
    I had ‘Settings’ window opened, but hidden behind some window.
    When I tried to run it from the docker menu (several times), it didn’t float to the top. I thought it just won’t open. I needed some minutes to figure out it is already opened, but hidden.

    That’s it for today. Overall, almost everything works. Firefox, Google Meet finds my headset and camera.

    (5/)

    Next paper cut: at the end of the day, I had to boot Windows.
    It welcomed me with ‘Enter your Bitlocker passphrase’.
    But why? Did Ubuntu live USB messed with the partition or what? Is this normal?
    All I did in Ubuntu – I clicked on windows disk and it said it is encrypted.

    (6/)

    Day 2 (using Ubuntu Live USB).
    – Firefox on Linux has a profile manager – nice!
    – Oh, I can sync Firefox Multi-Account containers – nice!
    – Large Text is not large enough for me. Fractional scaling (primary monitor – 125%, large one 150%) to the help and now everything is nice and large.
    – I can move taskbar from the left side to the bottom.

    – Only one paper cut today – I can’t use google drive account in gnome, probably because I use live USB.

    (7/)

    Next paper cut: first mouse scroll tick is ignored when changing direction of scrolling in Firefox.
    This is quite annoying.

    *edit: changing to Wayland solved the issue.

    (8/)

    Day 3 (using Ubuntu Live USB).
    Can you believe it? No paper cuts today. I really like the overall feeling and smoothness of the desktop.
    And here is solaar: fine grained settings for Logitech mice and similar 🙂

    (9/)

    Day 4 (using Ubuntu Live USB).
    Firefox crashed for the first time today.
    But fear not – when it recovered, also my unsaved WP post was there (because of WP, not FF).

    I started to wonder – do I even need to install Ubuntu on my computer? After several days running live USB, I don’t miss native installation (yet).

    (10/)

    Day 5. Enough of this live USB nonsense. Let’s install it.
    (actually, the system froze for the first time today and I’m blaming live USB).

    • Bitlocker off
    • Space freed (550GB for Ubuntu, 450 for Windows)
    • Backup made

    (no, I lie)
    Posting this and live recording screen cast WHILE INSTALLING 🙂

    (11/)

    Not sure what I was afraid of. Install took only several minutes. There is a no-brainier install option ‘install along windows’. Yeah, now I know why I was nervous. Partitioning. It looks like they made the installation more human than the last time I did it (10+years ago).

    Dual boot works.
    Not sure what is this ‘Ubuntu Pro’ good for.

    (12/)

    Accessing google drive from file explorer.
    I tried Gnome Online Accounts and connected to my gdrive.
    All I can say it didn’t improve much from the last time I used it several years ago. I can browse folders and files in Nautilus, but can’t edit them.

    Will try out #ocamlfuse and #rclone. Which one do you use?

    (13/)

    Moar paper cuts.
    – rclone installation to access gdrive was successful, but PITA (especially obtaining google ID from google apps). Absolutely not for ‘normal’ users.

    – could not not open files from mounted folder with LibreOffice. (fix: adding “–vfs-cache-mode full” to rclone mount command)

    – don’t see ‘shared with me’ in gdrive

    – Dropbox mount with rclone was seamless.

    I’m almost at the point I can say my workspace is ready to do the work, not to tinker with the OS.

    Sigh.

    (14/)

    Yes, I will bother you some more with paper cuts from Win->Ubuntu transition. It’s the year of the desktop Linux, right?

    – tried 3 file managers (Nautilus, Dolphin, Thunar). Each has something that annoys me.

    – Nautilus: No tree view in left pane (in combination with right content pane).

    – Thunar: won’t open my LibreOffice files from mounted folders

    – Dolphin: similar annoyances as Nautilus.

    Tree view worked 30 years ago, not sure why is so hard to keep UX patterns that work.

    (15/)

    … contd:
    – opening files from gdrive mounted folder (streamed via rclone) is painfully slow. 10 seconds or more. GDrive app on Win streams too, but it is significantly faster.

    – SORTING! My folder structure uses _ and __ prefixes to sort these folders to the top for the last 30 years. This worked in DOS, Windows (win explorer, cmd). Except here in Linux. CLI and Nautilus try to be smart and skip prefixes when sorting folders and files. Please don’t do that!

    Sigh².

    (16/)

    Intermezzo.
    My complaints doesn’t mean I don’t like Linux/Ubuntu.
    I just describe my journey, a transition from windows 10, from installation to usable workspace/desktop.
    I want it to work out.

    That’s why I use the term ‘paper cuts’: they hurt, but aren’t life threatening.

    (17/)

    Paper cut called Thorium reader.

    – installed Thorium reader via .deb package: won’t start

    – installed (‘unofficial’)snap package: starts, but won’t accept my library passphrase

    – installed AppImage: can’t run, something something FUSE. OK, extracted it, messed with access rights of a sandbox, it runs and it accepts my library passphrase to read DRM protected books.

    (18/)

    What is this s**t? Am I totally incompetent or what?
    Ubuntu made recursive links (Desktop, Documents, Templates, Pictures) after a fresh installation?

    (solved by suggestion: https://askubuntu.com/questions/1483018/home-user-desktop-and-public-folders-show-as-type-link-broken-inode-symlink)

    (19/)

    Day 6 and I broke Ubuntu for the first time. Why? I wanted to run Ultimaker Cura AppImage, it said it needed Fuse, I was stupid to just sudo apt install fuse, Y of course. It removed some gnome packages.

    No login screen anymore.

    I thought it is catastrophe.
    But no.
    ctrl-alt-f3 to the rescue, reinstall fuse3, gnome, desktop, shell and I’m back in the saddle after 5 minutes.

    Easy to break, easy to fix. But not for the faint-hearted.

    (20/)

    yes, I’m still still here, fighting the windmills.
    Today I installed sw from/via .deb, apt get, snap, appimage, flatpak.

    1. Thorium reader and Cura Slicer via appimage. A lot of cli gymnastics because of fuse3 and fuse2 lib mixing

    2. Davinci Resolve via install script which was appimage in disguise. Damn, this was hard, because Davinci didn’t detect my graphic card and OpenCL didn’t work. Installed AMD drivers. No luck. Added myself to video group. Success.

    Sigh^3

    (21/)

    Something positive for a change.
    #Nautilus TABS! What a useful functionality!
    I didn’t even know what I was missing.
    Scenario: once per year I dump photos from my phone to NAS folder called ‘uncategorized’. Then I categorize photos manually – moving to appropriate folders (e. g. 2025-03-27-EventName).
    I create new photo sub-folders and open them in separate Nautilus tabs, then I can categorize them quickly.

    And no, I’m not looking for a tool that does that for me.

    (22/)

    … aaaaand another paper cut. Sometimes my mouse cursor freezes for 10 seconds.
    Not sure why.
    I suspect when something wants to access samba share (my NAS is pretty slow).
    Nevertheless: Last time I experienced freezing mouse cursor, was in … windows 3.1.
    I remember my Amiga friends always made jokes about it.
    Multitasking OSes shouldn’t do this.

    (23/)

    it’s not samba share, it’s my external monitor that causes freezes. When mouse cursor freezes, I unplug monitor’s USB from my laptop and re-plug it, and it starts to work immediately.
    Yeah, graphic card drivers, Wayland, whatever.

    Another paper cut: file drag&drop from my mounted GDrive folder to a web page upload widget doesn’t work.

    (24/)

    But AGAIN not everything is grim.
    Today I’d like to praise old humble symbolic links.
    I just made some links to some of my deep-nested folders in Nautilus. Quick access is one of those little things that make life brighter.

    (25/)

    More silver lining:
    NoMachine remote access application installed (.deb) and works without any major fuckery.

    – paper cut: It detected servers on my network, but wanted to connect to them via 172….. by default. BUT I can quickly change the IP of the server in the NoMachine dropdown, it offers all addresses (ipv4, ipv6 and 172???? why?) the server is reachable by.

    (26/)

    New day, new paper cut.
    Davinci Resolve does not support mp4 (h.264) on Linux (but on Windows it does). Besides, the installation on Ubuntu is p.i.t.a., UI scaling/fonts is/are way too small (I can fix it by desktop scaling but anyway), and the window doesn’t behave at all. No top-bar handle to move it around or full-screen it.
    Moreover, it supports only 100 or 200% scaling. If I use 125%, it crashes the machine.
    OpenShot then. It installs and works smooth and ok for basic video editing.

    (27/)

    Desktop crashes at least 2 times per day. Sometimes it freezes for 10 seconds. I connected my external monitor via HDMI instead of USB-DP and was a bit better.

    Everything feels wonky and unstable.
    That’s why I switched from Wayland to x11 and it feels more stable.
    For now.

    Mint era

    (28/) – 2. April 2025

    Nope, x11 has different problems. After waking up and re-login, it crashes all apps.
    #Ubuntu – I gave you a chance, but you didn’t want to play nice. So long and bye.

    Mint live USB booted, runs solid for now.
    So far everything works out of the box. Even AppImages have icons 🙂 Yeah, small things.

    Am I on the path of distro hopping?

    (29/)

    Mint installed. I’m a simple man, looks like Mint will be OK.
    It survived the night and woke up without a crash. All N browser tabs are still open.

    But it’s not without it’s own paper cuts.

    I liked rclone-manager (ubuntu/gnome extension), but there are no gnome-extensions in Mint.

    Whatever. A bit pissed off and wrote mount scripts to my dropboxes and google drives by hand and let’s go.

    I’m scared (of myself?), what is the next step? Ditching GUI altogether and working only in CLI?

    (30/)

    Next (#Mint) paper cut:
    In Ubuntu, when clicking Firefox icon I could launch profile manager. This option is missing in Mint.

    Whatever. This is Linux, I can probably add it by myself.

    Edited Firefox desktop launcher (firefox.desktop):

    [Desktop Action ProfileManager]
    Name=Open Profile Manager
    Exec=firefox –no-remote -P
    Icon=firefox

    and

    Actions=….;ProfileManager;

    This should be a blog, because I will forget everything until next installation.

    (31/)

    Already 31? I should be muted at least, if not blocked. And my devices should be taken away.

    Anyways.
    Remember the last time I was crying there is no tree view in Nautilus?

    Well, Nemo in Mint has it. Nice. No tabs for the right side content view (like Nautilus), but I can split content pane in 2.
    Almost perfect.
    I’m old and my first file manager was PC commander (something older than Norton Commander) which had a tree view.
    I will probably demand a tree view on my tombstone.

    (32/)

    I was a bit nervous today.
    I had a video conference via Teams that I forgot about it until this morning.

    During my breakfast I remembered I didn’t test my cam, mic and screen sharing on newly installed Mint.

    But everything went smoothly. Teams (via Firefox) worked just fine for an hour.
    #Mint recognized my 2 cams and I could switch among them, also my headset. Sharing on 2 monitors also worked.

    (33/)

    Cont. setting up my work-related starter pack on #Mint:
    – Element (works, install went smoothly after initial hang on ‘verifying this device’, just copy-paste install script in CLI).
    – Signal (ditto, all good)
    – ProtonVPN (it says it supports Ubuntu/gnome, but also installs and works on mint/cinnamon)
    – OpenShot/Shotcut for light video editing – both work faster than on Ubuntu. Especially Shotcut.

    (34/)

    I used Hello on Windows to login with my face. I wanted to do the same on Linux.

    I found a nice project (#Howdy), but I didn’t succeed to make it work. Mint 22 (and others) are picky about Python and installing things in externally managed environment (https://peps.python.org/pep-0668/). Tried with venv, but failed.
    I came to the point I could add my faces to the Howdy and it recognized them, but couldn’t add it to login screen.

    Dismissed, next time.

    Goes to the list of paper cuts.

    (35/)

    3 weeks from the beginning of the transition to Linux (on my main working laptop) and 1 week of Mint.

    I’m glad to finally say that I can already perform my work 100% without resorting to tinkering with OS.

    This doesn’t mean I won’t tinker in every spare minute I have 🙂

    I should have installed Mint at the start.

    Conclusion

    Guess how many times I booted Windows after I started with Linux?

    1x. Just to check if dual boot works and that was it. I didn’t need to move any data, because all my data is synced to some NAS or some cloud storage. This made my transition easier.

    I will stop this thread for now. Everything works, I learned quite some new things about Linux and most importantly, I got rid of Microsoft tentacles.

    Summary of my current sw setup:

    • Mint+Cinnamon, X11, dual monitors, 125% fractional scaling
    • Nemo file browser with various mounted NAS drives and rclone mounts. I was most afraid how will I manage without official Google Drive and Dropbox apps. Rclone works just fine. I miss rclone-manager (from Ubuntu). Anyways, I did some mount scripts and I run them at startup. It’s even better, because I can mount cloud storages only when needed.
    • Firefox with multiple profiles and Multi-Account containers. I did the transfer to FF some months ago, so this was no issue. Everything synced well. I can do most of my work in FF and web apps.
    • Gimp/Inkscape for light graphics editing – again, I did the transfer to Gimp /Inkscape(under Windows) some months ago so this was no issue.
    • OpenShot/Shotcut – light video editing, same scenario as above.
    • Cura Slicer (transitioned from Sovol Cura) for 3D print slicing. It works even better than Sovol branch of Cura. I can connect to Octoprint directly.
    • LibreOffice – again, I occasionally used Open- and then LibreOffice, so I just needed to take a jump. I’m still getting used, but it’s fine.
    • Gigolo – to auto-mount my NAS samba shares. I expected auto-mount will work out of the box. It didn’t, so I installed Gigolo.

    During the transition I realized I’m not so dependent of Microsoft Office as I thought. I do the majority of (collaborative) document editing in Google Docs anyway. Some documents, that were designed in Word, I edited in Libre Office or GDocs/Presentations. Yeah, it broke layout, but I swallowed the bitter pill and redesigned some document templates in a way that can be seamlessly transferred between GDocs, Word, Libre Office Writer. I’m also sending documents to my team strictly in .odt format. Nobody complained till now.

    P. S. Thanks for all supportive comments (in Mastodon thread) I received during writing this long thread. Especially for those I should try Arch btw. I did (Endavour OS), but that’s another thread.

    Tags: #linux #mint #windows10 #transition #switch #papercuts

    https://blog.rozman.info/switching-to-linux-on-the-desktop-in-2025/

    #Linux #Mint #ocamlfuse #papercuts #rclone #switch #transition #windows10

  9. **Switching to Linux on the desktop in 2025**

    Read it on my blog, it has a nicer image/text layout.

    TL;DR

    If you are seeking the answer to the question “Should I switch from Windows (10) to Linux on desktop” in this blog post, the answer is: Yes, definitely (for web browsing and web app usage, document/image/video editing).

    Don’t mind the complaining of a middle aged guy (me) who has too much time to tinker with, what someone on Mastodon named, ‘edge scenarios’.

    Intro

    It’s 2025 and this is a diary of my … hmmm … 3rd? 5th? attempt of transition of my main working computer (laptop) to Linux. Also, a copy of my Mastodon thread. Also, a record of some strange obsession.

    The triggers for the transition to desktop Linux were:

    • soon-to-EOL Windows 10
    • pushy Windows Recall – no, thank you, I don’t want an all-seeing eye watching my monitor and my dirty little secrets I watch.
    • overall enshittification of Windows OS.

    I’m stubbornly clicking ‘no, I don’t wanna upgrade to Windows 11’ button for over a year.

    Just a small note about my work and why the switch to Linux was possible: I do most of my work in a web browser (collaborative document editing in Google Docs, Office356 or OnlyOffice) and I deal a lot with files in various distributed international teams. I run projects that produce various documents, learning content, research content, reports, e-learning platforms. I don’t program, sometimes I configure various web/FOSS systems. I communicate with my teams vie email, Signal, Element, Whatsapp. I wrote this to narrow the scenarios for whom the switch to Linux makes sense.

    Short history of my attempts

    You’re not interested in it, but I will write about it anyway. I will put aside my Linux on server installs(from ~2001), because they’re a different kind of animal.

    My first serious attempt in using Linux on a desktop was in 2010. I installed Ubuntu on my HP550 (dual core, 2GB RAM), Compiz for fancy desktop effects- especially desktop cube rotation. I added Virtual Box, converted my previous Windows 7 installation to a virtual machine and ran it from Linux when needed. Mostly because of Microsoft Visio that I needed for some project for public administration. I still can’t forget faces of people on one meeting when I was switching virtual desktops (rotating cube – see an example here). My laptop didn’t have any special GPU but it managed desktop 3D effects without breaking a sweat. They asked: What kind of Mac is this? 🙂

    Then I bought a new laptop in 2012 and stopped using Linux, I just went with preinstalled Windows. What went wrong, why didn’t I continue using Linux back then?

    Honestly, I can’t remember. Probably I was too busy or dealing with other things to make my company afloat so I didn’t bother.

    Fast forward to 2025.

    Ubuntu attempt

    The thread is 35 posts long.

    I started on 13. March and my intention was to log paper-cuts along the way.

    (1/)

    Today’s ‘biting a green apple’ and a step towards my de-microsoftization:

    I will work the whole day on Ubuntu/live edition from USB.
    Just to force myself out of comfort zone and observe paper cuts along the way — in the thread (1/) –>

    (2/)

    First paper cut: my Logitech MX Anywhere 3 Bluetooth mouse doesn’t wake up from sleep mode. I had to disconnect/reconnect it.

    **edit: looks like after switching to Wayland the problem is gone.

    (3/)

    Next paper cut: I have 2 monitors. Built-in (laptop), 60Hz and external (USB), 144Hz. Both work OK.
    I observed a funny thing: laptop’s monitor sometimes reduces and increases brightness by itself (only in dark mode). Briefly, but noticeable.

    **edit1: solved by disabling Automatic screen brightness (in Power settings)

    **edit2: X11 said 144Hz on secondary monitor works but it didn’t. Dragging a window was choppy. In Wayland it really works (so smooth!)

    (4/)

    Next paper cut: Settings window does not float to the top.
    I had ‘Settings’ window opened, but hidden behind some window.
    When I tried to run it from the docker menu (several times), it didn’t float to the top. I thought it just won’t open. I needed some minutes to figure out it is already opened, but hidden.

    That’s it for today. Overall, almost everything works. Firefox, Google Meet finds my headset and camera.

    (5/)

    Next paper cut: at the end of the day, I had to boot Windows.
    It welcomed me with ‘Enter your Bitlocker passphrase’.
    But why? Did Ubuntu live USB messed with the partition or what? Is this normal?
    All I did in Ubuntu – I clicked on windows disk and it said it is encrypted.

    (6/)

    Day 2 (using Ubuntu Live USB).
    – Firefox on Linux has a profile manager – nice!
    – Oh, I can sync Firefox Multi-Account containers – nice!
    – Large Text is not large enough for me. Fractional scaling (primary monitor – 125%, large one 150%) to the help and now everything is nice and large.
    – I can move taskbar from the left side to the bottom.

    – Only one paper cut today – I can’t use google drive account in gnome, probably because I use live USB.

    (7/)

    Next paper cut: first mouse scroll tick is ignored when changing direction of scrolling in Firefox.
    This is quite annoying.

    *edit: changing to Wayland solved the issue.

    (8/)

    Day 3 (using Ubuntu Live USB).
    Can you believe it? No paper cuts today. I really like the overall feeling and smoothness of the desktop.
    And here is solaar: fine grained settings for Logitech mice and similar 🙂

    (9/)

    Day 4 (using Ubuntu Live USB).
    Firefox crashed for the first time today.
    But fear not – when it recovered, also my unsaved WP post was there (because of WP, not FF).

    I started to wonder – do I even need to install Ubuntu on my computer? After several days running live USB, I don’t miss native installation (yet).

    (10/)

    Day 5. Enough of this live USB nonsense. Let’s install it.
    (actually, the system froze for the first time today and I’m blaming live USB).

    • Bitlocker off
    • Space freed (550GB for Ubuntu, 450 for Windows)
    • Backup made

    (no, I lie)
    Posting this and live recording screen cast WHILE INSTALLING 🙂

    (11/)

    Not sure what I was afraid of. Install took only several minutes. There is a no-brainier install option ‘install along windows’. Yeah, now I know why I was nervous. Partitioning. It looks like they made the installation more human than the last time I did it (10+years ago).

    Dual boot works.
    Not sure what is this ‘Ubuntu Pro’ good for.

    (12/)

    Accessing google drive from file explorer.
    I tried Gnome Online Accounts and connected to my gdrive.
    All I can say it didn’t improve much from the last time I used it several years ago. I can browse folders and files in Nautilus, but can’t edit them.

    Will try out #ocamlfuse and #rclone. Which one do you use?

    (13/)

    Moar paper cuts.
    – rclone installation to access gdrive was successful, but PITA (especially obtaining google ID from google apps). Absolutely not for ‘normal’ users.

    – could not not open files from mounted folder with LibreOffice. (fix: adding “–vfs-cache-mode full” to rclone mount command)

    – don’t see ‘shared with me’ in gdrive

    – Dropbox mount with rclone was seamless.

    I’m almost at the point I can say my workspace is ready to do the work, not to tinker with the OS.

    Sigh.

    (14/)

    Yes, I will bother you some more with paper cuts from Win->Ubuntu transition. It’s the year of the desktop Linux, right?

    – tried 3 file managers (Nautilus, Dolphin, Thunar). Each has something that annoys me.

    – Nautilus: No tree view in left pane (in combination with right content pane).

    – Thunar: won’t open my LibreOffice files from mounted folders

    – Dolphin: similar annoyances as Nautilus.

    Tree view worked 30 years ago, not sure why is so hard to keep UX patterns that work.

    (15/)

    … contd:
    – opening files from gdrive mounted folder (streamed via rclone) is painfully slow. 10 seconds or more. GDrive app on Win streams too, but it is significantly faster.

    – SORTING! My folder structure uses _ and __ prefixes to sort these folders to the top for the last 30 years. This worked in DOS, Windows (win explorer, cmd). Except here in Linux. CLI and Nautilus try to be smart and skip prefixes when sorting folders and files. Please don’t do that!

    Sigh².

    (16/)

    Intermezzo.
    My complaints doesn’t mean I don’t like Linux/Ubuntu.
    I just describe my journey, a transition from windows 10, from installation to usable workspace/desktop.
    I want it to work out.

    That’s why I use the term ‘paper cuts’: they hurt, but aren’t life threatening.

    (17/)

    Paper cut called Thorium reader.

    – installed Thorium reader via .deb package: won’t start

    – installed (‘unofficial’)snap package: starts, but won’t accept my library passphrase

    – installed AppImage: can’t run, something something FUSE. OK, extracted it, messed with access rights of a sandbox, it runs and it accepts my library passphrase to read DRM protected books.

    (18/)

    What is this s**t? Am I totally incompetent or what?
    Ubuntu made recursive links (Desktop, Documents, Templates, Pictures) after a fresh installation?

    (solved by suggestion: https://askubuntu.com/questions/1483018/home-user-desktop-and-public-folders-show-as-type-link-broken-inode-symlink)

    (19/)

    Day 6 and I broke Ubuntu for the first time. Why? I wanted to run Ultimaker Cura AppImage, it said it needed Fuse, I was stupid to just sudo apt install fuse, Y of course. It removed some gnome packages.

    No login screen anymore.

    I thought it is catastrophe.
    But no.
    ctrl-alt-f3 to the rescue, reinstall fuse3, gnome, desktop, shell and I’m back in the saddle after 5 minutes.

    Easy to break, easy to fix. But not for the faint-hearted.

    (20/)

    yes, I’m still still here, fighting the windmills.
    Today I installed sw from/via .deb, apt get, snap, appimage, flatpak.

    1. Thorium reader and Cura Slicer via appimage. A lot of cli gymnastics because of fuse3 and fuse2 lib mixing

    2. Davinci Resolve via install script which was appimage in disguise. Damn, this was hard, because Davinci didn’t detect my graphic card and OpenCL didn’t work. Installed AMD drivers. No luck. Added myself to video group. Success.

    Sigh^3

    (21/)

    Something positive for a change.
    #Nautilus TABS! What a useful functionality!
    I didn’t even know what I was missing.
    Scenario: once per year I dump photos from my phone to NAS folder called ‘uncategorized’. Then I categorize photos manually – moving to appropriate folders (e. g. 2025-03-27-EventName).
    I create new photo sub-folders and open them in separate Nautilus tabs, then I can categorize them quickly.

    And no, I’m not looking for a tool that does that for me.

    (22/)

    … aaaaand another paper cut. Sometimes my mouse cursor freezes for 10 seconds.
    Not sure why.
    I suspect when something wants to access samba share (my NAS is pretty slow).
    Nevertheless: Last time I experienced freezing mouse cursor, was in … windows 3.1.
    I remember my Amiga friends always made jokes about it.
    Multitasking OSes shouldn’t do this.

    (23/)

    it’s not samba share, it’s my external monitor that causes freezes. When mouse cursor freezes, I unplug monitor’s USB from my laptop and re-plug it, and it starts to work immediately.
    Yeah, graphic card drivers, Wayland, whatever.

    Another paper cut: file drag&drop from my mounted GDrive folder to a web page upload widget doesn’t work.

    (24/)

    But AGAIN not everything is grim.
    Today I’d like to praise old humble symbolic links.
    I just made some links to some of my deep-nested folders in Nautilus. Quick access is one of those little things that make life brighter.

    (25/)

    More silver lining:
    NoMachine remote access application installed (.deb) and works without any major fuckery.

    – paper cut: It detected servers on my network, but wanted to connect to them via 172….. by default. BUT I can quickly change the IP of the server in the NoMachine dropdown, it offers all addresses (ipv4, ipv6 and 172???? why?) the server is reachable by.

    (26/)

    New day, new paper cut.
    Davinci Resolve does not support mp4 (h.264) on Linux (but on Windows it does). Besides, the installation on Ubuntu is p.i.t.a., UI scaling/fonts is/are way too small (I can fix it by desktop scaling but anyway), and the window doesn’t behave at all. No top-bar handle to move it around or full-screen it.
    Moreover, it supports only 100 or 200% scaling. If I use 125%, it crashes the machine.
    OpenShot then. It installs and works smooth and ok for basic video editing.

    (27/)

    Desktop crashes at least 2 times per day. Sometimes it freezes for 10 seconds. I connected my external monitor via HDMI instead of USB-DP and was a bit better.

    Everything feels wonky and unstable.
    That’s why I switched from Wayland to x11 and it feels more stable.
    For now.

    Mint era

    (28/) – 2. April 2025

    Nope, x11 has different problems. After waking up and re-login, it crashes all apps.
    #Ubuntu – I gave you a chance, but you didn’t want to play nice. So long and bye.

    Mint live USB booted, runs solid for now.
    So far everything works out of the box. Even AppImages have icons 🙂 Yeah, small things.

    Am I on the path of distro hopping?

    (29/)

    Mint installed. I’m a simple man, looks like Mint will be OK.
    It survived the night and woke up without a crash. All N browser tabs are still open.

    But it’s not without it’s own paper cuts.

    I liked rclone-manager (ubuntu/gnome extension), but there are no gnome-extensions in Mint.

    Whatever. A bit pissed off and wrote mount scripts to my dropboxes and google drives by hand and let’s go.

    I’m scared (of myself?), what is the next step? Ditching GUI altogether and working only in CLI?

    (30/)

    Next (#Mint) paper cut:
    In Ubuntu, when clicking Firefox icon I could launch profile manager. This option is missing in Mint.

    Whatever. This is Linux, I can probably add it by myself.

    Edited Firefox desktop launcher (firefox.desktop):

    [Desktop Action ProfileManager]
    Name=Open Profile Manager
    Exec=firefox –no-remote -P
    Icon=firefox

    and

    Actions=….;ProfileManager;

    This should be a blog, because I will forget everything until next installation.

    (31/)

    Already 31? I should be muted at least, if not blocked. And my devices should be taken away.

    Anyways.
    Remember the last time I was crying there is no tree view in Nautilus?

    Well, Nemo in Mint has it. Nice. No tabs for the right side content view (like Nautilus), but I can split content pane in 2.
    Almost perfect.
    I’m old and my first file manager was PC commander (something older than Norton Commander) which had a tree view.
    I will probably demand a tree view on my tombstone.

    (32/)

    I was a bit nervous today.
    I had a video conference via Teams that I forgot about it until this morning.

    During my breakfast I remembered I didn’t test my cam, mic and screen sharing on newly installed Mint.

    But everything went smoothly. Teams (via Firefox) worked just fine for an hour.
    #Mint recognized my 2 cams and I could switch among them, also my headset. Sharing on 2 monitors also worked.

    (33/)

    Cont. setting up my work-related starter pack on #Mint:
    – Element (works, install went smoothly after initial hang on ‘verifying this device’, just copy-paste install script in CLI).
    – Signal (ditto, all good)
    – ProtonVPN (it says it supports Ubuntu/gnome, but also installs and works on mint/cinnamon)
    – OpenShot/Shotcut for light video editing – both work faster than on Ubuntu. Especially Shotcut.

    (34/)

    I used Hello on Windows to login with my face. I wanted to do the same on Linux.

    I found a nice project (#Howdy), but I didn’t succeed to make it work. Mint 22 (and others) are picky about Python and installing things in externally managed environment (https://peps.python.org/pep-0668/). Tried with venv, but failed.
    I came to the point I could add my faces to the Howdy and it recognized them, but couldn’t add it to login screen.

    Dismissed, next time.

    Goes to the list of paper cuts.

    (35/)

    3 weeks from the beginning of the transition to Linux (on my main working laptop) and 1 week of Mint.

    I’m glad to finally say that I can already perform my work 100% without resorting to tinkering with OS.

    This doesn’t mean I won’t tinker in every spare minute I have 🙂

    I should have installed Mint at the start.

    Conclusion

    Guess how many times I booted Windows after I started with Linux?

    1x. Just to check if dual boot works and that was it. I didn’t need to move any data, because all my data is synced to some NAS or some cloud storage. This made my transition easier.

    I will stop this thread for now. Everything works, I learned quite some new things about Linux and most importantly, I got rid of Microsoft tentacles.

    Summary of my current sw setup:

    • Mint+Cinnamon, X11, dual monitors, 125% fractional scaling
    • Nemo file browser with various mounted NAS drives and rclone mounts. I was most afraid how will I manage without official Google Drive and Dropbox apps. Rclone works just fine. I miss rclone-manager (from Ubuntu). Anyways, I did some mount scripts and I run them at startup. It’s even better, because I can mount cloud storages only when needed.
    • Firefox with multiple profiles and Multi-Account containers. I did the transfer to FF some months ago, so this was no issue. Everything synced well. I can do most of my work in FF and web apps.
    • Gimp/Inkscape for light graphics editing – again, I did the transfer to Gimp /Inkscape(under Windows) some months ago so this was no issue.
    • OpenShot/Shotcut – light video editing, same scenario as above.
    • Cura Slicer (transitioned from Sovol Cura) for 3D print slicing. It works even better than Sovol branch of Cura. I can connect to Octoprint directly.
    • LibreOffice – again, I occasionally used Open- and then LibreOffice, so I just needed to take a jump. I’m still getting used, but it’s fine.
    • Gigolo – to auto-mount my NAS samba shares. I expected auto-mount will work out of the box. It didn’t, so I installed Gigolo.

    During the transition I realized I’m not so dependent of Microsoft Office as I thought. I do the majority of (collaborative) document editing in Google Docs anyway. Some documents, that were designed in Word, I edited in Libre Office or GDocs/Presentations. Yeah, it broke layout, but I swallowed the bitter pill and redesigned some document templates in a way that can be seamlessly transferred between GDocs, Word, Libre Office Writer. I’m also sending documents to my team strictly in .odt format. Nobody complained till now.

    P. S. Thanks for all supportive comments (in Mastodon thread) I received during writing this long thread. Especially for those I should try Arch btw. I did (Endavour OS), but that’s another thread.

    Tags: #linux #mint #windows10 #transition #switch #papercuts

    https://blog.rozman.info/switching-to-linux-on-the-desktop-in-2025/

    #Linux #Mint #ocamlfuse #papercuts #rclone #switch #transition #windows10

  10. CONTENT WARNING: The details and linked videos of this event may be disturbing to some.

    August 24, 2019:

    Elijah McClain, a massage therapist, violinist, and “gentle soul”, was walking home from a convenience store not, far from his home in Aurora, Colorado. Because of his anemia, which often made him feel cold, he was known to where a ski mask. On his way home, someone in a house he passed called police to report an unarmed, “sketchy” individual. Minutes Later, Aurora PD’s Nathan Woodyard saw Elijah walking to his home and stopped. Within 9 sec. of exiting his car, Woodyard had his hands on Elijah McClain. Just seconds later, officers Randy Roedema and Jason Rosenblatt showed up, also engaging with Elisha. As he explained he was an “introvert“, and was “just walking home“, one of the officers responded, “Relax, or I’m going to have to change this situation”.

    The officers had McClain against the wall, before taking the five feet seven, 143 lb man to the ground. One of their body cameras was detached and landed in the grass, capturing an officer slowly walking out of view. With Elijah and police no longer being filmed clearly, one officer can be heard claiming, “he just grabbed your gun dude“. Within four seconds of the allegation, Elijah can be heard choking as a result of police applying the carotid restraint, restricting his airflow. FOUR SECONDS?! One of the officers later told investigators that McClain “briefly” fell unconscious and the officers released their grasp on his neck. The chokehold was implemented only one minute and four seconds after the first officer exited his vehicle. The three officers involved, Woodyard, Rosenblatt and Roedema, all claimed their body cameras “fell off ” in the “struggle” with this small statured young man.

    The video footage is very difficult to listen to. Elijah McClain can be heard gasping as he pleads with officers to stop, saying, “I can’t breathe“. Elijah continues to plead, saying his name and that he was “just going home“. Through his sobs, came the words I, and many others with invisible disabilities, will never forget. “I’m just different. I’m just different, that’s all“. It’s hard to difficult the police on the audio of one body cam, but Elijah’s words are clear… “I’m so sorry. I have no gun. I don’t do that stuff. I don’t do any fighting. Why are you attacking me?”. As officers ignore his pleas, they seem to spin tales of their “struggle” with a 143 pound person. One repeated the accusation that McClain tried to grab officer Roedema’s gun, and that they “had” to use the carotid hold.

    About six minutes after the initial contact by police, Elijah McClain can be heard vomiting for the first time. One of the officers commands him to “STOP“, to which McClain apologized, saying, “I’m sorry. I wasn’t trying to do that. I just can’t breathe correctly”. In the next few minutes, McClain gets sick “a few more times” while officers held him face-down, repeatedly telling him to “stop resisting“. Reports say he was also handcuffed and still wearing the ski mask when he was sick, and as a result, was struggling to breathe. He may have been trying to roll on his side, or remove the mask to breathe better, as police seemed to be acting out a show of “resisting arrest” for the body cam audio.

    The officers can be heard threatening him, “Don’t get up. It’s not gonna be good for you, I’m telling you right now“. Another officer standing over him said “You keep messin’ around, I’m unna bring my dog out here“, saying he would let the dog attack Elijah. Approximately 11 minutes after the initial contact by officer Woodyard, the cameras capture police saying, “When the ambulance gets here, were gonna go ahead and give him some ketamine“. This is also when they claimed “whatever he’s on, he has incredible strength”, as another concurs “yeah, crazy strength”. It’s alarming that police, and individuals of such character, have authority to mandate the administering of this powerful sedative.

    Image from another officers body cam footage. Read Alt text for more.

    The timing of the accusation that Elijah McClain attempted to grab the firearm, only seconds after body cams were removed, is highly suspect. Again, McClain was 143 lbs, being held by three much larger men. While one of the officer’s body cam was still attached, another can be heard telling him to “move” his camera. I don’t believe the body cams dislodged, and firmly believe these accused murderers doffed them. The Maclean’s attorney said police intentionally removed their body cameras “to support a false allegation that McClain reached for a gun“. Though it is not clear on the video, there is absolutely, no doubt in my mind, the accusation is false. The same is true, regarding their claims for body cam audio that Elijah was “struggling“. If he was struggling, it was likely for air and survival.

    The report from paramedics, Jeremy Cooper and Peter Cichuniec claimed that when they arrived, Elijah was displaying signs of “excited delirium“. The snap “diagnosis” was made, despite never touching, talking to, or checking Maclean’s vitals. Were these paramedics scapegoating in an effort to protect their fellow first responders? After incorrectly estimating his weight, the paramedics administered 500 mg of ketamine to McClain, a dosage for someone nearly 60 to 70 pounds larger. For those who believe in forcibly drugging people, the proper ketamine dosage for Elijah’s weight, is about 325 mg. Approximately 23 minutes after Nathan Woodyard stopped “to talk” to McClain, the officers involved were informed, Elijah, had no pulse. Less than a week later, he was declared brain-dead on August 27, and died, five years ago today, on August 30, 2019.

    According to cpr.org – CPR news: “After McClain’s death, Dr. Stephen Cina, a contractor forensic pathologist for Adams County, completed the autopsy on Sept. 3, 2019. There were two Aurora police officers, and two representatives from the Adams County District Attorney’s office in attendance“. I’d be interested to hear that conversation, considering the findings of the autopsy. The Adams County corner ruled the cause of death as “undetermined“, saying that, “a therapeutic amount” of ketamine was found in Maclean’s system. The report, reeking of scapegoating, speculated about drug use and undiagnosed mental illness, while seeming to conclude nothing, but suppositional ifs.

    Excerpt from Dr. Cina’s report: “The manner of death may be accident if it was an idiosyncratic drug reaction,” . “It may be natural if (McClain) had an undiagnosed mental illness that led to excited delirium, if his intense physical exertion combined with a narrow coronary artery led to an arrhythmia, if he had an asthma attack, or if he aspirated vomit while restrained.”… “It may be a homicide if the actions of officers led to his death (eg. carotid control hold…)”.

    That’s a lot of “Ifs”. I can’t help but wonder “IF”, the presence of officers and DA personnel “may” have influence the doctors findings. In conjunction with the corners “undetermined” autopsy determination, Adams County DA Dave Young said, he would not bring charges against the officers. This seeming manipulation of justice, by those who controlled it, was met with outrage.

    Another slap in the face, illuminating the culture of Aurora PD, occurred in October 2019, less than two months after Elijah’s death. Several other officers returned to the scene, taking pictures while they joyfully reenacted the cardioid hold, used on McClain. In July, 2020, after the photos were made public, three officers were fired and one resigned. It’s remarkable that they were fired for mocking and taking pictures, while the officers accused of killing Elijah, were still patrolling the streets. The shouts of “Justice for Elijah”, became louder as it seemed this heinous police action was being ignored. Once again, protesters took to the streets.

    AP Photo/David Zalubowski, File) – BF Denver Post – Read Alt text for more.

    Protests and Indictments:

    The winds of change began to blow in the summer of 2020. A change.org petition compiled over 2 million signatures, seeking justice for Elijah McClain. On June 10, 2020, Colorado Gov. Jared Polis told the public, Atty Gen Phil Weiser would be investigating the death of McClain. Also that June, protesters shut down a section of Interstate 225, demanding accountability for his death. In the series of peaceful demonstrations, protesters were also targeted by police. During one of those protests, when heavily militarized police arrived, the legendary chant began, “WHY ARE YOU IN RIOT GEAR! WE DON’T SEE NO RIOT HERE“. Finally, there was momentum in the battle for some form of justice.

    In September, 2021, over two years after the crime, a 32 count grand jury indictment charged the five first responders for their actions. The forensic pathologist who was part of the grand jury investigation, concluded the cause of death was “homicide“. The individuals named in the grand jury indictment were: officers Randy Roedema, Nathan Woodyard, Jason Rosenblatt, and paramedics Jeremy Cooper and Peter Cichuniec. All five were charged with Manslaughter and Criminally negligent homicide, among other charges. Roedema, Rosenblatt and both EMTs were additionally charged with Second-degree assault and Crime of violence.

    Protesters shut down Interstate 225. Read Alt text for more.

    The indictment was followed by a series of other events. In September 2022, well after the grand jury indictment, Adams County announced, the original 2019 autopsy report had been amended. It now stated the means as “COMPLICATIONS OF KETAMINE ADMINISTRATION FOLLOWING FORCIBLE RESTRAINT“. However, the cause of death was still listed as “UNDETERMINED“, rather than “homicide”. Interestingly enough, in November 2021, the city of Aurora agreed to pay the family of Elijah McClain, $15 million to settle a federal civil rights action.

    After much legal wrangling, many delays, and the passing of four long years, the five accused murderers, were tried in three separate cases. Nathan Woodyard, the first Aurora officer on the scene, who put his hands on Elijah within nine seconds, stood trial alone. The other two officers, Randy Roedema and Jason Rosenblatt, faced “justice” in the same proceeding. The paramedics, Jeremy Cooper and Peter Cichuniec, were also put on trial together. I gave daily reports during the trials, but ultimately became disgusted by the outcomes. I do not believe justice was properly served.

    Image showing protests and mugshots of the accused. Read Alt text for more.

    In the joint trial of the two Aurora officers, the jury found Randy Roedema guilty of criminally negligent homicide, and third-degree assault causing bodily injury. Officer Jason Rosenblatt was acquitted, and will serve no jail time. After the verdict, Elijah McClain’s mother, Sheneen, told reporters as she left the courthouse, “… I’m pissed!”. I must say, so am I! Randy Roedema, the only officer to be incarcerated for the murder, was sentenced to 14 months with options for work-release prison time.

    In June, the Denver Post reported that Randy Roedema told a judge “he is depressed, paranoid, sleeping poorly and has lost 30 pounds since beginning his part-time jail sentence”. I imagine, Elijah’s mother has been sleeping poorly for four years. He claims jail is too tough? I’m sure it’s not half as tough, as what he subjected Elijah McLean to.

    Both of the paramedics were found guilty for their part in the administration of ketamine to Elijah McClain. Peter Cichuniec, the EMT who estimated Elijah’s weight, and authorized the administration of the drug, was convicted of criminally negligent homicide, and “second-degree unlawful administration of drugs”. The other, Jeremy Cooper was convicted, only of criminally negligent homicide, and sentenced to 14 months of work-release, four years probation and 100 hours of community service. Peter Cichuniec, was sentenced to the minimum, five years in prison.

    Officer Woodyard, the first on the scene, was acquitted of all charges and, essentially “paid” to leave the Aurora Colorado Police Department. After joining the force in 2016, and being acquitted after his trial, Woodyard initially said he planned to return to the department. In January of this year, he resigned instead, and was paid almost a half million dollars by the city.

    In public records obtained by the Denver Post, “following his acquittal and resignation”, he was paid a total of $429,895.51 by the city of Aurora.
    According to the documents obtained by the Post, “the money paid to Woodyard came in three payments”:
    ⦁ Nov. 22 – $212,546.04 in back pay accrued while he was suspended;
    ⦁ Jan. 19 – $200,000 for “backpay, accrued leave, and other consideration” – including an agreement not to pursue any claims against the city;
    ⦁ Jan. 19 – $17,349.47 to cover the cost of one year of medical coverage.

    If the group of five men that did this, where civilians, what do you think there penalty would have been? Nathan Woodyard, served no time, and is now over $400,000 richer, in part, because of his involvement in the incident. The others were given a slap on the hand, when considering the magnitude of the crime. According to other investigations, Aurora Colorado’s pattern of policing, has raised concerns of implicit bias towards those with invisible disabilities, POC and other marginalized people. In so many ways this is a travesty of justice to so many. Elijah McClain suffered during the event, and for days before his passing. His family, is still suffering. Justice for Elijah McClain? Balderdash!

    It’s reported that over 1100 people were killed by police in 2022, 1,329 in 2023, according to “”Mapping Police Violence”. Other reports say, “half of people killed by police have a disability”. It seems to be a dangerous time if someone decides another is different, especially if that someone has authority. People with disabilities are not a “new thing”, and represent about 26% of the US population. Why should it be necessary to teach those sworn to “”serve and protect””, basics like: understanding, accommodation, proper communication, and preservation of dignity, when it comes to invisible disability? Can things like human decency, actually be taught with “”adequate training””?

    Considering Elijah and the story of Christian Glass, is it any wonder many individuals with invisible disabilities, are afraid to call police for help? How many such crimes are covered up or not reported? More importantly, why did so many have to suffer, before anyone heard them call… “”I’m just different. I’m just different, that’s all””.

    OutOfExile_IDR™ © 2023

    Photo of Memorial to Elijah McClain. Read Alt text for more.

    Elijah McClain’s last words: CW
    “I can’t breathe. I have my ID right here. My name is Elijah McClain. That’s my house. I was just going home. I’m an introvert. I’m just different. That’s all. I’m so sorry. I have no gun. I don’t do that stuff. I don’t do any fighting. Why are you attacking me? I don’t even kill flies! I don’t eat meat! I don’t judge people, I don’t judge people who do eat meat. Forgive me. All I was trying to do was become better. I will do it. I will do anything. Sacrifice my identity, I’ll do it. You all are phenomenal. You are beautiful and I love you. Try to forgive me. I’m a mood Gemini. I’m sorry. I’m so sorry. Ow, that really hurt! You are all very strong. Teamwork makes the dream work. [after vomiting] Oh, I’m sorry, I wasn’t trying to do that. I just can’t breathe correctly.”

    OutOfExile_IDR™ – © 2024

    All writings, images, graphics, logos, and other content by: OutOfExile_IDR™ unless credited otherwise.

    All Rights Reserved. No Scraping.

    Source Links:

    Half of People Killed by Police Have a Disability: https://www.nbcnews.com/news/us-news/half-people-killed-police-suffer-mental-disability-report-n538371

    Six minute video analysis of Elijah McClain’s: https://www.youtube.com/watch?v=dGlHMZQtO7U

    Full 3 hour video including multiple officers body cam footage and Elijah McClain’s mother attempting to get answers: https://www.youtube.com/watch?v=q5NcyePEOJ8

    Timeline, analysis of body cam footage in Elijah McClain case: https://www.9news.com/article/news/local/elijah-mcclain/elijah-mcclain-body-camera-video-analysis-timeline/73-68537e78-add9-4e66-97c6-a22c080b1e1e

    Police mock the death of Elijah McClain: https://www.youtube.com/watch?v=giOB3LJj_g0

    Accused killers plead not guilty: https://www.youtube.com/watch?v=TUU-xE-uouQ

    Protesters targeted: https://www.thecut.com/2021/10/how-aurora-colorado-police-cover-up-misconduct-and-brutality.html

    “Hundreds of Officers That Have Been Labeled Liars. Some Still Help Send People to Prison”: https://www.usatoday.com/in-depth/news/investigations/2019/10/14/brady-lists-police-officers-dishonest-corrupt-still-testify-investigation-database/2233386001/

    Aurora officer paid “to leave the force: https://www.9news.com/article/news/local/aurora-officer-nathan-woodyard-resignation-agreement-acquitted-elijah-mcclain-death/73-29dfd591-c3c1-4b79-a5d5-64f7441ed7f8

    Example of Aurora PD’s racial profiling: https://sentinelcolorado.com/metro/police-courts/aurora-cop-who-shot-boy-14-part-of-unlawful-search-settlement-of-black-man/

    Legal analysis by Wolfberg and Wirth: https://www.ems1.com/legal/articles/legal-analysis-what-the-paramedic-criminal-charges-in-the-elijah-mcclain-case-mean-for-ems-wIPxkOn0Hn4ToKVk/

    Wikipedia page containing a link to the 911 call and police body camera: https://en.wikipedia.org/wiki/Death_of_Elijah_McClain

    https://outofexileidr.vivaldi.net/2024/08/31/the-death-of-elijah-mcclain-five-years-ago-today-how-first-responders-killed-elijah-mcclain/

    #BLM #ElijahMcClain #EndAbleism #Hero #IMDifferent #ICantBreathe #Justice4Elijah #SocialJustice #SocialJusticeone #StopKillingUs #Writing #ActuallyAutistic #disability #I #JusticeForElijahMcClain #NoJusticeNoPeace

  11. In a complete departure from my usual meanderings, I’m going to present an in-depth comparative review of eight iOS Mastodon/Fediverse apps. (Video: ‘What is the Fediverse?’) Given that I’m not alone in moving to Mastodon from Twitter at the moment (whether tentatively or bridge-burningly), I’ll also draw comparisons with the official iOS Twitter app, noting points of comfort and familiarity as well as things that might jar a little at first. But please bear in mind that Mastodon isn’t meant to be a clone of Twitter. I’ve chosen these eight apps in particular simply on the basis that they have a rating of 3 stars (out of 5) or higher in the iPhone App Store (in fact, all of them are rated 4–5 stars):

    *link to App Store

    Skip to the end for a tl;dr summary. (This is a very long post.)

    Initial considerationsHow much does it cost?

    First things first, you might want to consider how much you’re willing to spend. Fortunately, only Mast (£2.49, €2.99) and Toot! (£3.49, €3.99) will cost you actual money (so you could, like me, try all eight apps for £5.98). If you decide you like an app, and you want to (and have the wherewithal to) support the developer, the two paid apps along with Mercury and Tootle have in-app purchase options for tipping them (with a small amount of bonus functionality unlocked in the case of Mercury).

    Will it still be around next year?

    Before getting too comfortable with an app, you might also want to consider how likely it is to continue being maintained. All these apps work on the latest iPhones, but the timeline below shows that some haven’t been updated for a while, including the venerable Tootle, which was the only one of these I had used until this month! (I first toyed with Mastodon in 2018, when none of the others were around – including the official Mastodon app, which is actually the baby of the bunch.) Having said that, if you do have to move from one app to another at some point in the future, it should be at most a minor irritation, as long as you don’t make heavy use of app-specific features that store data on your device (such as Mast’s saved hashtags, or draft toots in those apps that support them).

    Timeline showing periods from the first version released on the App Store to the most recentAnd what about other platforms, btw?

    Although I’m talking about iOS (i.e. iPhone apps), all of these also work on iPad. (Mercury works in iPhone-emulation mode.) Beyond the Apple ecosystem, both the official Mastodon app and Fedi are available on Android – but other apps such as Tusky seem to be more popular there. On the desktop, there are a few apps available (including a macOS version of Mast, which felt unpolished and buggy when I tried it). The standard multi-column Mastodon web interface – perhaps tailored slightly by your chosen instance – is probably the nicest way to connect to the social network when you have the luxury of a large screen.

    First impressions

    Never judge a book by its cover, or an app by its icon. That doesn’t mean I’ll put up with ugliness! Fedi gives us a zero-effort, bland, corporate ‘productivity app’ icon, so it’s not winning any prizes here (disclaimer: there are no actual prizes), and nor is tooot, with its oops-I-forgot-to-replace-the-placeholder look. The icon for the official Mastodon app looks ok, perhaps a little too like the official Twitter app’s icon, using a flat white logo on a blue background, which would be the same colour as Twitter’s if it weren’t for the addition of a slight gradient. (And it’s obviously an elephant rather than a bird.) Mercury’s icon captures, um, the blobbiness of liquid metal. Ok, that’s a charitable guess. It is one of four apps, though, that allow you to choose variations on the theme, and this redeems it (slightly). Two of the others are Mast and Metatext, both of which are reasonably smart elephant logotypes. That leaves Tootle, whose cute little elephant looks a little weary, but then it is relatively long in the tusk. The winner for me, another one with the option of picking your own variant, is Toot!’s cheery cartoon mastodon! Social media should be fun – but if you’ve come from Twitter, you can be excused for having forgotten that!

    Getting started

    That’s enough of a preamble. Although I’m going to focus mainly on what I think are the things you’ll want to do most of the time you’re using an app, it’s worth looking briefly at how easy it is to get started, including setting up an account on an instance, and connecting to an existing account.

    (If I’d thought of this in advance, I’d have noted what it was like at the time. Now I’ve had to log out of both my Mastodon accounts on all eight apps to remind myself! It took me a while to work out that I had to do a firm press on an account to bring up the option to remove it in Mast. And I actually had to delete and reinstall both Mast and Toot! because they insisted – not so unreasonably in normal use – on remaining logged in to at least one account!)

    On opening the apps for the first time, you’ll be greeted with varying levels of friendliness and/or intimidation.

    FediMastMastodonMercuryMetatexttoootToot!Tootle Initial screens for the eight apps (following any splash screens)

    Metatext and Toot! both introduce the brand-new user to Mastodon. The first app, albeit after an unnecessarily laboured fade-in of the welcome screen, has a short embedded YouTube video (produced by Mastodon). The second app has a brief text introduction, as well as a link at the bottom of the screen that will pop you out of the app and take you to that very same video on YouTube.

    Mercury’s ‘Find and join a mastodon instance’ link actually links to Mastodon’s home page – which slightly unfortunately also prompts you to open the official app if you have it installed! I suppose you will eventually find lists of instances once you’ve read or skimmed over the introductory blurb.

    The official Mastodon app’s ‘Get Started’ button (the first of only two on that screen) will take you to a screen in which you can choose from lists of instances, sorted thematically, and there’s a little explanation there too.

    Fedi appears to suggest the instance fedi.app, but if you accept that default, and tap any of the three buttons, you’ll get a horrible red error box at the top of the screen – with raw HTML code for the first two buttons! So don’t do that! (It does go away, but it doesn’t inspire confidence.) If you ask for help choosing an instance, the lack of polish continues to shine through (um, no, that’s not quite right). You’re landed on a GitHub documentation page! (GitHub is a website used by software developers.) When you select the text box, you do get a list of suggestions. The documentation reveals that the developers of Fedi favour Pleroma (an alternative to Mastodon), and the instances they recommend skew in that direction, including some very nasty ones you may have heard of, such as Gab and Spinster (which most instances in the Fediverse block, as indeed do some apps themselves).

    The other apps – Mast, tooot and Tootle – don’t offer any explicit guidance on what to do, but assume you know you want to connect to an instance (you do, by the way!). tooot has some mystery boxes labeled ‘Name’, ‘Users’, ‘Toots’ and ‘Universes’, whose purpose will only become clear when you type an instance URL into the text field. It also slightly oddly offers app settings at this point. Worst for shaking confidence is the wonky English: ‘Logging in process uses system broswer [sic] that, your account information won’t be visible to tooot app. Read more privacy policy’.

    A note on terminology

    There are a number of different names for things in the Mastodon world, and the apps vary in their choice of terms. (Some even have settings that let you choose the ones you prefer.) The instances that you can sign up to are also known as servers. Toots (the Mastodon equivalent of tweets on Twitter) are also known more prosaically as posts, and officially as statuses. Toots can be favourited or liked (with stars, hearts or neither). They can also be boosted, reposted or reblogged (the equivalent of retweeting). A stream of toots is either a timeline or a feed. As on Twitter, you can have a profile pic, but these are sometimes called avatars (a term I prefer to avoid because of its appropriation from Hinduism).

    Screenreader accessibility (part 1)

    Before going any further, I should say that Toot! and Tootle are sadly likely to be unusable by low-vision users who rely on being able to increase the text size on their iPhones (rather than using screenreaders). Unfortunately, these apps don’t respect the settings on your phone, and don’t offer any way to change the font size within the app either. The developer of Toot! has known about this issue since 2018, but it clearly hasn’t been a priority to fix it.

    I’m not a screenreader user, but I have done just enough playing around with VoiceOver (the iPhone’s built-in screenreader) to have at least some idea of what’s useful. Or at least I can spot when app developers have done things really badly! But I haven’t explored every aspect of these apps using VoiceOver, and I can only give a hint of how accessible these apps are.

    The opening screens for Mercury, Metatext, Toot! and Tootle are all straightforwardly navigable from top to bottom using VoiceOver. Mastodon’s opening screen takes you straight to that ‘Get Started’ button. tooot’s opening screen works fine too, with the proviso that there’s no explanation of the mysterious labels beyond the ‘Login’ button (but these are as much of a mystery for those of us using the visual interface!).

    Mast’s opening screen is navigable, but unfortunately highlights several user interface elements that are hidden visually and intended not to be seen or active at this point. You need to skip past no fewer than seven invisible and unusable elements – five buttons, a heading and a list – to get to the ‘Instance name’ text field. Not great.

    Fedi’s VoiceOver support is haphazard from the start. On the opening screen, the label for that all-important instance text field is widely separated from the text field itself, and the app gives unnecessary description of a ‘screenshot’ before getting into the functionality. I did actually play with Fedi properly, using a couple of instances, but it didn’t have many redeeming qualities. I’m so unimpressed by the app that I don’t think it’s worth labouring descriptions of how well it behaves elsewhere. It is therefore eliminated at this stage. (I wasn’t planning to have elimination rounds, but the app forced my hand!)

    Signing up or logging in to an instance An instance’s login page

    I said a few paragraphs ago that I’d look briefly at this aspect, but it seems I don’t do briefly at the moment! Fortunately, all of the apps share the same sign-up/login process, as this is delegated to the instance’s login page (which generally looks more or less the same from instance to instance – I’ve only seen minor customisations like colour changes).

    If you haven’t already created an account on your chosen instance, you can choose the ‘Sign-up’ link here, which takes you to joinmastodon.org. Otherwise, you just need to enter your email address and password, and you’ll be asked to authorise the app to access your account. If you’ve set up two-factor authentication on your instance of choice, there may be another step here. And depending on the instance, you may also have to agree to abide by the instance’s rules.

    There are some app-dependent wrinkles (of course!).

    The official Mastodon app offers an alternative sign-up route, which happens if you tap the ‘Getting started’ button instead of the ‘Login’ button – here you are presented with the instance’s rules, and supply your display name, chosen username, email address and password within the app.

    In Metatext, after you’ve typed the name of an instance, the ‘Log in’ button may be joined by another button, depending on the instance: ‘Request an invite’, in the case of an instance that requires you to be invited; ‘Browse’, in the case of instance that allows public browsing of its Local timeline and users; or ‘Join’, in the case of instance you can’t browse publicly but can sign up to without being invited.

    Tootle also allows you to browse publicly accessible instances, using it’s ‘Take a look’ link, though this is unfortunately always active, and just pops up an unhelpful ‘Oops, something is wrong’ error when you try to look at an instance that doesn’t allow public browsing.

    Toot! is very helpful in some ways, but its sign-up/login process feels a little tortuous at first (or at least it works very differently from the other apps). When you pick an instance, you are shown the instance’s rules and have to say you agree with them before proceeding. If the instance you have chosen allows public browsing, you then see its Local timeline, and can switch to its Federated timeline. (I’ll explain these later.) If on the other hand the instance you have chosen doesn’t allow public browsing, you’ll see a screen labeled ‘Local timeline’, but with no toots and an unhelpful message about ‘errors when loading’. In either case, if you want to sign up or log in, you need to take an extra step: the simplest way is to tap the dimmed ‘Home’, ‘Toot’ or ‘Notifications’ button at the bottom of the screen.

    More than one instance?

    All the apps reviewed support accounts on multiple instances. In four of them, to add an instance, you start with the same action used to switch between your instances. In Mastodon, Mercury or tooot, press and hold the ‘Profile’ button or profile picture at the bottom of the screen. In Tootle, tap the display name/instance name at the top of the screen.

    In Metatext, you switch instances by pressing and holding the profile picture at the top, but to add a new one, you need to tap it instead and then choose ‘Accounts’. In Mast, you switch instances similarly by pressing and holding the ‘Profile’ button at the bottom, but adding a new one is a little more convoluted: tap the ‘Profile’ button, tap the cog at the top left, scroll down and choose ‘Accounts’.

    Toot! is a little different. To add an instance, tap the ‘…’ at the top right, and choose ‘Servers’. But to switch instances, use the instance switcher button at the bottom right: either press and hold, or swipe left or right for a nice rotating transition between screens for different instances.

    Both Metatext and Toot! allow you to treat a publicly browsable instance the same way as the instances you’re signed up to, as far as it makes sense to do that, which could be quite useful. Tootle doesn’t quite treat read-only instances on an equal footing, but allows you to add ‘tabs’ for such instances at the bottom of the screen. Mast also allows you to add what it calls ‘instance timelines’, hidden away under ‘Explore’.

    Exploring the FediverseTimelines

    There are three basic timelines in Mastodon:

    • Home. This is where you’ll see public toots (and possibly other kinds of posts) of all the people you follow, in the order that they’re posted. It’s more like Twitter’s ‘Latest tweets’ than its opaquely generated ‘Home’ view. (Note: the Home timeline doesn’t exist if you’re browsing a publicly browsable instance without logging in.)
    • Local. Here you can see all the public toots on your instance, again in chronological order.
    • Federated. This timeline is like the Local timeline except that instead of just the public toots on your instance, it includes the public toots on all instances that your instance is currently federated with. Unless you’ve chosen a very isolated instance, this is a fast-flowing stream of toots.

    If you have just signed up on an instance, your Home timeline will be dispiritingly empty. No algorithmically suggested people to follow or anything like that. You’re in charge here! So you probably want to start by looking through your Local timeline – or the Federated timeline if you’re feeling brave!

    In Mast, the three timelines are available under ‘Feed’, and are labelled with tabs across the top of the screen as ‘Home’, ‘Local’ and ‘All’ (i.e. Federated).

    Metatext works similarly, except that the button at the bottom is labelled ‘Timelines’ rather than ‘Feed’, and the Federated tab is labelled ‘Federated’. It’s also nice that you can swipe left and right between the three timelines.

    tooot devotes two buttons at the bottom to timelines: the house button is for the Home timeline, labelled ‘Following’, while the globe button is for a view with two tabs, ‘Federated’ and ‘Local’, and again you can swipe between them.

    Toot! also reserves the house button for the Home timeline. To access the Local or Federated timeline, tap the instance switcher. You can choose between the two at the top of the screen.

    Tootle has separate buttons on its configurable tab bar for the three timelines.

    In Mercury, you switch between timelines by tapping on the ‘Timelines’ button, which reveals a slide-in menu, including the three timelines, and also a lot of other things that aren’t really timelines.

    It may surprise you to find that there is no Federated timeline in the official Mastodon app, and even the Local timeline is hidden away under search, disguised as ‘Community’. Lead developer Eugen Rochko (who also runs the large instance mastodon.social) has tried to justify this decision, but I’m not at all convinced, and for me it counts as this app’s biggest negative point.

    Direct message timelines

    Direct messages are really just toots in Mastodon. So they appear in your Home timeline along with everything else. Their distinguishing feature is simply that they have their visibility set to direct (as opposed to public, unlisted or followers). This means they are visible only to people mentioned in them.

    Nevertheless, most of the apps have a facility to show you just those toots with this property. Mast and Metatext have a ‘Messages’ button, Mercury has a ‘Conversations’ button, and Tootle has a ‘DM’ button. Toot! has a ‘Direct messages’ view accessible from the ‘…’ menu at the top of the screen.

    Otherwise, direct messages are highlighted in various ways in your Home timeline: Mercury and tooot use an envelope icon, and change the boost button to a padlock and a subtly dimmed boost icon respectively (since you can’t boost direct messages). Metatext and Tootle show their envelope icon in place of the boost button. Toot!, by default, styles direct messages in conversation bubbles, and omits the boost button. It also notifies you of new direct messages using a little profile pic circle at the top right.

    Mast uses a paper aeroplane icon for direct messages, but Mastodon doesn’t distinguish them from toots with other visibilities at all. Both these apps confusingly retain an active boost button. In Mastodon, this appears to work momentarily and is then immediately undone, but since you can’t tell otherwise that the toot is a direct message, this could be very frustrating. In Mast, it also seems to work, and updates the number of boosts to 1. But this is only a display bug (and unboosting straightaway leads to the number of boosts being −1). If you go to a different view and return, everything is fine.

    By the way, Mast gets completely hung up if you send a direct message without any mentions – though why you’d do that only I can guess!

    Screenreader accessibility (part 2)

    Now, I have to concede ignorance about how people actually use screenreaders to navigate complex structures like Mastodon (or Twitter) timelines. So I may have approached this somewhat idiosyncratically! For one thing, I only tried the flat navigation style, whereas I can imagine grouped navigation being better in some situations. I did switch to the container rotor to move between major elements of the user interface with vertical swipes. Before I tried this, I had a lot of difficulty getting around parts of all the apps.

    As a baseline, I compared the apps’ behaviour when selecting a toot in a timeline and letting VoiceOver ‘read all’ (default: two-finger swipe down), without considering how easy it was to select that first toot. Mastodon, Metatext and tooot all did a good job, with about the right amount of detail for an overview. Toot! felt ever-so-slightly verbose at times, but was basically fine. Mercury gave slightly more information than appeared on screen, and didn’t quite keep its visual and audible timelines in sync in some minor respects. Mast would have been ok, except that content warnings were completely ignored, which feels like a major failing. Tootle was fine with content warnings, which it just read as labelled buttons, but unfortunately it read everything else on the screen as well, which made browsing the timeline in this way very tedious.

    Navigating through the timeline, element by element, Toot!, tooot and Tootle (from best to worst) all fared poorly. The container rotor didn’t often help, as the heading, timeline and button bar are not properly connected in the apps, and I couldn’t say how easy they would be to use at all for someone who relies on a screenreader. (I couldn’t access the button bar in any of these apps without actually tapping on it.)

    Mast had one or two peculiarities. Saying how old a toot was, the ‘h’ for hours was read as ‘aitch’, the ‘m’ for minutes as ‘metres’, and the ‘s’ for seconds as a plural ending! Content warnings, as noted before, were not treated correctly, with VoiceOver simply diving in and reading the visually hidden content.

    In Mastodon, content warnings did at least kept stuff hidden – just a little too well though!

    Mercury was really awkward to navigate consistently – I couldn’t really work out the logic at all, which was very frustrating. Sensitive content was sometimes read out, while content warnings clung onto their secrets a little too tenaciously.

    Some useful pieces of information, such as indications that toots are direct messages or have some other non-public visibility, seem to be omitted from VoiceOver support in most apps. Metatext fared better than most here.

    Multilingual support is frankly appalling across all the apps here, and I suspect this is a longstanding problem with VoiceOver on iOS that simply hasn’t been addressed. What is frustrating is that the other screen-reading tool in iOS (‘Speak Selection’/‘Speak Screen’ in the ‘Spoken Content’ accessibility options) does a pretty good job of identifying languages and reading toots in a timeline accordingly. That tool, however, isn’t interactive, and simply reads until you tell it to stop. This isn’t just an issue with Mastodon apps, but equally with the Twitter app, and indeed any app that doesn’t have content explicitly marked for language (which would be normal good practice on the web).

    In summary, VoiceOver accessibility isn’t great, with all the apps having failings in this area. I hope the developers will pay more attention to accessibility in future releases. I was going to say that the web interface is probably a better bet in the meantime, but I just tried it and it seems even worse! 🙁

    Searching and browsing

    Besides connecting with others on your instance’s Local and Federated timelines (which, of course, you can’t do if you’re using Mastodon!), you’ll probably want to explore further afield, at least at first.

    All the apps have a search function, accessed in most cases using the familiar magnifying glass button (except in Toot!, where you need to tap ‘…’ and choose ‘Search’). If you enter a search term, you’ll usually get matches of people (the term is found in profiles in federated instances), hashtags (the term is found in hashtags that have been used at some point) and toots (the term is found in toots in the Federated timeline). You can choose between these using tabs in Mastodon, Mercury and Metatext. (In Mercury, you need to tap ‘search’ separately for each tab, which is slightly irritating.) Mastodon and Metatext also have an ‘All’ tab, which shows a selection of search results from each category, and this is essentially what tooot and Toot! show in their tab-free search results screens.

    For hashtag results, Metatext and Toot! display little recent-usage graphs alongside each hashtag found.

    In Mast, the search function in the current release is almost completely broken: after tapping the second magnifying glass, or pressing and holding the first, you get to the search field. It has tabs for ‘Toots’ and ‘Users’, but only manages to display two or three toots in an unscrollable list. If you tap ‘Users’, the search closes!

    Tootle’s search is a little different, with no ‘All’ tab, but tabs (across the bottom) labelled ‘MyToot’, ‘Hashtag’, ‘Account’ and ‘Instance’. The middle two are self-explanatory, as is the last (though this addition doesn’t seem very useful). As far as I can tell ‘MyToot’ finds the search term in toots that you have posted, boosted or favourited.

    Besides search functionality on their ‘Explore’ screens, Mast and Metatext let you browse profile directories for your instance – and in Mast, for instances federated to it too. This is the place to find the Local timeline in Mastodon too (‘Communities’).

    Mastodon, Mast and Mercury also have some slightly opaque additional features on their ‘Explore’ screens, including what seem to me to be un-Fediverse-like suggestions of accounts to follow and news items. I haven’t explored these further.

    Profiles

    There’s not a huge amount of difference in the usability of user profiles (and if you’re anything like me, you’ll spend a lot more time focusing on toots and threads than on people’s profiles). Coming from Twitter, most of the apps’ profile views will look fairly familiar, with a header image at the top, and a profile pic in a little frame beside the user’s display name and username. All the apps except Mercury, tooot and Tootle will enlarge the profile pic or header image if you tap on it, just as in the Twitter app. Mercury doesn’t show a header image when you’re viewing your own profile (but you can still edit it).

    Some of the apps use a square frame rather than the Twitter-like round frame for the profile pic, and the header image varies from app to app in how it is cropped, so there’s no one-size-fits-all approach that will work here. Tootle breaks the mould visually here (or perhaps it’s fairer to say that it predates the mould!), with (a variable part of) the header image used as a background for the profile pic and the entire bio. This does unfortunately render some bios extremely hard to read. (Note that bios can be up to 500 characters in length, compared to Twitter’s 160.)

    Profile information

    Besides the bio, there may be a table of up to four rows containing user-defined information, possibly including links to websites, which can be ‘verified’ if they point back at the Mastodon account. This table usually appears just above or below the bio. But Mastodon hides it under an ‘About’ tab alongside ‘Posts’, ‘Posts and replies’ and ‘Media’). And Mast hides the individual rows of the table under its ‘Links’ menu item. Tootle doesn’t display this information at all. Of the apps that do, all but Mast and Mastodon indicate the ‘verified’ status of any web links. Only Toot! tells you when the link was verified.

    All the apps have some way of showing you if you’re following or requesting to follow the person, usually doubling up as the button to follow or request to follow them. Toot! is the exception: it states separately whether you’re following the person, being followed by them, or following each other, which is actually quite helpful. Mastodon and Mercury don’t show you whether or not the person is following you (though if they are, they will appear in your list of followers). Metatext only tells you if a person is following you, not if they aren’t.

    All the apps display the number of accounts the person follows, and the number of people following the account. All but Metatext and Toot! also display the total number of toots.

    Only three of the apps – Mast, Metatext and tooot – show the date the person signed up to the instance. Mast is slightly overzealous in reporting the time as well, which isn’t actually recorded and always comes out as 00:00:00 UTC (GMT)!

    If you have endorsed/featured a user (something you can only do in Mast or Toot!), you can see the endorsement status in their profile in Toot! This seems of limited use!

    Most of the apps use a very similar layout for your own profile and other people’s profiles (apart from things which only make sense in one context or the other). tooot is the odd one out here: for your own profile, instead of the bio and other information, it gives access to various lists/timelines and settings.

    Beneath the profile information, the apps display the user’s toots, most recent first (except in Mercury, where you have to tap on the ‘Toots’ option to view them on a separate screen). Any pinned tweets come before other tweets, except in Mast, Mastodon and Mercury. In Mast, there is a ‘Pinned’ menu item you can use to see these, which does feel a little awkward and counter to the idea of pinning things for everyone to notice.

    Mastodon, Metatext and Toot by default omit toots that are replies to other toots, and have a separate toots-and-replies tab for all toots. Mastodon and Metatext also have a tab for toots containing media. Mast and Mercury have separate galleries of recent media below the basic profile information, with links to the toots containing them.

    Interacting with a profile

    The thing you’re most likely to want to do after checking out someone’s profile is follow them. And all the apps have some kind of follow button (which may request a follow if the account is set to require approval of followers). Tootle’s follow button disappears after use. To unfollow, you need to use a menu item instead. In all the other apps, the follow button turns into an unfollow button.

    Although mentions are just toots that include a person’s username (beginning with @), and direct messages are just mentions with visibility set to direct, all the apps conveniently offer some means of doing one or both of these from either a button or menu item on a person’s profile. Offering both feels like overkill though, as you can easily convert either into the other by changing the visibility – public or direct – while composing the toot.

    Profiles in Mercury and Metatext have a notification bell that you can tap presumably to be notified whenever that person toots, though I haven’t tested this.

    Almost all the apps offer menu access to items that will be familiar from Twitter, principally mute, block, report and share. (Mercury doesn’t include block or report. Tootle doesn’t include report.) Reports go to the administrator of the instance the user’s account is on. Hopefully you won’t need to report or block users very often.

    If you use an instance’s web interface, you can add your own private notes to other people’s profiles. Unfortunately, such notes can be neither created nor viewed in any of the apps here. That’s a shame, as you could use private notes to remind yourself why you followed – or blocked – someone, say.

    Toots (and other posts)Interacting with timelines

    I’ll use the word timeline loosely here to include not only the chronologically ordered Home, Local and Federated timelines, but also lists of favourites and bookmarks, and lists of toots returned as the result of a search, or those under a profile. (But for now I’m only talking about lists of toots, so I’m not counting lists of notifications, hashtags etc.)

    MastMastodonMercuryMetatexttoootToot!Tootle The seven apps showing part of my personal timeline of toots

    All the apps display timelines in a way that will feel familiar to Twitter users, with newer toots above older ones. Tootle, however, also (consistently, but confusingly) carries this over to its display of threads, with replies above original toots. The remaining apps follow the convention used in Twitter, and have replies in chronological order below original toots in the display of conversations/threads.

    Mast and Mercury reduce visual clutter a little by eliminating the action buttons beneath the toots in this view. In Mast, these become visible in the ‘Detail’ view shown when you tap on a toot. In Mercury, they pop up beneath the toot when you tap on it. Toot!, as elsewhere in its interface, uses small caps text rather than icons, which looks quite stylish in my opinion.

    Moving through a timeline is completely intuitive, with scrolling just as you’d expect in an iPhone app. Tootle is slightly frustrating though, as the timeline comes to a disappointingly abrupt halt when you flick-scroll up or down. It feels as though it could do with an oil!

    As in the Twitter app, a timeline can sometimes have gaps in it, which you can fill in using a load-missing-toots button that sits in the gap. This button in Metatext or Toot! shows, by way of little arrows that rotate as you scroll the timeline, where the missing toots will be placed – either above the toot that is below the gap, or below the toot that is above the gap. This is incredibly helpful in reducing disorientation.

    A Toot! convo

    In most of the apps, tapping on an otherwise inactive part of a toot takes you to a detail view where you can see how the toot is connected to other toots – what it is in reply to, if anything, and any replies to it. Here is where toots with unlisted visibility show up, when they would be hidden from the Local timeline for instance.

    Mercury is the exception: as just noted, tapping on a toot brings up the hidden action buttons for the toot. You can then tap the conversation button to see the detail view (which has ‘replies’ and ‘thread’ subviews). As an alternative to using these buttons, in Mercury you can use swipe gestures: a short swipe to the left is the equivalent to tapping the conversation button; a long swipe to the left is equivalent to tapping on the favourite button; a short swipe to the right is equivalent to tapping on the reply button; and a long swipe to the right is equivalent to tapping on the boost button.

    These swipe gestures felt quite handy when I first came across them, but in many ways I’d rather see swipe to the right used as an equivalent to the back button, as it is in the Twitter app for instance. None of the apps do this.

    The way connections between toots are indicated in the detail view for a toot varies from app to app. Toot!’s indication of a conversation is particularly innovative, using (by default coloured) vertical connecting lines linking the profile pics beside the toots. Fragments of these lines are also visible above and below profile pics in a timeline, to indicate that the toot is in reply to something or has replies. Not quite sure yet if it’s just a gimmick, or something that’s actually useful. But there’s much about Toot! that feels playful, and makes using it feel comfortable and enjoyable.

    Viewing and listening to media

    There can be up to four images in a toot. Alternatively, there can be audio (with an optional thumbnail image), video with audio, or silent video (such as an animated GIF).

    Images, as shown in the screenshots, are dealt with in different ways by the apps, especially when there is more than one in a toot, and I’m not sure I could argue that any approach is better than the others. In Mercury, Metatext, Toot! and Tootle, alt text is displayed beneath (or sometimes partly overlaying) an image when it is enlarged. In Mast, you can only see the alt text by long-pressing on an image in the context of a toot (not when it is enlarged). As far as I can tell, Mastodon and tooot don’t display alt text.

    Audio in toots can be played by all the apps except Mastodon and Tootle. Tootle does, however, show the thumbnail image! Only tooot shows the image and plays the audio. In Mast and Mercury, note that there is no sound when your iPhone is in silent mode. (The same applies to videos with audio in those two apps.) Mast and Metatext have standard controls for moving to different parts of the audio in their full-screen audio plays. Mercury lets you play audio within the timeline, and has a slidable bar showing how far through the audio you are.

    Silent videos in a timeline play automatically on a loop in all the apps except Mast and Tootle. Tapping on a silent video in any of the apps enlarges it to the full screen width. Mast and Tootle use the standard iOS player for this, these two apps alone giving you controls for moving backwards and forwards through a silent video.

    Only Metatext has silent auto-play in the timeline for video with audio, and it moves particularly smoothly between full screen and in-timeline views for both kinds of video. Toot! also has fluid transitions for video, but doesn’t keep the place between different views. All the apps except Toot! use the standard iOS player for video with audio.

    Support for alt text with audio and video is patchier than for images (but I haven’t checked whether it is available in VoiceOver in either case). Metatext displays alt text for silent video only. Tootle shows the alt text for audio (for which it only displays the thumbnail!). Only Toot! displays alt text (in full screen) for audio and both kinds of video.

    Mastodon allows media to be marked as sensitive, so that it is hidden or (in the case of images) blurred by default. And it also allows toots to be flagged with a content warning, hiding the main text. In Mast, a toot with a content warning takes up as much screen space as it would if the whole toot were there: it is effectively covered by a labelled black rectangle. (This probably explains why the screenreader reads the covered text anyway.) A similar approach (but without screenreader issues as far as I’m aware) is taken by Mastodon, Mercury and Toot!, but the other apps use a variable amount of screen space for a toot depending on whether the content is shown or hidden. Metatext’s buttons for content warnings feel very intrusive, dominating the timeline. All the apps except Mast allow you to hide material again after revealing it if you wish.

    Interacting with toots

    Sometimes you’ll come across toots in languages that you don’t understand. Only Mast offers anything like the convenience of Twitter’s machine-translation option. I’m not sure what it uses behind the scenes, but it seems effective, and readily copes with toots that switch languages. (It can also translate bios in profiles.) Mercury offers a translate option for toots, but this opens a web page in Safari, with the text being provided to Russian search engine Yandex, which typically tries to translate the text into Russian in the first place! If the text contains an apostrophe, only the text before this is copied to the translation site. In Mastodon, Metatext and Tootle, you can select some text (e.g. in a toot in detail view) and use the iOS translate option. This is a little clunky, but better than nothing. tooot and Toot! only allow you to copy the whole text of a toot, which you could then paste into the translation tool of your choice. Not exactly handy though.

    All the apps have reply, boost and favourite buttons, which work pretty much as you’d expect. Metatext, Toot! and Tootle’s buttons have a bonus feature: if you long-press them, you get a menu asking which account you’d like to use to reply, boost or favourite. This is extremely convenient if you have more than one account. And in Toot!, you get the same menu when you tap on a button if you’re viewing an instance that you’re not logged in to.

    Composing toots and threads

    The toot buttons in tooot, Toot! and Tootle sit a little incongruously on the bar at the bottom of the screen (the other buttons there being for different views within the app rather than actions). Toot!’s button uniquely pops up a menu asking if you’d like to start with text, an existing image, or a photo taken using your phone’s camera. Given that most of us probably start with text most of the time, this feels like an unneeded extra step on the way to composing a toot. A minor quibble though. Mast, Mastodon and Mercury all have their toot buttons in the top right corner, while Metatext’s hovers over the bottom right corner, but not right at the bottom.

    Whether you are launching a completely fresh toot out of the blue or replying to an existing one makes little difference at this stage, except that replies are usually pre-filled with mentions of the person or people you’re replying to (not in Mast). All the apps have a box for you to type, paste or speak into. They all show either the number of characters you’ve used so far or the number remaining of the maximum 500. (I believe some instances allow 1000 characters here.) And all except Tootle have some way of indicating when you’ve gone over the limit. That’s because in Tootle, you simply can’t exceed the limit. If you’re typing, it won’t accept another character beyond the 500th. If pasting or dictating text would take you over the limit, none of what you’ve pasted or dictated is included.

    Tootle also counts characters a little differently: like Twitter, it treats emojis as two characters long (because their Unicode representations do in fact take more space to store). All the other apps (correctly for Mastodon) treat emojis as single characters. Tootle is joined by tooot in erroneously counting other Unicode characters according to their storage requirements.

    Emojos are instance-specific custom emojis, some animated, which are represented in toots by names between a pair of colons. These appear to take up whatever space their name takes up, and you can use them either by choosing them from an emojo picker, or by typing their name. Metatext handily offers visual autocompletion suggestions as you type, which can make finding the right emojo that much easier.

    Regardless of their actual length, all URLs in Mastodon are treated as if they were 23 characters long (and use of URL shorteners is officially discouraged). Mast, Mercury and Tootle all fail to count URLs correctly.

    Finally, on the topic of counting, only the local part of a username (e.g. the ‘@transponderings’ of ‘@[email protected]’) is supposed to count towards your character allowance. Only Mercury, tooot and Toot! get this right. All the apps, incidentally, offer completion suggestions as you type usernames. Tootle’s seems to have less coverage than the others though.

    While all the apps allow you to reply to toots you have written, only Metatext and Toot! let you write a thread of toots to be tooted more or less simultaneously. Writing long threads is arguably less useful on Mastodon than on Twitter, given that single toots can be much longer than tweets, but there may be times when it will be convenient. Unlike Twitter’s threads, a thread of your own toots can occur even in reply to someone else’s toot. Threads aren’t treated in a special way by Mastodon though: this is simply a convenience feature in these two apps.

    Adding media to toots

    Only Mast, Metatext and Toot! allow you to paste images in from elsewhere, but in all seven apps you can choose an image from your photo library. And when it comes to videos, only Toot! lets you paste a copied video into your toot. And none of the apps seem to let you paste audio!

    In fact, only Mast and Metatext support inclusion of audio in toots. And only Metatext lets you add alt text to audio, or mark audio as sensitive media. Neither app supports the full range of audio formats that Mastodon supports.

    Mast, Mastodon and Metatext allow you to browse for files containing images and video, whereas the other apps limit you to the Photos library on your iPhone.

    When it comes to video, Mercury, tooot and Toot! all work well. But I had trouble posting videos from both Mast (which was taking forever) and Mastodon (which didn’t seem to want me to toot while there was video attached). I didn’t investigate this any further. Mastodon (if only it worked!), Mercury and Toot! let you add alt text to video. Only tooot and Toot! let you mark video as sensitive media.

    Tooting miscellany

    Mastodon’s delete-and-redraft capability (introduced in June 2019) will be the envy of many people stuck on Twitter, as it’s very much like the oft-requested edit button. All the apps except Mastodon and Tootle support this.

    In most apps, you can set the visibility of a toot to public, unlisted, followers or direct. However, thanks to the developer’s stance on Local and Federated timelines, you can’t create unlisted toots in Mastodon. This is a pity, particularly as I have seen a number of people recommending that toots in a thread after the first should be unlisted, as a courtesy, so as not to clutter up other people’s timelines.

    All the apps allow you to add content warnings to toots (called spoilers in Mercury and tooot – and I suppose it makes sense to use them for both purposes).

    All the apps apart from Tootle also allow you to include polls in your toots. Unlike Twitter’s polls, these can be set up so respondents can pick more than one of the two to four options. However, the official Mastodon app only allows single-choice polls.

    Toots can be scheduled for later publication – they are uploaded to your instance immediately, but held back until a specified date/time. Of the apps reviewed, only Mast and Mercury support this.

    Cautionary notes

    When you are composing a toot (or a thread of toots) and tap elsewhere in the app, Mast, Mercury, tooot and Tootle all do what you’d expect if you’ve come from Twitter: they ask if you want to save your draft. In Mast, tooot and Tootle, there are buttons in the compose window to allow you to pick a draft from where you left off. In Mercury, you need to open the draft from the drafts ‘timeline’.

    None of the remaining apps have a draft facility. At least Mastodon warns you that you’re about to discard your draft. Metatext and Toot! unceremoniously discard whatever you’ve been writing, whether a single toot or perhaps even a lengthy thread! Be very careful!

    Mercury allows you to select video alongside other media from the Photos library. It will attempt to toot and erroneously state that it has succeeded. Mastodon also allows you to do select an untootable selection of media items, but it fails to make sense of the video in that case, before you toot. This is the only case I’ve come across where one of the apps has crashed though.

    Notifications

    Just two of the apps, as far as I can tell, show announcements from your instance admin. Because these are pretty rare, I’m not sure if they appear elsewhere in other apps. In Metatext, announcements are available at the top right of the main ‘Timelines’ view. In tooot, you can find them under your profile.

    Aside from these announcements and the special highlighting of new direct messages in Toot! that was noted earlier, each of the apps maintains a running list of notifications including mentions, follows (and follow requests), boosts, favourites and poll updates – yes, unlike in Twitter, you can be notified when a poll you’ve participated in ends!

    In all but one of the apps, you can see your notifications by tapping the bell icon at the bottom of the screen. In Mercury, the notifications view is found among the timelines that you select from in the list that slides in from the left.

    Mercury and Toot! have app settings to choose which kinds of notifications to receive. I presume (though I haven’t had the chance to test it) that these don’t only affect the notifications view, but also the live notifications that pop up if you’ve enabled them in your iPhone settings.

    In tooot, if you tap on the filter button, you can choose to view or not view each of six types of notification. Mast also has a filter button for six types of notification, but you can only choose to few one type or all.

    Mastodon, Metatext and Tootle offer a simple tabbed view giving a choice between all notifications and just mentions (also just follows, and ‘others’, in Tootle). Settings in each of these apps also offer finer control over the kinds of notifications you receive.

    Only Tootle takes things to the next level in terms of interaction between the in-app notifications and iPhone notifications, with independent control over how mentions, boosts, favourites and follows are brought to your attention both inside and outside the app.

    Neither the apps here nor the Twitter app do a particularly good job of showing you which notifications you have not yet seen. But one thing I miss from Twitter is the consolidation of notifications. It would be really good to know that 11 people had favourited a toot rather than knowing separately that A, B, C, … and K had favourited it. (On the flip side, the detail in Mastodon does mean that each favourite and boost has a time stamp, so you can tell when they all happened, which I suppose might be nice to know sometimes.)

    Privacy considerations

    According to the App Store, Mastodon, Metatext, Mercury and Toot! do not collect any data from app users. Zhiyuan Zheng, the developer of tooot, claims to collect ‘user content’, ‘identifiers’, ‘usage data’ and ‘diagnostics’ from app users, but ‘not linked to your identity’. (Oddly enough, tooot is also the only app to display a ‘privacy protection’ notice if you take a screenshot.) The developers of Mast and Tootle have not yet submitted privacy/data-handling policies to Apple.

    Other bits and bobs

    Five of the apps – Mast, Mercury, Metatext, tooot and Toot! – work in landscape orientation, though I’m unsure whether that’s ever going to be the best way to view Mastodon timelines. Still, if that’s your preference, it’s worth knowing.

    There are other (non-screenreader-related) accessibility options in the apps’ settings, which I haven’t had time to explore here.

    Three of the apps – Mast, Mastodon and Mercury – have additional menu items available from their icons on your iPhone’s home screen. From all three you can compose a toot, while two can take you straight to different timelines or other views. I’m not sure how useful this is.

    All the apps feature in the ubiquitous iOS share menu, and their built-in share functionality is adequate for occasional use. If you frequently find yourself wanting to share things with your followers when you’re in other apps though, you might want to consider Linky for Twitter and Mastodon (£3.49). This allows you to use the iOS share menu to share text, photos etc. on Mastodon or Twitter, with markup options and various other features, and posting to multiple accounts simultaneously if required. (It doesn’t currently allow you to provide alt text for images, so you need to use the delete-and-redraft option subsequently to add this.)

    Mast and Mercury both have iPhone widgets, but the former doesn’t really work, and the latter isn’t really particularly useful.

    Tootle has a little play/pause button, which lets you see toots scrolling in continuously or else leave the timeline where you put it. The difference may only be noticeable on the Federated timeline!

    Mastodon has an option to turn off animated emojis (there are a lot of instance-specific custom emojis in Mastodon), but it doesn’t work.

    Mast and Tootle displays dates and times in US format regardless of the settings on your iPhone.

    If you get fed up with looking at toots, Toot! has a couple of Easter eggs tucked away at the bottom of menus to keep you amused!

    Summary – tl;dr

    For various reasons, Fedi was eliminated from consideration at the Getting started stage (although I had also used it for a bit with my accounts, and didn’t find that it redeemed itself later on).

    Mast’s search functionality is completely broken at this point, and many other aspects of the app are buggy. The app developer appears to have left it to rust, which is disappointing, as it does have one or two nice touches, notably the inclusion of in-app translation of bios and toots. But I can’t really recommend using this app at present.

    The other six apps are all fairly straightforward to set up with accounts on one or more instances, most working in pretty much the same way. Metatext, Toot! and Tootle additionally let you have read-only access to publicly browsable instances alongside the instances you’ve signed up to.

    Mercury has the clunkiest timeline support, while Toot!’s is definitely the coolest (and Toot! generally feels most fun to use of all the apps in general, with some delightful transitions). The official Mastodon app bizarrely doesn’t have a Federated timeline view at all.

    While all apps support direct messages in your Home timeline, Mercury, Metatext, Toot! and Tootle also have filtered timelines that show just your direct messages.

    All the apps have issues with VoiceOver accessibility, but Mastodon and Metatext probably fared better than the others (with the proviso that I’m not a regular screenreader user).

    Scrolling through timelines of toots feels fairly comfortable in all apps, although Tootle can feel a little sluggish. Mercury has some nice swipe gestures, which reduce visual clutter in the timeline. Toot! shows conversation threading using (optionally colour-coded) connecting lines between toots.

    Media support varies greatly among the apps. Metatext and Toot! probably come out on top, on balance, with Toot! being the only app to show alt text for all media types, and Metatext being the only app that allows you to compose toots with audio attachments.

    Toot! and Tootle both make working with multiple instances easier, as you can reply, boost or favourite from another instance without leaving the instance you’re looking at.

    Toot! is the only app that counts characters in toots correctly according to Mastodon’s rules when you’re composing a toot.

    Both Metatext and Toot! have support for composing threads of toots. But beware: neither Metatext nor Toot will offer you any warning if you close a toot or thread you’re in the middle of composing. If you do that, it’s gone!

    All the apps except Mastodon and Tootle support the delete-and-redraft feature, basically an edit button. (It preserves text, attachments, alt text, polls, visibility settings – everything except any replies, favourites or boosts.)

    I’m not going to try to condense all this into a simple star rating, but I’ve personally found myself being most comfortable using Toot! and Metatext. Sadly, none of the apps do everything just right, and you may find the combination of features (and omissions and bugs) tips the balance in favour of one of the other apps. Some of the apps at least are being actively developed, so App Store reviews pointing out problems you’ve had might actually lead to changes being made.

    Corrections

    Thanks to Heinz Skunk for pointing out that Metatext also has long-press reply, boost and favourite buttons for using an alternative instance.

    Thanks to Avi for pointing out that Metatext does in fact indicate in their profile when someone is following you.

    Thanks to Anna e só for pointing out that Toot! is problematic for low-vision users, as it doesn’t respect the iPhone text-size settings. I found that Tootle has the same issue.

    Thanks to Camille for making me aware that Android’s Tusky app supports private notes on profiles. I had claimed before that none of the iOS apps did so because the Mastodon API didn’t support this. But I checked again and saw that it had been in the API since v3.2.0. (At the time of writing this review, Mastodon was at v3.5.2.)

    Behind the scenes: the making of this blog post

    As well as obtaining the eight apps (for the princely sum of £5.98, as noted), and tipping £0.89 for bonus functionality in one, I had to spend a fair bit of time researching the differences between the apps. I also invested in one or two additional tools to make the job of writing this a little easier. I used a 24-hour licence of Time.Graphics (£4.09) to make creating the timeline as hassle-free as possible – twice, in fact, because two of the apps were updated while I was writing it. And after a lot of searching (and skipping lots of web articles saying what I wanted to do wasn’t possible), I discovered KeyPad, a Mac app (£2.49 in-app purchase required) that lets me use the keyboard and trackpad on my MacBook to control my iPhone, meaning that, with a touch accessibility option turned on, videos could show where I’m tapping on the screen (but I didn’t actually use this in the end!).

    I don’t mind spending a little less than £15 on this post. To be honest, it’s the time and the spoons involved that are more valuable to me. I don’t write blog posts for money, but in the hope that someone at least will find what I’ve written to be of value to them. If you have found this helpful, please like it if you’re able to, and if you can share it more widely, whether by tooting or tweeting a link, or by reblogging if you have a WordPress account, I’d really appreciate that. And if you do have a bit of spare cash, I’ll be extremely grateful for any tips received on my Ko-fi page! 😊

    Share this:Like this:Like Loading... Related

    #accessibility #fedi #fediverse-2 #ios #iphone #mast #mastodon-2 #mercury #metatext #review #social-media-2 #tooot #toot #tootle #twitter-2 #user-experience

    https://transponderings.blog/2022/05/21/eight-mastodon-apps-for-iphone/

  12. Would of, could of, might of, must of

    When we say would have, could have, should have, must have, might have, may have and ought to have, we often put some stress on the modal auxiliary and none on the have. We may show this in writing by abbreviating to could’ve, must’ve, etc. (Would can contract further by merging with the subject: We would have → We’d’ve.)

    Unstressed ’ve is phonetically identical (/əv/) to unstressed of: hence the widespread misspellings would of, could of, should of, must of, might of, may of, and ought to of. Negative forms also appear: shouldn’t of, mightn’t of, etc. This explanation – that misanalysis of the notorious schwa lies behind the error – has general support among linguists.

    The mistake dates to at least 1837, according to the OED, so it has probably been infuriating pedants for almost 200 years. Common words spelt incorrectly provoke particular ire, sometimes accompanied by aspersions cast on the writer’s intelligence, fitness for society, degree of evolution, and so on. But there’s no need for any of that.

    Usage authorities unanimously call it a mistake, though some allow for its deliberate use (more on that below). Many associate it specifically with children and other less educated writers. For example, Garner’s Dictionary of Modern American Usage finds it a practice of ‘semiliterate writers’, and accepts no excuses: ‘the word is have, or a contraction ending in ’ve, and it should be written so.’

    Merriam-Webster’s Pocket Guide to English Usage says ‘children and those who have not completed grammar school may have an excuse for making this mistake, but most others do not.’ What’s meant by that most is what we’ll now consider: that the misspellings don’t always indicate carelessness or relative illiteracy.

    The Columbia Guide to Standard American English finds room for the anomalous forms as a stylistic device:

    substituting of for ’ve in writing can be an example of eye dialect, which deliberately misspells words to suggest Nonstandard or dialectal speech. . . . The important thing is to correct it when it isn’t intentional.

    The Merriam-Webster Dictionary of English Usage elaborates on this, saying writers use the spelling ‘to create an unlettered persona’. It cites several examples, including a ‘he’d of got me’ from F. Scott Fitzgerald, who ‘used the spelling to represent the speech of a woman who was not overeducated’, as MWDEU politely puts it.

    Here is must of in an intertitle in the Buster Keaton film Steamboat Bill, Jr. (1928):

    And in Josef von Sternberg’s 1928 The Docks of New York:

    Over the last number of years, I’ve seen the non-standard of-form in many books by authors who presumably knew what they were doing:

    ‘I could of sworn I’d run into you some place before.’ (Carson McCullers, The Member of the Wedding)

    ‘Oh Miz, oh Miz,’ he moaned, rubbing his leg. ‘You shouldn’t of done that, you shouldn’t, you reely shouldn’t.’ (Sylvia Plath, The Bell Jar)

    ‘All bloody and mucked up, with figuring away aboard the Vénus, when two minutes would of changed it.’ (Patrick O’Brian, The Mauritius Command)

    I’d of liked to be stabbed – and have lashings of red paint.’ (Agatha Christie, Dead Man’s Folly)

    ‘Never should of married‘ (Dylan Thomas, Under Milk Wood)

    ‘See, they must of had them already saddled.’ (Elmore Leonard, The Law at Randado)

    ‘If I hadn’t of got my tubes tied, it could of been me, say I was ten years younger.’ (Margaret Atwood, The Handmaid’s Tale)

    ‘You could of just told him.’ (Raymond Chandler, The Long Good-bye)

    ‘You could of said no and I could of not believed you.’ (Raymond Chandler, The Long Good-bye)

    ‘She must of grabbed some pills.’ (Raymond Chandler, The Long Good-bye)

    ‘You ought to of asked for me in the first place.’ (Raymond Chandler, ‘Trouble Is My Business’, in Trouble Is My Business)

    ‘Maybe I had ought to of gone to the servant’s entrance.’ (Raymond Chandler, ‘Trouble Is My Business’, in Trouble Is My Business)

    ‘Youve never seen anything so mad, the lassie couldnt of known what kind of nut house she was in.’ (Alan Warner, Morvern Callar)

    ‘I don’t suppose he would remember you,’ the woman said thoughtfully. ‘Seems like he would of mentioned you sometimes if he did.’ (Shirley Jackson, ‘The Lie’, in Let Me Tell You)

    ‘He shouldn’t of done it, that’s all’ (Shirley Jackson, ‘Root of Evil’, in Let Me Tell You)

    ‘My wife,’ he said, putting his elbows on the counter and still watching Judith, ‘my wife, you ought to of heard her when she thought I was going.’ (Shirley Jackson, ‘Homecoming’, in Let Me Tell You)

    ‘If he’d of been a friend of mine you would have said plenty, believe me,” Mrs. Royster said darkly. (Shirley Jackson, ‘The Daemon Lover’)

    ‘She sure must of been glad to see him, the way he looked,’ the old man said. (Shirley Jackson, ‘The Daemon Lover’)

    ‘I never saw him,’ the clerk in the drugstore said. ‘I know because I would of noticed the flowers.’ (Shirley Jackson, ‘The Daemon Lover’)

    ‘If you had of been dead, you’d of had a funeral. I only just thought a that now. I’d of went along.’ (Claire Kilroy, The Devil I Know)

    Mabey I shoudnt of let them oparate on my branes like she said if its agenst god. (Daniel Keyes, Flowers for Algernon)

    Now that makes me feel bad because I would never of hurt the baby. (Daniel Keyes, Flowers for Algernon)

    ‘I should of had my head examined.’ (Daniel Keyes, Flowers for Algernon)

    ‘She should of got it lit before we arrived.’ (Terry Pratchett, Wyrd Sisters)

    ‘Maybe you should of shot us when we was far away.’ (Chris Cleave, The Other Hand)

    ‘If he’d been an animal, he’d of been the runt of the litter and we’d of put him down.’ (Gillian Flynn, Dark Places)

    ‘I could of used the money,’ Donna said. ‘That’s what I was thinking.’ […] ‘It’s true,’ she said. ‘I could of used the money.’ (Raymond Carver, ‘Vitamins’, in Cathedral)

    ‘And here I’d of sworn…’ He took another try at the coffee cup, registered surprise to find it empty. (James Sallis, Drive)

    ‘Figured they must of took you when they took Ellis.’ (James Sallis, Bluebottle)

    Must of been May 14 as May 12 is my birthday and it was by way of a late present. (Minette Walters, The Ice House)

    ‘You could of got it from the paper.’ (Minette Walters, The Sculptress)

    ‘You should of shown me this last time.’ (Minette Walters, The Sculptress)

    ‘She went guilty so she must of done it.’ (Minette Walters, The Sculptress)

    Yorkin cringed. ‘Me. Pierce told me to clip him. I shouldn’t of done it by the drop.’ (James Ellroy, L. A. Confidential)

    ‘That sure could of been true,’ says the clerk at the Salon City store (Jon Krakauer, Into the Wild)

    ‘I must of fell asleep, eh?’
    ‘I guess you must have,’ said Isserley. (Michel Faber, Under the Skin)

    Then one day, it must of rained, and man discovered a new place: indoors. (Philomena Cunk, Cunk on Everything)

    And where that monkey might of come from. (Philomena Cunk, Cunk on Everything)

    I would of put loads more dinosaurs in. (Philomena Cunk, Cunk on Everything)

    ‘Donnie, we’d of finished this Betamax deal in ten days. And we’d have had winter money, all three of us.’ (Joseph D. Pistone with Richard Woodley, Donnie Brasco: My Undercover Life in the Mafia)

    ‘And who else could of built it?’ Mr Madden shouted. (Brian Moore, The Lonely Passion of Judith Hearne)

    Sheila, the woodshed, should of paddled you sooner. (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘You went had in there. Stark mad. You’d have raped her if . . .’
    I’d of what?‘ (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘I never should of come here.’ (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘Whether Miriam would of been any different, I don’t know, but I’d say she’d of been worse.’ (Patricia Highsmith, Strangers on a Train)

    I’d of thought Mrs Herman was the last person in the world to—’ (Dashiell Hammett, The Dain Curse)

    …the marshal hadn’t taken any of the Collinsons’ property though of course he might of. (Dashiell Hammett, The Dain Curse)

    I wouldn’t of flagged that taxi if the For Hire flag hadn’t been up.’ (Dashiell Hammet, ‘Fly Paper’, in The Big Knockover and other stories)

    ”F he’d of been a man I’d of seen him in hell ‘fore I’d of gave it to him.’ (Dashiell Hammett, ‘Corkscrew’, in The Big Knockover and other stories)

    ‘They may of gone,’ he said slowly. (Dashiell Hammett, ‘The Golden Horseshoe’, in The Continental Op)

    ‘But he must of gone through the house and out front . . .’ (Dashiell Hammett, ‘The Girls with the Silver Eyes’, in The ContinentalOp)

    ‘Anybody could of got in them with a ladder.’ (Dashiell Hammett, ‘The Farewell Murder’, in The Continental Op)

    ‘Well, we would of if she hadn’t put the two X’s to me the same as she done to you’ . . . ‘but if my rod hadn’t of got snagged in my flogger you wouldn’t have seen nothing else.’ (Dashiell Hammett, ‘The Whosis Kid’, in The Continental Op)

    ‘If I’d known you five years ago I’d of given it to you.’ (Sara Paretsky, ‘The Maltese Cat’, in Windy City Blues)

    ‘Mate, I’ve probably said enough already. More than I should of (taps nose) . . . Professional conduct an’ all that.’ (Nicola Barker, Darkmans)

    ‘Yes, and if the bastard hadn’t of moved I’d have got him, too.’ (Alexander Masters, Stuart: A Life Backwards)

    ‘I’m Billy Baker. Your Daddy might of talked about me, called me Space?’ (Garth Ennis and Steve Dillon, Preacher) (pictured and quoted below: Preacher no. 2: Proud Americans)

    ”Cause I hope I ain’t outta line here, but I think he’d of been cool about you hearin’ it…’ (Garth Ennis and Steve Dillon, Preacher)

    ‘He was stupid an’ clumsy an’ kind of a weakling, an’ he wouldn’t of lasted a fuckin’ day over there if it hadn’t been for one thing’ (Garth Ennis and Steve Dillon, Preacher)

    ‘See, we’d of done Murphy there an’ then, we’d of had to do Van Patten as well — an’ I knew your Daddy didn’t really wanna do that.’ (Garth Ennis and Steve Dillon, Preacher)

    The Dunns must of felt this when Tracy vanished. (Octavia E. Butler, Parable of the Sower)

    ‘She must of really gotten knocked out.’ (Jonathan Lethem, Girl in Landscape)

    ‘He’s not around now, or you’d of met him.’ (Jonathan Lethem, Girl in Landscape)

    ‘They could of just been losing us,’ said Coney. (Jonathan Lethem, Motherless Brooklyn)

    ‘Your parents must of been hippies,’ he’d tell me. (Jonathan Lethem, Motherless Brooklyn)

    ‘He might of been a little impatient for his date with Frank.’ (Jonathan Lethem, Motherless Brooklyn)

    ‘If it weren’t for Gilbert I would of told him to stick it—’ (Jonathan Lethem, Motherless Brooklyn)

    ‘Oh, I’d of straightened it out,’ Tony said. (Jonathan Lethem, Motherless Brooklyn)

    ‘Each one of them, he says it might of been you, it might of been two other guys.’ (Robert Anton Wilson, The Universe Next Door)

    ‘You must of been back on the reservation eating peyote again.’ (Robert Anton Wilson, The Universe Next Door)

    ‘And it wouldn’t of mattered to me whether you did or did not like women.’ (George Pelecanos, Drama City)

    ‘I wouldn’t of thought of such a thing in a million years.’ (George Pelecanos, The Big Blowdown)

    ‘If you hadn’t of stepped in the middle of everything—’ (George Pelecanos, The Big Blowdown)

    It would of done no good gettin’ somebody else te scratch it for me because that was a sin as well. (Frances Molloy, No Mate for the Magpie)

    ‘Been calling all night. Four, five calls, must of been.’ (Lawrence Block, A Ticket to the Boneyard)

    ‘Six-thirty or so, you must of just got on your way to Maspeth, guy goes out back with a load of kitchen garbage.’ (Lawrence Block, A Dance at the Slaughterhouse)

    ‘Another minute and I would of made it, you rats.’ (Lawrence Block, No Score)

    ‘Now if you would of done this we wouldn’t have any trouble.’ (Lawrence Block, No Score)

    ‘Need a social security card,’ he said. ‘You must of had one, I guess.’ (Lawrence Block, Chip Harrison Scores Again)

    ‘Guess they must of been chafing you some on that bus ride.’ (Lawrence Block, Chip Harrison Scores Again)

    ‘You might not of noticed yesterday but he’s only got one hand.’ (Ron Rash, The Cove)

    ‘Would he of died?’ (Alison Bechdel, Fun Home: A Family Tragicomic)

    ‘Pete should of told me,’ he said. (Donald Westlake, Good Behavior)

    ‘Okay,’ Dortmunder said. ‘Could be worse. She could of been wearing her habit, right?’ (Donald Westlake, Good Behavior)

    ‘Wound up, it took him forty-eight years to serve a ten-year sentence that he should of got out in three.’ (Donald Westlake, Good Behavior)

    ‘She has on a pair of bikinis I couldn’t of got into when I was ten years old.’ (Elmore Leonard, Mr. Paradise)

    ‘We could’ve settled, the city pays out a few bucks, it wouldn’t of cost you a dime.’ (Elmore Leonard, Mr. Paradise)

    ‘You know what I sor?’ said the child patiently. ‘Well, the train must of stopped, see, and some little men with bundles on their backs got on.’ (Mavis Gallant, ‘Up North’, in The Omnibus of 20th Century Ghost Stories, edited by Robert Phillips)

    ‘You two might of settled down and had a nice baby or something.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘Maybe you should of looked around some more.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘He must of gone to the show.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘I shouldn’t of toog you id,’ Angelo breathed. ‘I got nerbous.’
    ‘It was all my fault,’ Mrs Reilly said, ‘for trying to protect that Ignatius. I should of let you lock him away, Angelo.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘I don’t think I’d of wanted to go down there even for the Grape-Nuts. But maybe if we’d’ve gone real fast . . .’ (Harlan Ellison, ‘Sensible City’, in The Dead that Walk, edited by Stephen Jones)

    ‘You could of killed someone!’ (Neil Gaiman, Death: The High Cost of Living)

    ‘There’s a lot of places round here you could of bin.’ (Neil Gaiman, Death: The High Cost of Living)

    ‘If she’d stuck around, I could of asked her advice. I bet she could of come up with somewhere to put you that no one would think of lookin’, not if you paid them ready money.’ (Neil Gaiman, Death: The High Cost of Living)

    ‘If you’d gotten into a fight with that swordarm of yours, there’d of been bodies all over’ (Kazuo Koike and Goseki Kojima, Lone Wolf and Cub, vol. 2: The Gateless Barrier, translated by Dana Lewis)

    ‘It ain’t right I wasn’t there because if I had of been there I would of known.’ (Flannery O’Connor, A Good Man is Hard to Find)’The other vics probably would have lived if Lewin hadn’t of made that play.’ (George Pelecanos, Shame the Devil)

    I should of thought of that my own self.’ (George Pelecanos, Shame the Devil)

    ‘If you’d gone in right away, you would of got him, none of this would of happened. . . . I’d of got off! You think I’d of stood around that roadblock for seven hours?’ (Richard Stark, Slayground)

    ‘That guy talks pretty big, Cory. We should of called his bluff right there.’ (Richard Stark, Ask the Parrot)

    ‘Everything screws up, it just gets worse and worse, we should never of got into this, we’re fuckups, that’s all, we’re just fuckups.’ (Richard Stark, Comeback)

    Might of slipped in and out, nobody the wiser, except we were already on the scene, account of Parmitt being gone.’ (Richard Stark, Flashfire)

    Couldn’t you of – oh, he was ignorant in his speech – couldn’t you of prevented it?’ (Hilary Mantel, Beyond Black)

    ‘I should of thought to bring a sun lounger, from the garden centre,’ Mart said. (Hilary Mantel, Beyond Black)

    ‘He could of been,’ her mother said vaguely. (Hilary Mantel, Beyond Black)

    When she provoked him and he was in a temper with her, he would say, count your blessings, girl, you fink I’m bad but you could of had MacArthur. You could have had Bob Fox, or Aitkenside, or Pikey Pete. You could have had my mate Keef Capstick. You could of had Nick, and then where’d you be? (Hilary Mantel, Beyond Black)

    He shouldn’t of been near enough . . . (Donal Ryan, ‘Aisling’, in A Slanting of the Sun)

    Stupid idea anyway I dont think he ever wud of really done it. (Paul Murray, The Bee Sting – this example is from a teenager’s text message)

    But if she hadn’t of drank she would never have seen him at all and better that she was there she thought where she could at least try to keep some grip on him before he lost the run of himself completely (Paul Murray, The Bee Sting)

    Lar thought about it They must of gone out on a job he said (Paul Murray, The Bee Sting)

    I wonder what kind of life you might have had, if you hadn’t of been dragged back here. (Paul Murray, The Bee Sting)

    I paid a man to write it he says He must of never sent it at all (Paul Murray, The Bee Sting)

    I wish someone had of told me you croak into his shoulder (Paul Murray, The Bee Sting)

    Lars frowns Choosing his words He didn’t think you should of married Dickie he says (Paul Murray, The Bee Sting)

    U SHUD OF TOLD ME I CUD OF SHOWD U AROUD!!!! (Paul Murray, The Bee Sting, text message)

    ‘Hell, if I knew I was sitting on a gold mine, I’d of sold ’em a long time ago.’ (Jim Dodge, Not Fade Away)

    ‘And he couldn’t of loved me because he took away my kid, he’s off someplace where I can’t never see him.’ (James Baldwin, Another Country)

    ‘But I would of died for my kid, I wouldn’t never of let anything happen to him.’ (James Baldwin, Another Country)

    ‘I couldn’t of done nothing else,’ he cried, ‘what else could I of done? Where could I of gone with Esther, and me a preacher, too? And what could I of done with you?’ (James Baldwin, Go Tell It on the Mountain)

    Must of had a heart attack or something!?’ (Jamie Hewlett and Alan Martin, Tank Girl One):

    A curious example in Jim Nesbit’s novel Lethal Injection, where a character says “would’ve of”. My first thought was that it was a copy-editing or proofreading fix that stopped halfway: changing “would of” to “would’ve” and neglecting to delete the “of”. But a search online shows occasional analogous examples in unedited writing, and adjacent discussion on Language Log, so it may well be authentically dialectal:

    The example below, from alt-manga historian Ryan Holmberg’s The Translator Without Talent, is from The Marvel Times, a pretend-newspaper about comics that he created on his twelfth birthday. So its must of is probably not deliberate and also completely forgivable:

    Such phrases appear often in Cormac McCarthy’s novels. Here are some from Cities of the Plain, all used in dialogue:

    You’d never of knowed it though.

    I wouldn’t of wrote home for nothin.

    Looks like they’d of learned to stay out of it.

    Johnny if he hadnt of found that girl would of found somethin else.

    And there was nothin any mortal man could of done to of stopped it.

    And from Blood Meridian:

    No, No, he said. I mean ye was lost to of come here.

    It might of been a mule.

    Somebody ought to of pickled it a long time ago.

    Must of been a thousand indians in there all settin around.

    He appears to of spoke for hisself.

    I couldnt of learned it off ten dutchmen.

    Him and the governor they sat up till breakfast and it was Paris this and London that in five languages, you’d of give something to of heard them.

    Don’t you know he’d of took you with him? He’d of took you, boy.

    Glanton spat. Ort to of shot that one too, he said.

    Well, he said. I’d of thought any damn fool could saw the barrels off a shotgun.

    That old boy you bought them off of might of said they was injins but that dont make it so.
    The man didnt answer.
    Them ears could of come off of cannibals . . .

    You wouldnt of lived anyway, the man said.

    And from All the Pretty Horses:

    They might as well of, he said.

    Otherwise I’d of been born in Alabama.

    …it was a mistake not to of told you.

    But if it hadnt of been for her I wouldnt of made it.

    He might well could of

    Might well could of is also a nice example of a double modal. The [modal]-of construction is used frequently throughout Chris Cleave’s remarkable novel Incendiary:

    She was like that was Mena. Philosophical. I’d definitely of killed myself if it hadn’t of been for her.

    If you could of looked in my eyes you’d of seen the same thing I shouldn’t wonder.

    I wouldn’t of come near you I’d never of let you touch me you should be ashamed.

    Most notably in this exchange between two people only one of whom uses it dialectally:

    – He would of said something.
    – Maybe he wouldn’t have.
    Wouldn’t you of?

    A remarkable example in A Gate at the Stairs by Lorrie Moore uses it without a preceding modal, in the speech of a young child:

    ‘You got brown eyes,’ she said. ‘I of brown eyes.’

    Searching the Corpus of Contemporary American English for the string would of [v*], where [v*] is a verb, produces the graph below. It shows that the of-form’s predominant setting is fiction, usually ‘would of been’, and it also shows up in transcription of actual speech, as in the academic and newspaper instances. You can click through the image to view examples, sources, and further information at COCA.

    The magazine data are false positives (‘we’d have a better chance of achieving a breakthrough in quantum gravity than we would of figuring out how to reliably connect with teenagers’), but you get an idea of the construction’s low frequency and particular genre distribution.

    Plotting could of [v*] usages over time, using the related Corpus of Historical American English, suggests the construction may have peaked. Or is that just wishful thinking? Again, you can click on this graph for details, or open it in another tab.

    Of 1000 occurrences of could/would of in the Oxford English Corpus, about 850 are from ‘representations of direct speech (mostly from the Fiction domain, but also from interviews and courtroom transcripts)’. That leaves 150 genuine written instances of could/would of, compared with 4 million examples of standard could/would have. I can’t help picturing a global battalion of editors keeping it firmly at bay.

    The of-form is not frequent in edited prose, but it appears quite often in casual writing and it has been around a while. Does that count for much? MWDEU says its prolonged use has ‘not made it respectable’, and recommends avoiding it – including in transcriptions of real speech, since ’ve serves the purpose equally well. I agree, and I think if someone explicitly says of, and stresses it, that might warrant a ‘[sic]’.

    Regular readers know I like to make room for literary effect and poetic licence, but I have never warmed to this mistake. Every time I see it – be its use naive or intentional – I want to fix it. Authenticity of dialect and character are all well and good, but I think the main effect of the deliberate usage in edited prose is further uncertainty and error (not to mention irritation, in some quarters). What do you think?

    Updates:

    Years after writing this, I’ve softened considerably on the modal-of construction. This is partly because of exposure to its use by so many great writers, and also because it’s a good example of language change – a natural, essential characteristic of a living language. See my post on reconciling descriptivism with editing for more discussion.

    I’ve come across many more examples in books, and have added them to the sets above and below. @desktopenglish on Twitter drew my attention to this BBC article that quotes a footballer saying he ‘Shouldn’t of reacted the way I did’.

    What sounds to me like a good audio example comes from author Zadie Smith on the Adam Buxton Podcast. This link should cue the player automatically at 15:50, but if it doesn’t, that’s the time stamp. The relevant exchange is as follows, discussing Smith’s father:

    Smith: He was very uptight about time, yeah.

    Buxton: It rubbed off on you.

    Smith: It must of, yeah.

    Medievalist Lucy Allen found the line ‘For methowte I wold not for my life a sen it fallen’ in a 14thC religious text, The Shewings of Julian of Norwich. Translating it as ‘I thought I would not for my life of seen it fall’ [underlines mine], she writes: ‘it’s always fun when you notice something in a medieval text that is a dead ringer for one of the “modern” mistakes that horrify the pearl-clutchers’.

    David Crystal adds further historical commentary in his book Making Sense: The Glamorous Story of English Grammar:

    On 5 September 1819 the poet John Keats sends an apologetic letter to his publisher John Taylor, in which he writes:

    Had I known of your illness I should not of written in such fierry phrase in my first Letter.

    ‘Should not of written’? From such a great poet? It must have been just a slip, because later on in the same letter he writes ‘You should not have delayed.’ What interests me is to find this confusion 200 years ago. It isn’t just a modern thing, as some critics say. That identity in pronunciation between the preposition of and the unstressed form of the auxiliary verb have has been around a long time.

    Morph, a linguistics blog by the Surrey Morphology Group at the University of Surrey, has a great post on different aspects of the modal-of usage: ‘What’s the good of “would of”?’

    Lots of examples in Anne Tyler’s If Morning Ever Comes, spoken by several different characters (of different ages, backgrounds, and ethnicities):

    ‘You mustn’t of been but twelve or so but I remembered.’

    ‘You shouldn’t of mentioned breakfast, boy,’ he said.

    ‘Course I think he could of made a better choice in wives, but then Sally’s right pretty and I reckon I can see his point in picking her.’

    ‘You know, when I was a boy we’d of been plumb through town by now.’

    ‘If we’d of known,’ she said, ‘I’d of cleaned up house a little.’

    ‘Folks tell me I take too good care of him, so it can’t of been that he got too cold. Though he is right much of a puddle-wader, that could’ve done it.’ [Note nearby use of could’ve.]

    ‘I don’t guess my letter would of made any change in him one way or the other.’

    ‘If I’d of married Jamie,” she said, “I would of had a different family.’

    ‘Well, if it hadn’t of been her, it’d been someone else.’

    ‘She mustn’t of seen us.’

    Ross Macdonald also makes regular use of the construction:

    ‘If they knew they had a buyer, they might of stayed in business to accommodate you.’ (Ross Macdonald, The Blue Hammer)

    ‘I wish I could of died instead of him.’ (Ross Macdonald, The Blue Hammer)

    ‘The other man took them, he must of.’ (Ross Macdonald, The Galton Case)

    ‘He must of got away.’ (Ross Macdonald, The Galton Case)

    ‘He must of fell down on the knife and stabbed himself.’ (Ross Macdonald, The Galton Case)

    ‘He would of killed him too.’ (Ross Macdonald, The Galton Case)

    ‘When Culligan came marching out, armed up to the teeth, you could of knocked me over with a ‘dozer.’ (Ross Macdonald, The Galton Case)

    ‘Lucky for him I was out, or I’d of shown him what’s what.’ (Ross Macdonald, The Galton Case)

    ‘You were just a tiny baby, but that wouldn’t of stopped him.’ (Ross Macdonald, The Galton Case)

    As does Elmore Leonard; these are from The Hot Kid:

    Emmett Long kept looking at him. ‘You had a gun you’d of shot me, huh?’

    I’d of shoved the ice cream cone up his goddamn nose.’

    What Oris did, he got mad, changed the name of the company from Busy Bee Oil & Gas – a cartoon bumblebee in the trademark they’d of had one day – to NMD Oil & Gas, standing for No More Dusters, and worked a year as a driller to restore his capital.

    ‘The only one I told was Emmett,’ Carl said. ‘It had to of been Crystal told the papers.’

    She had to wonder if she had been here would he of recognized her, and bet he would’ve.

    I’d of arrested him he’s walking in the door,’ Lester said.

    Franklin was shaking his head. ‘I’d of seen ’em.’

    ‘I told him he shouldn’t of left the key in it.’

    ‘She looked at him again with a faint smile. ‘I would never of suspected.’

    ‘The first remark out of his mouth, I’d of pulled and killed him where he stood.’

    She’d of given me the choice of taking a chance with Teddy or being locked up.’

    ‘She wouldn’t of started breakfast if they weren’t all downstairs near ready to eat.’

    ‘Jack’s a talker,’ Carl said. ‘He’d of thought of a reason to go alone, pick up a bottle? And Tony’s polite, he would’ve said don’t steal the car, okay?’

    ‘No, he couldn’t of known that.’

    ‘Jack Belmont wouldn’t of left with bullets in his gun.’

    The minute Jack wasn’t looking, like taking a leak or something, she’d of run out of the house to find a cop.

    But Nancy knew who he was, so so the kidnapping wouldn’t of worked.

    ‘If I hadn’t decided to step back inside to answer the phone, I’d of missed one of the great opportunities of my career as a journalist . . .’

    Richard Stark, already quoted above, has half a dozen examples in his first novel, The Hunter:

    ‘If Art wanted to see you, he’d of told you where to find him.’

    Stegman blinked. ‘He must of believed me.’

    ‘His wife must of known it, but she never told me.’

    ‘Five minutes later,’ the owner told him, ‘you’d of been out of luck.’

    ‘…it must of meant something, that’s all.’

    ‘I wouldn’t of believed it.’

    The spelling occurs often in Kent Haruf’s novel Plainsong:

    He should of taken it last year.

    She might of come down and gone back, Ike said. She might not of too.

    She must not of stuck.

    She must of went home, Mr. Guthrie.

    You shouldn’t even of touched that.

    Well, he might of went to Denver, Raymond said. Then he might of went back to the Rosebud in South Dakota.

    I should of called during these months, I know.

    You could of done something yourself too, you know, he said.

    Something must of happened to her, Harold said. She must of got taken off or something.

    I can’t think of anything we might of did.

    You don’t even know where he might of took her for sure.
    He might of landed her in Pueblo or Walsenburg.

    We didn’t know what we might of done to cause you to want to leave here like that.

    He better not of hurt her permanent, Raymond said.

    And in Pete Dexter’s novel Train:

    “They must of left the sprinklers on all night,” the fat man said after he got back in control of his deportment again.

    “He must of got home somehow,” Train said.

    “She all convulsed the whole time they going through the house; she keeps saying, ‘Oh, no, he couldn’t of did that….'”

    Train began thinking more and more that the world might of decided to let him alone.

    Now he thought about he, she might not of even noticed the table leg if he hadn’t dropped it and woke up the dog…

    Train thought it must of reminded him of that feeling when he was hit by that car and rolled across the road.

    Then, if it was the right officer, they might of just carted Mayflower out of there, just because she was pretty, and then took his ass out into the desert and left it.

    “One of them must of got up here and took it,” he said.

    It seemed like Mr. Cooper must of told him where he come from, or how else would he know?

    Must of bought his clothes in the boy’s department.

    Melrose might of been trying to say something too, and Train distinctly saw his jaw slide out from under his face.

    It came to Train the Plural must of heard her before she even come out of the double-wide, that he must of known from how she was walking that she was mad.

    “A blind man,” he said, “We should of sold tickets.”

    Walter Tevis’s The Hustler, from multiple characters:

    ‘You should never of quit going to Sunday school.’

    ‘I already watched you lose – watched you lose to a man you should of beat.’

    ‘And if I hadn’t already paid for it I could of with the money I won in side bets.’

    ‘They couldn’t of helped but hear of me.’

    ‘I should of let that guy quit, Charlie, like you told me.’

    #books #corpusLinguistics #couldOf #dialects #dialogue #etymology #eyeDialect #fiction #grammar #language #linguistics #literacy #modalVerbs #modals #phrases #reading #schwa #speech #speechErrors #spelling #transcription #typos #usage #verbs #writing

  13. How bad is Scotland's Computer Science Exam?

    shkspr.mobi/blog/2016/11/how-b

    Oh noes! The computer science exams taken by 16 year olds may contain errors!

    BBC News Technology

    @BBCTech

    Computer science exam had coding errors bbc.in/2eHHa0Cbbc.co.uk
    SQA admits 'coding errors' in computer science exam
    Scotland's exam body admits to a series of mistakes in one of this year's computer science tests.
    ❤️ 23💬 1🔁 007:14 - Mon 17 October 2016

    As a professional computerist, I was intrigued to see what our fine young minds are being tested on. My memories of "computing" at school was being taught MS Word Version 2 (yes, I am that old). So, let's take a look at the paper - and its criticisms.

    The original paper is available to download as a PDF. As a small disclaimer, I've not studied for this exam, and haven't been taught in a school for many years. The answers are how I would answer - without reference to a search engine.

    1 Convert the decimal value 227 into the equivalent 8-bit binary number.

    Bit of a tough start! For only one point? Good to get the fundamentals in early though.

    Do they have a calculator? Hmmm, my conversion is a little rusty.It'll be 128 + 64 + 32, that gets us to 224. So add 3.

    00000011001000000100000010000000=11100011

    2 Explain why it is important that program code is readable.

    Frankly, anyone who can answer this question - and then apply it to real life - is doing better than most professionals. I'm answering "It makes it easier for others to understand what you are trying to accomplish."

    3 Explain why a database should not be stored in ROM memory.

    I'm assuming the answer is "ROM means Read Only Memory. This means your can't update your database." Not the last "trivia" style question.

    4 Give one reason of using this type of selection.

    You can argue whether UI elements are computer "science" - but it's a fair question for a single mark. Radio buttons allow you to select one - and only one - answer from a list.

    5 State the function of a processor’s registers.

    Whoa! OK! Bit of a departure from the last question. Off the top of my head I'd say something like "Extremely short term memory built into the processor where numbers are directly manipulated." Is that right? Damn...

    6 Anti-virus software may be included in a security suite.

    State two other types of software which should be included in a security suite.

    Again, computer science vs ICT raises its head. Incidentally, "Firewall" is the first thing that jumped to my head. And then... Errr... Spam filter? That feels like a weak answer.

    7 Criminals can steal your identity by using keylogger programs. State two other ways in which identity theft can be carried out.

    Little bit of infosec here! I'm going to say "shoulder surfing" and "Man-in-the-middle attacks".

    8 A novice is one type of user of an information system. State one other type of user.

    Errr.... "Expert"? Bit bemused as to why this question is here. Seems out of place with the others.

    9 This code design monitors the temperature of food as it is reheated.

    Line 1 RECEIVE temperature FROM (REAL) Line 2 WHILE temperature < 82 DOLine 3   SEND “temperature too low: continue to reheat” TO DISPLAYLine 4   RECEIVE temperature FROM (REAL) Line 5 END WHILE

    Explain what will happen in lines 2 to 5 if the sensor detects 63°.

    OK, so this is pseudo-code. Probably a good idea - unless the entire syllabus has standardised on a specific language.

    I suppose the answer is "Because the temperature is lower than the condition, the instructions on the inner loop will be carried out. If the temperature stays at 64, the loop is never ended.

    10 Lucy is looking for a summer holiday on-line. She wishes to leave on 22nd July from her local airport, and early in the afternoon.

    State which database operation is being carried out as she uses the website.

    I'm not sure Lucy cares about the back-end system, but let's see. As there's only one line of space, and one point, I'd answer "A search". Although perhaps "An SQL SELECT ... WHERE search" is better?

    11 Translators are used to convert high level languages into machine code. Identify each type of translator.

    This translator program reports errors at the end of translation.

    This translator needs to be present in memory each time the program is executed.

    Compiler and Run Time. Useful to know, glad to see this is being taught.

    12 A running group has 16 members. They are taking part in a marathon.

    Using pseudocode or a programming language of your choice, write the code which will take in each runner’s time for the marathon.

    Do I get bonus points if I write this in Assembler?

    This is a slightly weird question. How are the times being entered? Should there be any error checking? Should the data be stored?

    Anyway

    for ($x == 0; $x <= 15; $x++){   $time = get_input("Please enter the runner's time");   insert_into_database($x, $time);}

    That'll take in 16 times and do something with them.

    Writing pseudocode is a useful skill. I'd like to have seen a bit more of it in this paper. Or at least on a more challenging problem.

    13 Before launching the website below, it is tested. The testers complain about the effectiveness of the website’s navigation.

    Identify two examples of poor navigation, stating what could be done to improve the situation.

    No worse than some of the production websites I've seen ;-) Also, no real way to know if alt tags have been used, ARIA etc.

    I count...

    • Nav bar at top doesn't have understandable text. Should be in English.
    • Login box doesn't say what should be entered in each field. Placeholder text should say what each field is for (username, password, pin, etc).
    • Down arrow has no context. Should have text explaining where it will take the user.
    • Radio buttons and check boxes have inconsistent designs. Make them recognisable.
    • Radio buttons and check boxes are visually indistinct. Use a unified design.

    A good exercise for anyone interested in web design. Keeping a critical eye is crucial.

    14 State the type of network which has no centralised storage.

    Eh? What? Bit of a curve ball... Ummm.... Dare I utter the words "Blockchain"? Wait, is that technically a network? Errr... I don't know what they're getting at here. I vaguely remember network topology from university. Token Ring? Surely they're not teaching that obscure piece of tech?

    I'll go out on a limb and say "Star Network". It's good to teach about different network types - but this question really needs something more to test the student's knowledge.

    15 FlightCrazy is a new company offering a flight booking service to business customers. They want to set up a database to store flight details. A researcher starts to gather information from airport timetables about available flight times.

    Oooh! A good clutch of Database questions.

    (a) If the full database is created as a flat file, explain why “RouteID” is not a suitable primary key for the table.

    Primary keys should be unique.

    (b) Describe two problems in creating this as a flat file database.

    Hmmm... Are they asking for problems with flat files specifically or in the way this has been created?

    I'll punt with "Flat files can't be optimised for searching". And inconsistencies in naming - for example "Monday" and "Mon".

    (c) FlightCrazy decide that using a flat file database is not suitable. State a more suitable type of database.

    Relational? I mean, I'm guessing they don't want NoSQL?

    (d) State the field type that should be used for “Aircraft Code”.

    Integer... No! Wait! There are some strings in there. VARCHAR(3)? But what if later codes have more than 3 characters. Let's settle for String.

    And the questions keep on coming!

    (e) During the development of this database the following input form is created.

    (i) State one suitable type of validation for the Departure Airport field.

    I'm stumped by what they're asking here. Is it as simple as "if exists"?

    (ii) Complete the table below to show suitable data values to test the Number of travellers field.

    Type of test dataTest dataExceptionalExtreme

    Say what now? I've never heard of exceptional and extreme data.

    I assume "exceptional" means something like typing text into a numeric field.

    I also assume that "extreme" means trying an SQL injection.

    (f) During the testing of the completed database all the flights from Glasgow to all airports in London on the 8th June were found. The following output was produced.

    Describe how the above results have been sorted.

    Oooh! A good one. Naively you could say "by price" - but how are the duplicate prices sorted? It's not by airline. It's not by Journey time. It's not by Destination. It looks like it's "First by price, then by time."

    Might have been a good idea to ask how the SQL query should have been formed.

    And that's the end of the Database section. Some fairly good questions for a 16 year old audience there. Nothing too taxing, although I'm confused by some of the terminology (which may well be my outdated learning).

    Now it gets tougher!

    16 A Maths game is designed for primary school pupils to test number ordering. In the game the pupil is asked to enter two integer numbers. A third integer number is then randomly generated and shown to the user.

    The user must then state if the random number is:

    • lower (l) than the two entered numbers
    • higher (h) than the two entered numbers
    • in the middle (m) of the two entered numbers.

    A design for the code is shown below.

    SEND randNum TO DISPLAYGET guess FROM (CHARACTER) KEYBOARDIF guess = “l” AND randNum < numOne THEN   SEND “Correct it is lower” TO DISPLAY   SET score TO score + 1END IFIF guess = “m” AND randNum >= numOne AND randNum <= numTwo   SEND “Correct it is in the middle” TO DISPLAY   SET score TO score + 1END IFIF guess = “h” AND randNum > numTwo   SEND “Correct it is higher” TO DISPLAY   SET score TO score + 1END IF

    Youch! That's a lot more info than any previous question. Here we go!

    (a) When the two numbers are entered the program should ensure that numTwo is always a higher number than numOne.

    Using pseudocode or a programming language of your choice, write several lines to represent this input validation for line 2.

    Hmmm... Are we assuming an integer, or something else?

    IF (numTwo.type == number AND numTwo > numOne)   (continue)ELSE   SEND "Second number is less than first number" TO DISPLAY

    Is that enough?

    (b) When the pupil enters their answer it is stored in a variable called “guess”. State the data type stored by the variable “guess”.

    Again, tricky. I want to say take it in as a string, then turn into a float.

    (c) The program is run with the following data. State the output from the program.

    VariablesValuesnumOne7numTwo15randNum10guessm

    Correct. 10 is between both. Useful to see if people can step through program code.

    (d) The program will have to make use of a pre-defined function.

    State the pre-defined function used and describe its purpose.

    The only thing I can think of is the random number generator. Am I missing something? Would we count comparison operators? Probably not.

    (e) Using line numbers, describe how the code could be adapted, allowing the user to play the game 10 times using the same values for numOne and numTwo but a different random number each time.

    Well, between line 2 and 3 we want to insert a WHILE loop which counts up from 0. And an incrementing counter at the end.

    17 John has been asked to design a website to promote an event being held to raise money for charity.

    The organisers of the event provide this diagram showing the pages required and how they should be organised.

    (a) What type of navigation structure is required for the website?

    Tree. I think... I've never really had to think about it.

    (b) State a design notation that John could use to design the layout of the pages.

    I'd usually just use path-names. Is it that simple? Or do they mean a notation like UML?

    (c) The homepage contains hyperlinks. Describe the function of a hyperlink.

    A communist plot by TIMBL to enslave the western world!

    To be fair, you could write a decent essay on all the uses of a link - semantics, usability, data structures. But as this is a one-point question, I think they just mean "to allow a user to easily navigate to another web destination."

    (d) John begins to build the website and stores all the files and resources on his hard disk. Here is the file structure for the website.

    (i) State the type of data you would expect to be stored in the dance.avi file.

    Bah! I hate these style of question. Besides, .AVI is such an ancient format. It's a container for video and audio.

    (ii) State the relative address John should enter on the display.htm page to link to dunk.gif.

    resources/dunk.gif - note the lack of / at the start. I suppose an alternative might be /activities/resources/dunk.gif. Might have been a good idea to ask why /resources.. wouldn't work.

    (e) John wants to include an external link to the charity and asks the event organisers to find out the URL.

    (i) Explain what is meant by an external link.

    A link which will navigate the user away from the domain they are currently on.

    (ii) State what the letters URL stand for.

    Poor question IMO, IDK when I last needed to know what it meant.

    The words "Uniform Resource Locator" is a silly phrase.

    (iii) The organisers give John a photograph file from the charity which measures 5 inches by 7 inches with a resolution of 600dpi and 24-bit colour depth. Calculate the storage required for the photograph.

    State your answer using appropriate units. Show all your working.

    MATHS! FINALLY! Bit of a cumbersome way of phrasing it, but let's give it a go.

    Total number of pixels = (5 * 600) * (7 * 600) = 12,600,000 pixels.

    Total number of bits = 12600000 * 24 = 302,400,000 bits.

    Bytes = 302400000 / 8 = 37,800,000B

    KB = 37800000 / 1024 = 36914KB

    MB = 36914 / 1024 = 36MB

    I'd expect to see something here about lossy vs lossless encoding. Or why this filesize is problematic for use on the web.

    18 A software development company decide to review staff knowledge of computer related legislation.

    Mikal is asked to create an app covering a range of legal issues.

    (a) When Mikal records an introduction using audio software, he is prompted to select the sample rate.

    Select sampling rate:

    • 22050 Hz
    • 44100 Hz
    • 96000 Hz

    (i) Describe the effect on the size of the sound file if the highest sample rate is selected.

    I've no idea what this has to do with legal issues. The higher the sample rate the larger the file.

    (ii) After recording, Mikal exports the file as a compressed file. State a suitable standard file format he may have used.

    I'd write .MP3 on here - I'd be worried that they wouldn't know what FLAC, OGG, or any other esoteric codec was.

    (b) Mikal develops an interactive quiz for the app to test the staff’s knowledge of legislation. The first question is about this recent article from a newspaper.

    (i) State the offence that has been committed under the Computer Misuse Act in this article.

    OK! Now this is a legal issue! But which specific offence? I've no idea. I'm guessing "Unlawful access" - which is a bit question begging. I hope they're not looking for the exact reference!

    (ii) Describe another offence under the terms of this Act.

    Proper little Wikileaks going on here. This is taxing my knowledge. My first thought is "changing data without permission" - but that's too similar to the above. I'll go with "intentionally disrupting the performance of a computer without permission" - for example sending a DDoS.

    I love that kids are being taught about the law. Excellent idea.

    (c) The next question that Mikal creates for the quiz is about another article.

    "A man was arrested after he cloned his neighbour's phone."

    Name the law which may have been broken in this case.

    WTF? OK, learning the law is good - but this isn't computer science. I've zero idea which specific law is broken.

    (d) In line with Health and Safety legislation, the company provides adjustable seating and guidelines on maintaining good posture.

    Mikal finds graphics on a website that he can use to illustrate his next quiz question.

    (i) Explain why he might need to seek permission to use the graphics legally.

    Actually, talking about posture might be good on a CS exam. Physical issues are a real pain to deal with.

    Anyway, let's go with "The copyright owner of the image may sue for misuse of their intellectual property." Incidentally, I hope my critique of this paper falls under fair use!

    (ii) Mikal uses the graphics to create question 3 for the app.

    Question: 3 Total Score: 2

    Using pseudocode or a programming language of your choice, write the code to show how the total score is calculated when the user answers question 3 correctly.

    Errrr.... This is one of those questions that people complained about. How many points is each correct answer worth?

    $answer3 = get_input();if ($answer3 == "A")   score++

    (e) When the staff member takes the finished quiz, the app sends their details and their total score to a database file.

    State two rights that the staff member has under the Data Protection Act with regard to their own data.

    Another rapid switch! I mean, it is great that the DPA is being mentioned, but a bit weird to do it here.

    I'm going with "Right to examine the data held about them" and "Right to correct any mistakes."

    Blimey! Still not at the end of the paper. I'm not sure I'd have got this far in the allotted 90 minutes.

    WARNING This is one of the questions which attracted a lot of complaints. See if you can work out why!

    19 Gillian designs a program to calculate how much it costs to get her dog Penny groomed. The design is shown below.

    SET total = 0DECLARE all costs INITIALLY [35.00, 36.00, 40.00,35.00,42.50]FOR EACH cost FROM all costs DUE   SET total=total+costEND FOR EACHSEND “The total cost = £“&total TO DISPLAY

    OK, that program is a bit weird - but it is pseudocode, we don't expect syntactic brilliance.

    (a) Describe the data structure that has been used to store the individual costs.

    It's an array.

    (b) Gillian writes and tests her program. It works perfectly calculating a correct total of 188.50.

    (i) With reference to line numbers, explain how the program calculates the final total.

    Line 1 initialises a variable and sets it to zero.Line 3 loops through the array of costs and adds each to the variable.

    There are three points available, so I think I've missed something.

    (ii) Describe how the contents of the variable total would be stored in the computer’s memory.

    WHAT? I don't care! I'll let the compiler take care of that. It is good to get some low-level stuff in the exam. For two points, I'm guessing... "A block of memory of a specific size is reserved for the variable."

    (iii) Gillian edits the program with the following data: [35.00,36.00,40.00,35.00,42.50,45.00]

    The output is still 188.50.

    A Explain why the output is still 188.50.

    B State how this error could be corrected.

    Debugging is a vital skill - but I really can't see what's going wrong here. Perhaps DUE should be DO? I don't know.

    (c) Concatenation has been used in line 6. State the purpose of concatenation.

    It... it sticks strings together...? Err... Let's try "It allows a variable to inserted into a string which can then be displayed."

    20 Sue uses a website called “Check your Defences!” to learn more about keeping her computer and data safe.

    aside I totally love the retro browser screenshot!

    (a) Explain the purpose of a firewall.

    Keep the Wildlings out of King's Landing? No! That's an ice wall.

    A firewall detects whether a connection to or from the network is authorised.

    (b) Explain how encryption can help keep data safe.

    More Wikileaks! Encryption ensures that only people with the decryption key will be able to view the data. Modern encryption is resistant to brute-force attacks.

    I'd have expected a bit more of a technical question - this seems rather basic.

    When Sue tries to download the mobile app onto her tablet PC, she gets the following message:

    "This app is incompatible with your device - Check your Defences!

    System requirements Android 4∙4 or higher, 1∙6 Ghz, 2Gb RAM, 32Gb"

    (Gb? Gigabits? A genuine mistake, or designed to trip us up.)

    She checks the specification for her tablet PC.

    • Size: 267 x 187 x 8 mm
    • Weight: 65 kg
    • 1∙83Ghz/2GB RAM/16GB
    • Battery life: up to 8 hours
    • Display: 8∙3” full HD, 10 point multi-touch
    • Operating system: Android 4∙1
    • USB 3, micro HDMI, microSD card slot 3∙5 MP camera
    • Microphone
    • Stereo speakers
    • Headphone jack
    • Wi-Fi

    (WHOA! A 65KG tablet. Not exactly portable!)

    (c) (i) Sue’s tablet has a range of input and output devices. Identify one of each of these items on Sue’s tablet.

    Inputs could be the touch screen, the camera, the mic. Theoretically you could transmit some data back via HDMI, but I would class that as a "showing off" answer.Outputs are the display, the speakers, the headphone jack.

    This is back to the basic ICT questions which I hoped we'd left behind. Not very encouraging.

    (ii) Identify one interface type on Sue’s tablet.

    Again, I'm left in confusion as to what's being asked here. The Universal Serial Bus is an interface - but so is the touch screen...

    (iii) Describe one function of an interface.

    What? This seems poorly worded. I think they want me to say "To allow data to be exchanged from one device to another."

    (iv) Give two reasons why the app is incompatible with Sue’s tablet PC.

    Her tablet has a lower version of the operating system.I assume that the 32Gb on the requirements means storage space - but her tablet has 16GB. To my mind sixteen gigabytes is a lot more than 32 gigabits... But I think I'd take a punt and assume there's a mistake in the question.

    (d) Sue’s friend Jack views the website on his smart phone but the home screen looks different to the desktop version Sue had been using.

    Describe one reason why the user interface on the smartphone version is designed differently to the version Sue had used on her desktop.

    There's only one point on offer here. Pity, this would be an excellent chance to write about progressive enhancement, media queries, responsive design.

    I'll stick with "Mobile users interact using a finger, this is a less precise interaction than using a mouse, so link targets should be bigger."

    LAST QUESTION ALERT!

    21 A software developer is creating an online booking system for a bowling alley. Customers can book a bowling lane for a maximum of 4 people playing a maximum of 3 games.

    The developer has used a flow chart to produce the program design. Part of the design is shown below.

    a) (i) State one benefit of using the design notation shown above instead of pseudocode.

    Flowcharts! Yay! I might be going delirious at this point...

    "Flowcharts allow people to easily visualise how a program works and, hopefully, spot any mistakes."

    (ii) Name the algorithm illustrated in the bowling alley program design.

    Grrr... More trivia! And, frankly, it is hardly an algorithm. Frankly, I've no idea what they want as an answer. Nor why it is relevant.

    Using pseudocode or a programming language of your choice, complete the conditional statement at Line 3 below to implement this section of the design.

    __________  numPlayers __________  and numGames  _______SEND “Booking Accepted” TO DISPLAY

    This is VERY CONFUSING!

    Perhaps IF numbPlayers <= 4 and numGames <= 3?

    (c) The program is tested using a set of test data.

    (i) Complete the table below to show three examples of test data types and the expected result for each type.

    Test dataTest data typeExpected ResultnumPlayers = 3
    numGames = 2NormalBooking acceptednumPlayers = 4
    numGames = 3____Booking acceptednumPlayers = 6
    numGames = 3________

    ARGH! Back to testing. I mean, yay testing, but what are the test data types again? Extreme and Abnormal?

    The last one has a result of Booking rejected. But I've no idea what the data types are. I'm guessing "normal" and "abnormal"?

    (ii) The character “£” is entered as a test value for the number of players. This causes the program to crash. State the type of error that would cause this crash.

    Depends on the language. I'd say "Type exception" maybe "Cast exception"?

    (d) Error detection and correction in a program is easier if the code is readable. State one technique that can be used to ensure readability of code.

    And we're back where we started! I'd go with "Clear variable names which don't use abbreviations." I wonder if they'd value an extended discourse on tabs vs spaces?

    And Breathe!

    That was a lot tougher than I expected. I wasn't doing it in exam conditions, but I felt the pressure.

    The obvious mistakes didn't help my nerves but, guess what, the real world isn't perfect either. Computer Science is the art of trying to fit the messy analogue world into a pure state of binary bliss.

    Conclusion

    I think that's a pretty good computer science paper - especially for students who may only have studied it for a couple of years.

    I think it leans slightly too far towards ICT but I'm pleased with the mentions of usability, good design, security, and the law.

    There are a few "Trivia" questions. The "What is this thing called" style - I'm not a big fan of them. Far better to test the understanding of the design, not the name. Similarly, the legal questions veer into the obscure.

    Some of the technology is a little out of date - but it's such a fast moving space, talking about file-formats which have only recently become popular might disadvantage people without the time to keep up.

    So, are the mistakes "a disgrace"?

    There should be spaces between array elements - but part of computer science is reading poorly written code.

    Some of the pseudocode is typed incorrectly - but that's the nature of pseudocode.

    The unit confusion is annoying, and could trip up someone with an eye for detail. That's a shame, but not a showstopper.

    I'm not a teacher - and I have no idea what is on the syllabus. All that said, I've met Computer Science graduates who would struggle with some aspects of this paper.

    I think us geeks often over-estimate how much we knew when we were kids. When I was 16, I thought I was 1337 (back when that meant something). I wasn't. I couldn't have passed a paper of similar complexity.

    I think this represents an excellent foundation for anyone wanting to studying computing.

    My Score

    You can read the marking instructions online as a PDF

    I scored... 59/90. Yikes!

    Most of the dropped points were where I over-thought the question, and a few where I was missing basic knowledge (mantissa!). Perhaps I'd have picked up a few points if the marker knew the subject well.

    Some, I just screwed up the answers. I wasn't specific enough in saying that the database results had been sorted in descending order.

    Based on the published grade boundaries, I think I just about scraped an A.

    How did you do?

    #ComputerScience #education #NaBloPoMo

  14. Would of, could of, might of, must of

    When we say would have, could have, should have, must have, might have, may have and ought to have, we often put some stress on the modal auxiliary and none on the have. We may show this in writing by abbreviating to could’ve, must’ve, etc. (Would can contract further by merging with the subject: We would have → We’d’ve.)

    Unstressed ’ve is phonetically identical (/əv/) to unstressed of: hence the widespread misspellings would of, could of, should of, must of, might of, may of, and ought to of. Negative forms also appear: shouldn’t of, mightn’t of, etc. This explanation – that misanalysis of the notorious schwa lies behind the error – has general support among linguists.

    The mistake dates to at least 1837, according to the OED, so it has probably been infuriating pedants for almost 200 years. Common words spelt incorrectly provoke particular ire, sometimes accompanied by aspersions cast on the writer’s intelligence, fitness for society, degree of evolution, and so on. But there’s no need for any of that.

    Usage authorities unanimously call it a mistake, though some allow for its deliberate use (more on that below). Many associate it specifically with children and other less educated writers. For example, Garner’s Dictionary of Modern American Usage finds it a practice of ‘semiliterate writers’, and accepts no excuses: ‘the word is have, or a contraction ending in ’ve, and it should be written so.’

    Merriam-Webster’s Pocket Guide to English Usage says ‘children and those who have not completed grammar school may have an excuse for making this mistake, but most others do not.’ What’s meant by that most is what we’ll now consider: that the misspellings don’t always indicate carelessness or relative illiteracy.

    The Columbia Guide to Standard American English finds room for the anomalous forms as a stylistic device:

    substituting of for ’ve in writing can be an example of eye dialect, which deliberately misspells words to suggest Nonstandard or dialectal speech. . . . The important thing is to correct it when it isn’t intentional.

    The Merriam-Webster Dictionary of English Usage elaborates on this, saying writers use the spelling ‘to create an unlettered persona’. It cites several examples, including a ‘he’d of got me’ from F. Scott Fitzgerald, who ‘used the spelling to represent the speech of a woman who was not overeducated’, as MWDEU politely puts it.

    Here is must of in an intertitle in the Buster Keaton film Steamboat Bill, Jr. (1928):

    And in Josef von Sternberg’s 1928 The Docks of New York:

    Over the last number of years, I’ve seen the non-standard of-form in many books by authors who presumably knew what they were doing:

    ‘I could of sworn I’d run into you some place before.’ (Carson McCullers, The Member of the Wedding)

    ‘Oh Miz, oh Miz,’ he moaned, rubbing his leg. ‘You shouldn’t of done that, you shouldn’t, you reely shouldn’t.’ (Sylvia Plath, The Bell Jar)

    ‘All bloody and mucked up, with figuring away aboard the Vénus, when two minutes would of changed it.’ (Patrick O’Brian, The Mauritius Command)

    I’d of liked to be stabbed – and have lashings of red paint.’ (Agatha Christie, Dead Man’s Folly)

    ‘Never should of married‘ (Dylan Thomas, Under Milk Wood)

    ‘See, they must of had them already saddled.’ (Elmore Leonard, The Law at Randado)

    ‘If I hadn’t of got my tubes tied, it could of been me, say I was ten years younger.’ (Margaret Atwood, The Handmaid’s Tale)

    ‘You could of just told him.’ (Raymond Chandler, The Long Good-bye)

    ‘You could of said no and I could of not believed you.’ (Raymond Chandler, The Long Good-bye)

    ‘She must of grabbed some pills.’ (Raymond Chandler, The Long Good-bye)

    ‘You ought to of asked for me in the first place.’ (Raymond Chandler, ‘Trouble Is My Business’, in Trouble Is My Business)

    ‘Maybe I had ought to of gone to the servant’s entrance.’ (Raymond Chandler, ‘Trouble Is My Business’, in Trouble Is My Business)

    ‘Youve never seen anything so mad, the lassie couldnt of known what kind of nut house she was in.’ (Alan Warner, Morvern Callar)

    ‘I don’t suppose he would remember you,’ the woman said thoughtfully. ‘Seems like he would of mentioned you sometimes if he did.’ (Shirley Jackson, ‘The Lie’, in Let Me Tell You)

    ‘He shouldn’t of done it, that’s all’ (Shirley Jackson, ‘Root of Evil’, in Let Me Tell You)

    ‘My wife,’ he said, putting his elbows on the counter and still watching Judith, ‘my wife, you ought to of heard her when she thought I was going.’ (Shirley Jackson, ‘Homecoming’, in Let Me Tell You)

    ‘If he’d of been a friend of mine you would have said plenty, believe me,” Mrs. Royster said darkly. (Shirley Jackson, ‘The Daemon Lover’)

    ‘She sure must of been glad to see him, the way he looked,’ the old man said. (Shirley Jackson, ‘The Daemon Lover’)

    ‘I never saw him,’ the clerk in the drugstore said. ‘I know because I would of noticed the flowers.’ (Shirley Jackson, ‘The Daemon Lover’)

    ‘If you had of been dead, you’d of had a funeral. I only just thought a that now. I’d of went along.’ (Claire Kilroy, The Devil I Know)

    Mabey I shoudnt of let them oparate on my branes like she said if its agenst god. (Daniel Keyes, Flowers for Algernon)

    Now that makes me feel bad because I would never of hurt the baby. (Daniel Keyes, Flowers for Algernon)

    ‘I should of had my head examined.’ (Daniel Keyes, Flowers for Algernon)

    ‘She should of got it lit before we arrived.’ (Terry Pratchett, Wyrd Sisters)

    ‘Maybe you should of shot us when we was far away.’ (Chris Cleave, The Other Hand)

    ‘If he’d been an animal, he’d of been the runt of the litter and we’d of put him down.’ (Gillian Flynn, Dark Places)

    ‘I could of used the money,’ Donna said. ‘That’s what I was thinking.’ […] ‘It’s true,’ she said. ‘I could of used the money.’ (Raymond Carver, ‘Vitamins’, in Cathedral)

    ‘And here I’d of sworn…’ He took another try at the coffee cup, registered surprise to find it empty. (James Sallis, Drive)

    ‘Figured they must of took you when they took Ellis.’ (James Sallis, Bluebottle)

    Must of been May 14 as May 12 is my birthday and it was by way of a late present. (Minette Walters, The Ice House)

    ‘You could of got it from the paper.’ (Minette Walters, The Sculptress)

    ‘You should of shown me this last time.’ (Minette Walters, The Sculptress)

    ‘She went guilty so she must of done it.’ (Minette Walters, The Sculptress)

    Yorkin cringed. ‘Me. Pierce told me to clip him. I shouldn’t of done it by the drop.’ (James Ellroy, L. A. Confidential)

    ‘That sure could of been true,’ says the clerk at the Salon City store (Jon Krakauer, Into the Wild)

    ‘I must of fell asleep, eh?’
    ‘I guess you must have,’ said Isserley. (Michel Faber, Under the Skin)

    Then one day, it must of rained, and man discovered a new place: indoors. (Philomena Cunk, Cunk on Everything)

    And where that monkey might of come from. (Philomena Cunk, Cunk on Everything)

    I would of put loads more dinosaurs in. (Philomena Cunk, Cunk on Everything)

    ‘Donnie, we’d of finished this Betamax deal in ten days. And we’d have had winter money, all three of us.’ (Joseph D. Pistone with Richard Woodley, Donnie Brasco: My Undercover Life in the Mafia)

    ‘And who else could of built it?’ Mr Madden shouted. (Brian Moore, The Lonely Passion of Judith Hearne)

    Sheila, the woodshed, should of paddled you sooner. (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘You went had in there. Stark mad. You’d have raped her if . . .’
    I’d of what?‘ (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘I never should of come here.’ (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘Whether Miriam would of been any different, I don’t know, but I’d say she’d of been worse.’ (Patrician Highsmith, Strangers on a Train)

    I’d of thought Mrs Herman was the last person in the world to—’ (Dashiell Hammett, The Dain Curse)

    …the marshal hadn’t taken any of the Collinsons’ property though of course he might of. (Dashiell Hammett, The Dain Curse)

    I wouldn’t of flagged that taxi if the For Hire flag hadn’t been up.’ (Dashiell Hammet, ‘Fly Paper’, in The Big Knockover and other stories)

    ”F he’d of been a man I’d of seen him in hell ‘fore I’d of gave it to him.’ (Dashiell Hammett, ‘Corkscrew’, in The Big Knockover and other stories)

    ‘They may of gone,’ he said slowly. (Dashiell Hammett, ‘The Golden Horseshoe’, in The Continental Op)

    ‘But he must of gone through the house and out front . . .’ (Dashiell Hammett, ‘The Girls with the Silver Eyes’, in The ContinentalOp)

    ‘Anybody could of got in them with a ladder.’ (Dashiell Hammett, ‘The Farewell Murder’, in The Continental Op)

    ‘Well, we would of if she hadn’t put the two X’s to me the same as she done to you’ . . . ‘but if my rod hadn’t of got snagged in my flogger you wouldn’t have seen nothing else.’ (Dashiell Hammett, ‘The Whosis Kid’, in The Continental Op)

    ‘If I’d known you five years ago I’d of given it to you.’ (Sara Paretsky, ‘The Maltese Cat’, in Windy City Blues)

    ‘Mate, I’ve probably said enough already. More than I should of (taps nose) . . . Professional conduct an’ all that.’ (Nicola Barker, Darkmans)

    ‘Yes, and if the bastard hadn’t of moved I’d have got him, too.’ (Alexander Masters, Stuart: A Life Backwards)

    ‘I’m Billy Baker. Your Daddy might of talked about me, called me Space?’ (Garth Ennis and Steve Dillon, Preacher) (pictured and quoted below: Preacher no. 2: Proud Americans)

    ”Cause I hope I ain’t outta line here, but I think he’d of been cool about you hearin’ it…’ (Garth Ennis and Steve Dillon, Preacher)

    ‘He was stupid an’ clumsy an’ kind of a weakling, an’ he wouldn’t of lasted a fuckin’ day over there if it hadn’t been for one thing’ (Garth Ennis and Steve Dillon, Preacher)

    ‘See, we’d of done Murphy there an’ then, we’d of had to do Van Patten as well — an’ I knew your Daddy didn’t really wanna do that.’ (Garth Ennis and Steve Dillon, Preacher)

    The Dunns must of felt this when Tracy vanished. (Octavia E. Butler, Parable of the Sower)

    ‘She must of really gotten knocked out.’ (Jonathan Lethem, Girl in Landscape)

    ‘He’s not around now, or you’d of met him.’ (Jonathan Lethem, Girl in Landscape)

    ‘They could of just been losing us,’ said Coney. (Jonathan Lethem, Motherless Brooklyn)

    ‘Your parents must of been hippies,’ he’d tell me. (Jonathan Lethem, Motherless Brooklyn)

    ‘He might of been a little impatient for his date with Frank.’ (Jonathan Lethem, Motherless Brooklyn)

    ‘If it weren’t for Gilbert I would of told him to stick it—’ (Jonathan Lethem, Motherless Brooklyn)

    ‘Oh, I’d of straightened it out,’ Tony said. (Jonathan Lethem, Motherless Brooklyn)

    ‘Each one of them, he says it might of been you, it might of been two other guys.’ (Robert Anton Wilson, The Universe Next Door)

    ‘You must of been back on the reservation eating peyote again.’ (Robert Anton Wilson, The Universe Next Door)

    ‘And it wouldn’t of mattered to me whether you did or did not like women.’ (George Pelecanos, Drama City)

    ‘I wouldn’t of thought of such a thing in a million years.’ (George Pelecanos, The Big Blowdown)

    ‘If you hadn’t of stepped in the middle of everything—’ (George Pelecanos, The Big Blowdown)

    It would of done no good gettin’ somebody else te scratch it for me because that was a sin as well. (Frances Molloy, No Mate for the Magpie)

    ‘Been calling all night. Four, five calls, must of been.’ (Lawrence Block, A Ticket to the Boneyard)

    ‘Six-thirty or so, you must of just got on your way to Maspeth, guy goes out back with a load of kitchen garbage.’ (Lawrence Block, A Dance at the Slaughterhouse)

    ‘Another minute and I would of made it, you rats.’ (Lawrence Block, No Score)

    ‘Now if you would of done this we wouldn’t have any trouble.’ (Lawrence Block, No Score)

    ‘Need a social security card,’ he said. ‘You must of had one, I guess.’ (Lawrence Block, Chip Harrison Scores Again)

    ‘Guess they must of been chafing you some on that bus ride.’ (Lawrence Block, Chip Harrison Scores Again)

    ‘You might not of noticed yesterday but he’s only got one hand.’ (Ron Rash, The Cove)

    ‘Would he of died?’ (Alison Bechdel, Fun Home: A Family Tragicomic)

    ‘Pete should of told me,’ he said. (Donald Westlake, Good Behavior)

    ‘Okay,’ Dortmunder said. ‘Could be worse. She could of been wearing her habit, right?’ (Donald Westlake, Good Behavior)

    ‘Wound up, it took him forty-eight years to serve a ten-year sentence that he should of got out in three.’ (Donald Westlake, Good Behavior)

    ‘She has on a pair of bikinis I couldn’t of got into when I was ten years old.’ (Elmore Leonard, Mr. Paradise)

    ‘We could’ve settled, the city pays out a few bucks, it wouldn’t of cost you a dime.’ (Elmore Leonard, Mr. Paradise)

    ‘You know what I sor?’ said the child patiently. ‘Well, the train must of stopped, see, and some little men with bundles on their backs got on.’ (Mavis Gallant, ‘Up North’, in The Omnibus of 20th Century Ghost Stories, edited by Robert Phillips)

    ‘You two might of settled down and had a nice baby or something.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘Maybe you should of looked around some more.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘He must of gone to the show.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘I shouldn’t of toog you id,’ Angelo breathed. ‘I got nerbous.’
    ‘It was all my fault,’ Mrs Reilly said, ‘for trying to protect that Ignatius. I should of let you lock him away, Angelo.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘I don’t think I’d of wanted to go down there even for the Grape-Nuts. But maybe if we’d’ve gone real fast . . .’ (Harlan Ellison, ‘Sensible City’, in The Dead that Walk, edited by Stephen Jones)

    ‘You could of killed someone!’ (Neil Gaiman, Death: The High Cost of Living)

    ‘There’s a lot of places round here you could of bin.’ (Neil Gaiman, Death: The High Cost of Living)

    ‘If she’d stuck around, I could of asked her advice. I bet she could of come up with somewhere to put you that no one would think of lookin’, not if you paid them ready money.’ (Neil Gaiman, Death: The High Cost of Living)

    ‘If you’d gotten into a fight with that swordarm of yours, there’d of been bodies all over’ (Kazuo Koike and Goseki Kojima, Lone Wolf and Cub, vol. 2: The Gateless Barrier, translated by Dana Lewis)

    ‘It ain’t right I wasn’t there because if I had of been there I would of known.’ (Flannery O’Connor, A Good Man is Hard to Find)’The other vics probably would have lived if Lewin hadn’t of made that play.’ (George Pelecanos, Shame the Devil)

    I should of thought of that my own self.’ (George Pelecanos, Shame the Devil)

    ‘If you’d gone in right away, you would of got him, none of this would of happened. . . . I’d of got off! You think I’d of stood around that roadblock for seven hours?’ (Richard Stark, Slayground)

    ‘That guy talks pretty big, Cory. We should of called his bluff right there.’ (Richard Stark, Ask the Parrot)

    ‘Everything screws up, it just gets worse and worse, we should never of got into this, we’re fuckups, that’s all, we’re just fuckups.’ (Richard Stark, Comeback)

    Might of slipped in and out, nobody the wiser, except we were already on the scene, account of Parmitt being gone.’ (Richard Stark, Flashfire)

    Couldn’t you of – oh, he was ignorant in his speech – couldn’t you of prevented it?’ (Hilary Mantel, Beyond Black)

    ‘I should of thought to bring a sun lounger, from the garden centre,’ Mart said. (Hilary Mantel, Beyond Black)

    ‘He could of been,’ her mother said vaguely. (Hilary Mantel, Beyond Black)

    When she provoked him and he was in a temper with her, he would say, count your blessings, girl, you fink I’m bad but you could of had MacArthur. You could have had Bob Fox, or Aitkenside, or Pikey Pete. You could have had my mate Keef Capstick. You could of had Nick, and then where’d you be? (Hilary Mantel, Beyond Black)

    He shouldn’t of been near enough . . . (Donal Ryan, ‘Aisling’, in A Slanting of the Sun)

    Stupid idea anyway I dont think he ever wud of really done it. (Paul Murray, The Bee Sting – this example is from a teenager’s text message)

    But if she hadn’t of drank she would never have seen him at all and better that she was there she thought where she could at least try to keep some grip on him before he lost the run of himself completely (Paul Murray, The Bee Sting)

    Lar thought about it They must of gone out on a job he said (Paul Murray, The Bee Sting)

    I wonder what kind of life you might have had, if you hadn’t of been dragged back here. (Paul Murray, The Bee Sting)

    I paid a man to write it he says He must of never sent it at all (Paul Murray, The Bee Sting)

    I wish someone had of told me you croak into his shoulder (Paul Murray, The Bee Sting)

    Lars frowns Choosing his words He didn’t think you should of married Dickie he says (Paul Murray, The Bee Sting)

    U SHUD OF TOLD ME I CUD OF SHOWD U AROUD!!!! (Paul Murray, The Bee Sting, text message)

    ‘Hell, if I knew I was sitting on a gold mine, I’d of sold ’em a long time ago.’ (Jim Dodge, Not Fade Away)

    ‘And he couldn’t of loved me because he took away my kid, he’s off someplace where I can’t never see him.’ (James Baldwin, Another Country)

    ‘But I would of died for my kid, I wouldn’t never of let anything happen to him.’ (James Baldwin, Another Country)

    ‘I couldn’t of done nothing else,’ he cried, ‘what else could I of done? Where could I of gone with Esther, and me a preacher, too? And what could I of done with you?’ (James Baldwin, Go Tell It on the Mountain)

    Must of had a heart attack or something!?’ (Jamie Hewlett and Alan Martin, Tank Girl One):

    A curious example in Jim Nesbit’s novel Lethal Injection, which suggests an attempted copy-editing or proofreading fix that stopped halfway: changing “would of” to “would’ve” but not deleting the “of”. Or maybe it’s else entirely:

    The example below, from alt-manga historian Ryan Holmberg’s The Translator Without Talent, is from The Marvel Times, a pretend-newspaper about comics that he created on his twelfth birthday. So its must of is probably not deliberate and also completely forgivable:

    Such phrases appear often in Cormac McCarthy’s novels. Here are some from Cities of the Plain, all used in dialogue:

    You’d never of knowed it though.

    I wouldn’t of wrote home for nothin.

    Looks like they’d of learned to stay out of it.

    Johnny if he hadnt of found that girl would of found somethin else.

    And there was nothin any mortal man could of done to of stopped it.

    And from Blood Meridian:

    No, No, he said. I mean ye was lost to of come here.

    It might of been a mule.

    Somebody ought to of pickled it a long time ago.

    Must of been a thousand indians in there all settin around.

    He appears to of spoke for hisself.

    I couldnt of learned it off ten dutchmen.

    Him and the governor they sat up till breakfast and it was Paris this and London that in five languages, you’d of give something to of heard them.

    Don’t you know he’d of took you with him? He’d of took you, boy.

    Glanton spat. Ort to of shot that one too, he said.

    Well, he said. I’d of thought any damn fool could saw the barrels off a shotgun.

    That old boy you bought them off of might of said they was injins but that dont make it so.
    The man didnt answer.
    Them ears could of come off of cannibals . . .

    You wouldnt of lived anyway, the man said.

    And from All the Pretty Horses:

    They might as well of, he said.

    Otherwise I’d of been born in Alabama.

    …it was a mistake not to of told you.

    But if it hadnt of been for her I wouldnt of made it.

    He might well could of

    Might well could of is also a nice example of a double modal. The [modal]-of construction is used frequently throughout Chris Cleave’s remarkable novel Incendiary:

    She was like that was Mena. Philosophical. I’d definitely of killed myself if it hadn’t of been for her.

    If you could of looked in my eyes you’d of seen the same thing I shouldn’t wonder.

    I wouldn’t of come near you I’d never of let you touch me you should be ashamed.

    Most notably in this exchange between two people only one of whom uses it dialectally:

    – He would of said something.
    – Maybe he wouldn’t have.
    Wouldn’t you of?

    A remarkable example in A Gate at the Stairs by Lorrie Moore uses it without a preceding modal, in the speech of a young child:

    ‘You got brown eyes,’ she said. ‘I of brown eyes.’

    Searching the Corpus of Contemporary American English for the string would of [v*], where [v*] is a verb, produces the graph below. It shows that the of-form’s predominant setting is fiction, usually ‘would of been’, and it also shows up in transcription of actual speech, as in the academic and newspaper instances. You can click through the image to view examples, sources, and further information at COCA.

    The magazine data are false positives (‘we’d have a better chance of achieving a breakthrough in quantum gravity than we would of figuring out how to reliably connect with teenagers’), but you get an idea of the construction’s low frequency and particular genre distribution.

    Plotting could of [v*] usages over time, using the related Corpus of Historical American English, suggests the construction may have peaked. Or is that just wishful thinking? Again, you can click on this graph for details, or open it in another tab.

    Of 1000 occurrences of could/would of in the Oxford English Corpus, about 850 are from ‘representations of direct speech (mostly from the Fiction domain, but also from interviews and courtroom transcripts)’. That leaves 150 genuine written instances of could/would of, compared with 4 million examples of standard could/would have. I can’t help picturing a global battalion of editors keeping it firmly at bay.

    The of-form is not frequent in edited prose, but it appears quite often in casual writing and it has been around a while. Does that count for much? MWDEU says its prolonged use has ‘not made it respectable’, and recommends avoiding it – including in transcriptions of real speech, since ’ve serves the purpose equally well. I agree, and I think if someone explicitly says of, and stresses it, that might warrant a ‘[sic]’.

    Regular readers know I like to make room for literary effect and poetic licence, but I have never warmed to this mistake. Every time I see it – be its use naive or intentional – I want to fix it. Authenticity of dialect and character are all well and good, but I think the main effect of the deliberate usage in edited prose is further uncertainty and error (not to mention irritation, in some quarters). What do you think?

    Updates:

    Years after writing this, I’ve softened considerably on the modal-of construction. This is partly because of exposure to its use by so many great writers, and also because it’s a good example of language change – a natural, essential characteristic of a living language. See my post on reconciling descriptivism with editing for more discussion.

    I’ve come across many more examples in books, and have added them to the sets above and below. @desktopenglish on Twitter drew my attention to this BBC article that quotes a footballer saying he ‘Shouldn’t of reacted the way I did’.

    What sounds to me like a good audio example comes from author Zadie Smith on the Adam Buxton Podcast. This link should cue the player automatically at 15:50, but if it doesn’t, that’s the time stamp. The relevant exchange is as follows, discussing Smith’s father:

    Smith: He was very uptight about time, yeah.

    Buxton: It rubbed off on you.

    Smith: It must of, yeah.

    Medievalist Lucy Allen found the line ‘For methowte I wold not for my life a sen it fallen’ in a 14thC religious text, The Shewings of Julian of Norwich. Translating it as ‘I thought I would not for my life of seen it fall’ [underlines mine], she writes: ‘it’s always fun when you notice something in a medieval text that is a dead ringer for one of the “modern” mistakes that horrify the pearl-clutchers’.

    David Crystal adds further historical commentary in his book Making Sense: The Glamorous Story of English Grammar:

    On 5 September 1819 the poet John Keats sends an apologetic letter to his publisher John Taylor, in which he writes:

    Had I known of your illness I should not of written in such fierry phrase in my first Letter.

    ‘Should not of written’? From such a great poet? It must have been just a slip, because later on in the same letter he writes ‘You should not have delayed.’ What interests me is to find this confusion 200 years ago. It isn’t just a modern thing, as some critics say. That identity in pronunciation between the preposition of and the unstressed form of the auxiliary verb have has been around a long time.

    Morph, a linguistics blog by the Surrey Morphology Group at the University of Surrey, has a great post on different aspects of the modal-of usage: ‘What’s the good of “would of”?’

    Lots of examples in Anne Tyler’s If Morning Ever Comes, spoken by several different characters (of different ages, backgrounds, and ethnicities):

    ‘You mustn’t of been but twelve or so but I remembered.’

    ‘You shouldn’t of mentioned breakfast, boy,’ he said.

    ‘Course I think he could of made a better choice in wives, but then Sally’s right pretty and I reckon I can see his point in picking her.’

    ‘You know, when I was a boy we’d of been plumb through town by now.’

    ‘If we’d of known,’ she said, ‘I’d of cleaned up house a little.’

    ‘Folks tell me I take too good care of him, so it can’t of been that he got too cold. Though he is right much of a puddle-wader, that could’ve done it.’ [Note nearby use of could’ve.]

    ‘I don’t guess my letter would of made any change in him one way or the other.’

    ‘If I’d of married Jamie,” she said, “I would of had a different family.’

    ‘Well, if it hadn’t of been her, it’d been someone else.’

    ‘She mustn’t of seen us.’

    Ross Macdonald also makes regular use of the construction:

    ‘If they knew they had a buyer, they might of stayed in business to accommodate you.’ (Ross Macdonald, The Blue Hammer)

    ‘I wish I could of died instead of him.’ (Ross Macdonald, The Blue Hammer)

    ‘The other man took them, he must of.’ (Ross Macdonald, The Galton Case)

    ‘He must of got away.’ (Ross Macdonald, The Galton Case)

    ‘He must of fell down on the knife and stabbed himself.’ (Ross Macdonald, The Galton Case)

    ‘He would of killed him too.’ (Ross Macdonald, The Galton Case)

    ‘When Culligan came marching out, armed up to the teeth, you could of knocked me over with a ‘dozer.’ (Ross Macdonald, The Galton Case)

    ‘Lucky for him I was out, or I’d of shown him what’s what.’ (Ross Macdonald, The Galton Case)

    ‘You were just a tiny baby, but that wouldn’t of stopped him.’ (Ross Macdonald, The Galton Case)

    As does Elmore Leonard; these are from The Hot Kid:

    Emmett Long kept looking at him. ‘You had a gun you’d of shot me, huh?’

    I’d of shoved the ice cream cone up his goddamn nose.’

    What Oris did, he got mad, changed the name of the company from Busy Bee Oil & Gas – a cartoon bumblebee in the trademark they’d of had one day – to NMD Oil & Gas, standing for No More Dusters, and worked a year as a driller to restore his capital.

    ‘The only one I told was Emmett,’ Carl said. ‘It had to of been Crystal told the papers.’

    She had to wonder if she had been here would he of recognized her, and bet he would’ve.

    I’d of arrested him he’s walking in the door,’ Lester said.

    Franklin was shaking his head. ‘I’d of seen ’em.’

    ‘I told him he shouldn’t of left the key in it.’

    ‘She looked at him again with a faint smile. ‘I would never of suspected.’

    ‘The first remark out of his mouth, I’d of pulled and killed him where he stood.’

    She’d of given me the choice of taking a chance with Teddy or being locked up.’

    ‘She wouldn’t of started breakfast if they weren’t all downstairs near ready to eat.’

    ‘Jack’s a talker,’ Carl said. ‘He’d of thought of a reason to go alone, pick up a bottle? And Tony’s polite, he would’ve said don’t steal the car, okay?’

    ‘No, he couldn’t of known that.’

    ‘Jack Belmont wouldn’t of left with bullets in his gun.’

    The minute Jack wasn’t looking, like taking a leak or something, she’d of run out of the house to find a cop.

    But Nancy knew who he was, so so the kidnapping wouldn’t of worked.

    ‘If I hadn’t decided to step back inside to answer the phone, I’d of missed one of the great opportunities of my career as a journalist . . .’

    Richard Stark, already quoted above, has half a dozen examples in his first novel, The Hunter:

    ‘If Art wanted to see you, he’d of told you where to find him.’

    Stegman blinked. ‘He must of believed me.’

    ‘His wife must of known it, but she never told me.’

    ‘Five minutes later,’ the owner told him, ‘you’d of been out of luck.’

    ‘…it must of meant something, that’s all.’

    ‘I wouldn’t of believed it.’

    The spelling occurs often in Kent Haruf’s novel Plainsong:

    He should of taken it last year.

    She might of come down and gone back, Ike said. She might not of too.

    She must not of stuck.

    She must of went home, Mr. Guthrie.

    You shouldn’t even of touched that.

    Well, he might of went to Denver, Raymond said. Then he might of went back to the Rosebud in South Dakota.

    I should of called during these months, I know.

    You could of done something yourself too, you know, he said.

    Something must of happened to her, Harold said. She must of got taken off or something.

    I can’t think of anything we might of did.

    You don’t even know where he might of took her for sure.
    He might of landed her in Pueblo or Walsenburg.

    We didn’t know what we might of done to cause you to want to leave here like that.

    He better not of hurt her permanent, Raymond said.

    And in Pete Dexter’s novel Train:

    “They must of left the sprinklers on all night,” the fat man said after he got back in control of his deportment again.

    “He must of got home somehow,” Train said.

    “She all convulsed the whole time they going through the house; she keeps saying, ‘Oh, no, he couldn’t of did that….'”

    Train began thinking more and more that the world might of decided to let him alone.

    Now he thought about he, she might not of even noticed the table leg if he hadn’t dropped it and woke up the dog…

    Train thought it must of reminded him of that feeling when he was hit by that car and rolled across the road.

    Then, if it was the right officer, they might of just carted Mayflower out of there, just because she was pretty, and then took his ass out into the desert and left it.

    “One of them must of got up here and took it,” he said.

    It seemed like Mr. Cooper must of told him where he come from, or how else would he know?

    Must of bought his clothes in the boy’s department.

    Melrose might of been trying to say something too, and Train distinctly saw his jaw slide out from under his face.

    It came to Train the Plural must of heard her before she even come out of the double-wide, that he must of known from how she was walking that she was mad.

    “A blind man,” he said, “We should of sold tickets.”

    Walter Tevis’s The Hustler, from multiple characters:

    ‘You should never of quit going to Sunday school.’

    ‘I already watched you lose – watched you lose to a man you should of beat.’

    ‘And if I hadn’t already paid for it I could of with the money I won in side bets.’

    ‘They couldn’t of helped but hear of me.’

    ‘I should of let that guy quit, Charlie, like you told me.’

    #books #corpusLinguistics #couldOf #dialects #dialogue #etymology #eyeDialect #fiction #grammar #language #linguistics #literacy #modalVerbs #modals #phrases #reading #schwa #speech #speechErrors #spelling #transcription #typos #usage #verbs #writing

  15. Would of, could of, might of, must of

    When we say would have, could have, should have, must have, might have, may have and ought to have, we often put some stress on the modal auxiliary and none on the have. We may show this in writing by abbreviating to could’ve, must’ve, etc. (Would can contract further by merging with the subject: We would have → We’d’ve.)

    Unstressed ’ve is phonetically identical (/əv/) to unstressed of: hence the widespread misspellings would of, could of, should of, must of, might of, may of, and ought to of. Negative forms also appear: shouldn’t of, mightn’t of, etc. This explanation – that misanalysis of the notorious schwa lies behind the error – has general support among linguists.

    The mistake dates to at least 1837, according to the OED, so it has probably been infuriating pedants for almost 200 years. Common words spelt incorrectly provoke particular ire, sometimes accompanied by aspersions cast on the writer’s intelligence, fitness for society, degree of evolution, and so on. But there’s no need for any of that.

    Usage authorities unanimously call it a mistake, though some allow for its deliberate use (more on that below). Many associate it specifically with children and other less educated writers. For example, Garner’s Dictionary of Modern American Usage finds it a practice of ‘semiliterate writers’, and accepts no excuses: ‘the word is have, or a contraction ending in ’ve, and it should be written so.’

    Merriam-Webster’s Pocket Guide to English Usage says ‘children and those who have not completed grammar school may have an excuse for making this mistake, but most others do not.’ What’s meant by that most is what we’ll now consider: that the misspellings don’t always indicate carelessness or relative illiteracy.

    The Columbia Guide to Standard American English finds room for the anomalous forms as a stylistic device:

    substituting of for ’ve in writing can be an example of eye dialect, which deliberately misspells words to suggest Nonstandard or dialectal speech. . . . The important thing is to correct it when it isn’t intentional.

    The Merriam-Webster Dictionary of English Usage elaborates on this, saying writers use the spelling ‘to create an unlettered persona’. It cites several examples, including a ‘he’d of got me’ from F. Scott Fitzgerald, who ‘used the spelling to represent the speech of a woman who was not overeducated’, as MWDEU politely puts it.

    Here is must of in an intertitle in the Buster Keaton film Steamboat Bill, Jr. (1928):

    And in Josef von Sternberg’s 1928 The Docks of New York:

    Over the last number of years, I’ve seen the non-standard of-form in many books by authors who presumably knew what they were doing:

    ‘I could of sworn I’d run into you some place before.’ (Carson McCullers, The Member of the Wedding)

    ‘Oh Miz, oh Miz,’ he moaned, rubbing his leg. ‘You shouldn’t of done that, you shouldn’t, you reely shouldn’t.’ (Sylvia Plath, The Bell Jar)

    ‘All bloody and mucked up, with figuring away aboard the Vénus, when two minutes would of changed it.’ (Patrick O’Brian, The Mauritius Command)

    I’d of liked to be stabbed – and have lashings of red paint.’ (Agatha Christie, Dead Man’s Folly)

    ‘Never should of married‘ (Dylan Thomas, Under Milk Wood)

    ‘See, they must of had them already saddled.’ (Elmore Leonard, The Law at Randado)

    ‘If I hadn’t of got my tubes tied, it could of been me, say I was ten years younger.’ (Margaret Atwood, The Handmaid’s Tale)

    ‘You could of just told him.’ (Raymond Chandler, The Long Good-bye)

    ‘You could of said no and I could of not believed you.’ (Raymond Chandler, The Long Good-bye)

    ‘She must of grabbed some pills.’ (Raymond Chandler, The Long Good-bye)

    ‘You ought to of asked for me in the first place.’ (Raymond Chandler, ‘Trouble Is My Business’, in Trouble Is My Business)

    ‘Maybe I had ought to of gone to the servant’s entrance.’ (Raymond Chandler, ‘Trouble Is My Business’, in Trouble Is My Business)

    ‘Youve never seen anything so mad, the lassie couldnt of known what kind of nut house she was in.’ (Alan Warner, Morvern Callar)

    ‘I don’t suppose he would remember you,’ the woman said thoughtfully. ‘Seems like he would of mentioned you sometimes if he did.’ (Shirley Jackson, ‘The Lie’, in Let Me Tell You)

    ‘He shouldn’t of done it, that’s all’ (Shirley Jackson, ‘Root of Evil’, in Let Me Tell You)

    ‘My wife,’ he said, putting his elbows on the counter and still watching Judith, ‘my wife, you ought to of heard her when she thought I was going.’ (Shirley Jackson, ‘Homecoming’, in Let Me Tell You)

    ‘If he’d of been a friend of mine you would have said plenty, believe me,” Mrs. Royster said darkly. (Shirley Jackson, ‘The Daemon Lover’)

    ‘She sure must of been glad to see him, the way he looked,’ the old man said. (Shirley Jackson, ‘The Daemon Lover’)

    ‘I never saw him,’ the clerk in the drugstore said. ‘I know because I would of noticed the flowers.’ (Shirley Jackson, ‘The Daemon Lover’)

    ‘If you had of been dead, you’d of had a funeral. I only just thought a that now. I’d of went along.’ (Claire Kilroy, The Devil I Know)

    Mabey I shoudnt of let them oparate on my branes like she said if its agenst god. (Daniel Keyes, Flowers for Algernon)

    Now that makes me feel bad because I would never of hurt the baby. (Daniel Keyes, Flowers for Algernon)

    ‘I should of had my head examined.’ (Daniel Keyes, Flowers for Algernon)

    ‘She should of got it lit before we arrived.’ (Terry Pratchett, Wyrd Sisters)

    ‘Maybe you should of shot us when we was far away.’ (Chris Cleave, The Other Hand)

    ‘If he’d been an animal, he’d of been the runt of the litter and we’d of put him down.’ (Gillian Flynn, Dark Places)

    ‘I could of used the money,’ Donna said. ‘That’s what I was thinking.’ […] ‘It’s true,’ she said. ‘I could of used the money.’ (Raymond Carver, ‘Vitamins’, in Cathedral)

    ‘And here I’d of sworn…’ He took another try at the coffee cup, registered surprise to find it empty. (James Sallis, Drive)

    ‘Figured they must of took you when they took Ellis.’ (James Sallis, Bluebottle)

    Must of been May 14 as May 12 is my birthday and it was by way of a late present. (Minette Walters, The Ice House)

    ‘You could of got it from the paper.’ (Minette Walters, The Sculptress)

    ‘You should of shown me this last time.’ (Minette Walters, The Sculptress)

    ‘She went guilty so she must of done it.’ (Minette Walters, The Sculptress)

    Yorkin cringed. ‘Me. Pierce told me to clip him. I shouldn’t of done it by the drop.’ (James Ellroy, L. A. Confidential)

    ‘That sure could of been true,’ says the clerk at the Salon City store (Jon Krakauer, Into the Wild)

    ‘I must of fell asleep, eh?’
    ‘I guess you must have,’ said Isserley. (Michel Faber, Under the Skin)

    Then one day, it must of rained, and man discovered a new place: indoors. (Philomena Cunk, Cunk on Everything)

    And where that monkey might of come from. (Philomena Cunk, Cunk on Everything)

    I would of put loads more dinosaurs in. (Philomena Cunk, Cunk on Everything)

    ‘Donnie, we’d of finished this Betamax deal in ten days. And we’d have had winter money, all three of us.’ (Joseph D. Pistone with Richard Woodley, Donnie Brasco: My Undercover Life in the Mafia)

    ‘And who else could of built it?’ Mr Madden shouted. (Brian Moore, The Lonely Passion of Judith Hearne)

    Sheila, the woodshed, should of paddled you sooner. (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘You went had in there. Stark mad. You’d have raped her if . . .’
    I’d of what?‘ (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘I never should of come here.’ (Brian Moore, The Lonely Passion of Judith Hearne)

    ‘Whether Miriam would of been any different, I don’t know, but I’d say she’d of been worse.’ (Patricia Highsmith, Strangers on a Train)

    I’d of thought Mrs Herman was the last person in the world to—’ (Dashiell Hammett, The Dain Curse)

    …the marshal hadn’t taken any of the Collinsons’ property though of course he might of. (Dashiell Hammett, The Dain Curse)

    I wouldn’t of flagged that taxi if the For Hire flag hadn’t been up.’ (Dashiell Hammet, ‘Fly Paper’, in The Big Knockover and other stories)

    ”F he’d of been a man I’d of seen him in hell ‘fore I’d of gave it to him.’ (Dashiell Hammett, ‘Corkscrew’, in The Big Knockover and other stories)

    ‘They may of gone,’ he said slowly. (Dashiell Hammett, ‘The Golden Horseshoe’, in The Continental Op)

    ‘But he must of gone through the house and out front . . .’ (Dashiell Hammett, ‘The Girls with the Silver Eyes’, in The ContinentalOp)

    ‘Anybody could of got in them with a ladder.’ (Dashiell Hammett, ‘The Farewell Murder’, in The Continental Op)

    ‘Well, we would of if she hadn’t put the two X’s to me the same as she done to you’ . . . ‘but if my rod hadn’t of got snagged in my flogger you wouldn’t have seen nothing else.’ (Dashiell Hammett, ‘The Whosis Kid’, in The Continental Op)

    ‘If I’d known you five years ago I’d of given it to you.’ (Sara Paretsky, ‘The Maltese Cat’, in Windy City Blues)

    ‘Mate, I’ve probably said enough already. More than I should of (taps nose) . . . Professional conduct an’ all that.’ (Nicola Barker, Darkmans)

    ‘Yes, and if the bastard hadn’t of moved I’d have got him, too.’ (Alexander Masters, Stuart: A Life Backwards)

    ‘I’m Billy Baker. Your Daddy might of talked about me, called me Space?’ (Garth Ennis and Steve Dillon, Preacher) (pictured and quoted below: Preacher no. 2: Proud Americans)

    ”Cause I hope I ain’t outta line here, but I think he’d of been cool about you hearin’ it…’ (Garth Ennis and Steve Dillon, Preacher)

    ‘He was stupid an’ clumsy an’ kind of a weakling, an’ he wouldn’t of lasted a fuckin’ day over there if it hadn’t been for one thing’ (Garth Ennis and Steve Dillon, Preacher)

    ‘See, we’d of done Murphy there an’ then, we’d of had to do Van Patten as well — an’ I knew your Daddy didn’t really wanna do that.’ (Garth Ennis and Steve Dillon, Preacher)

    The Dunns must of felt this when Tracy vanished. (Octavia E. Butler, Parable of the Sower)

    ‘She must of really gotten knocked out.’ (Jonathan Lethem, Girl in Landscape)

    ‘He’s not around now, or you’d of met him.’ (Jonathan Lethem, Girl in Landscape)

    ‘They could of just been losing us,’ said Coney. (Jonathan Lethem, Motherless Brooklyn)

    ‘Your parents must of been hippies,’ he’d tell me. (Jonathan Lethem, Motherless Brooklyn)

    ‘He might of been a little impatient for his date with Frank.’ (Jonathan Lethem, Motherless Brooklyn)

    ‘If it weren’t for Gilbert I would of told him to stick it—’ (Jonathan Lethem, Motherless Brooklyn)

    ‘Oh, I’d of straightened it out,’ Tony said. (Jonathan Lethem, Motherless Brooklyn)

    ‘Each one of them, he says it might of been you, it might of been two other guys.’ (Robert Anton Wilson, The Universe Next Door)

    ‘You must of been back on the reservation eating peyote again.’ (Robert Anton Wilson, The Universe Next Door)

    ‘And it wouldn’t of mattered to me whether you did or did not like women.’ (George Pelecanos, Drama City)

    ‘I wouldn’t of thought of such a thing in a million years.’ (George Pelecanos, The Big Blowdown)

    ‘If you hadn’t of stepped in the middle of everything—’ (George Pelecanos, The Big Blowdown)

    It would of done no good gettin’ somebody else te scratch it for me because that was a sin as well. (Frances Molloy, No Mate for the Magpie)

    ‘Been calling all night. Four, five calls, must of been.’ (Lawrence Block, A Ticket to the Boneyard)

    ‘Six-thirty or so, you must of just got on your way to Maspeth, guy goes out back with a load of kitchen garbage.’ (Lawrence Block, A Dance at the Slaughterhouse)

    ‘Another minute and I would of made it, you rats.’ (Lawrence Block, No Score)

    ‘Now if you would of done this we wouldn’t have any trouble.’ (Lawrence Block, No Score)

    ‘Need a social security card,’ he said. ‘You must of had one, I guess.’ (Lawrence Block, Chip Harrison Scores Again)

    ‘Guess they must of been chafing you some on that bus ride.’ (Lawrence Block, Chip Harrison Scores Again)

    ‘You might not of noticed yesterday but he’s only got one hand.’ (Ron Rash, The Cove)

    ‘Would he of died?’ (Alison Bechdel, Fun Home: A Family Tragicomic)

    ‘Pete should of told me,’ he said. (Donald Westlake, Good Behavior)

    ‘Okay,’ Dortmunder said. ‘Could be worse. She could of been wearing her habit, right?’ (Donald Westlake, Good Behavior)

    ‘Wound up, it took him forty-eight years to serve a ten-year sentence that he should of got out in three.’ (Donald Westlake, Good Behavior)

    ‘She has on a pair of bikinis I couldn’t of got into when I was ten years old.’ (Elmore Leonard, Mr. Paradise)

    ‘We could’ve settled, the city pays out a few bucks, it wouldn’t of cost you a dime.’ (Elmore Leonard, Mr. Paradise)

    ‘You know what I sor?’ said the child patiently. ‘Well, the train must of stopped, see, and some little men with bundles on their backs got on.’ (Mavis Gallant, ‘Up North’, in The Omnibus of 20th Century Ghost Stories, edited by Robert Phillips)

    ‘You two might of settled down and had a nice baby or something.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘Maybe you should of looked around some more.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘He must of gone to the show.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘I shouldn’t of toog you id,’ Angelo breathed. ‘I got nerbous.’
    ‘It was all my fault,’ Mrs Reilly said, ‘for trying to protect that Ignatius. I should of let you lock him away, Angelo.’ (John Kennedy Toole, A Confederacy of Dunces)

    ‘I don’t think I’d of wanted to go down there even for the Grape-Nuts. But maybe if we’d’ve gone real fast . . .’ (Harlan Ellison, ‘Sensible City’, in The Dead that Walk, edited by Stephen Jones)

    ‘You could of killed someone!’ (Neil Gaiman, Death: The High Cost of Living)

    ‘There’s a lot of places round here you could of bin.’ (Neil Gaiman, Death: The High Cost of Living)

    ‘If she’d stuck around, I could of asked her advice. I bet she could of come up with somewhere to put you that no one would think of lookin’, not if you paid them ready money.’ (Neil Gaiman, Death: The High Cost of Living)

    ‘If you’d gotten into a fight with that swordarm of yours, there’d of been bodies all over’ (Kazuo Koike and Goseki Kojima, Lone Wolf and Cub, vol. 2: The Gateless Barrier, translated by Dana Lewis)

    ‘It ain’t right I wasn’t there because if I had of been there I would of known.’ (Flannery O’Connor, A Good Man is Hard to Find)’The other vics probably would have lived if Lewin hadn’t of made that play.’ (George Pelecanos, Shame the Devil)

    I should of thought of that my own self.’ (George Pelecanos, Shame the Devil)

    ‘If you’d gone in right away, you would of got him, none of this would of happened. . . . I’d of got off! You think I’d of stood around that roadblock for seven hours?’ (Richard Stark, Slayground)

    ‘That guy talks pretty big, Cory. We should of called his bluff right there.’ (Richard Stark, Ask the Parrot)

    ‘Everything screws up, it just gets worse and worse, we should never of got into this, we’re fuckups, that’s all, we’re just fuckups.’ (Richard Stark, Comeback)

    Might of slipped in and out, nobody the wiser, except we were already on the scene, account of Parmitt being gone.’ (Richard Stark, Flashfire)

    Couldn’t you of – oh, he was ignorant in his speech – couldn’t you of prevented it?’ (Hilary Mantel, Beyond Black)

    ‘I should of thought to bring a sun lounger, from the garden centre,’ Mart said. (Hilary Mantel, Beyond Black)

    ‘He could of been,’ her mother said vaguely. (Hilary Mantel, Beyond Black)

    When she provoked him and he was in a temper with her, he would say, count your blessings, girl, you fink I’m bad but you could of had MacArthur. You could have had Bob Fox, or Aitkenside, or Pikey Pete. You could have had my mate Keef Capstick. You could of had Nick, and then where’d you be? (Hilary Mantel, Beyond Black)

    He shouldn’t of been near enough . . . (Donal Ryan, ‘Aisling’, in A Slanting of the Sun)

    Stupid idea anyway I dont think he ever wud of really done it. (Paul Murray, The Bee Sting – this example is from a teenager’s text message)

    But if she hadn’t of drank she would never have seen him at all and better that she was there she thought where she could at least try to keep some grip on him before he lost the run of himself completely (Paul Murray, The Bee Sting)

    Lar thought about it They must of gone out on a job he said (Paul Murray, The Bee Sting)

    I wonder what kind of life you might have had, if you hadn’t of been dragged back here. (Paul Murray, The Bee Sting)

    I paid a man to write it he says He must of never sent it at all (Paul Murray, The Bee Sting)

    I wish someone had of told me you croak into his shoulder (Paul Murray, The Bee Sting)

    Lars frowns Choosing his words He didn’t think you should of married Dickie he says (Paul Murray, The Bee Sting)

    U SHUD OF TOLD ME I CUD OF SHOWD U AROUD!!!! (Paul Murray, The Bee Sting, text message)

    ‘Hell, if I knew I was sitting on a gold mine, I’d of sold ’em a long time ago.’ (Jim Dodge, Not Fade Away)

    ‘And he couldn’t of loved me because he took away my kid, he’s off someplace where I can’t never see him.’ (James Baldwin, Another Country)

    ‘But I would of died for my kid, I wouldn’t never of let anything happen to him.’ (James Baldwin, Another Country)

    ‘I couldn’t of done nothing else,’ he cried, ‘what else could I of done? Where could I of gone with Esther, and me a preacher, too? And what could I of done with you?’ (James Baldwin, Go Tell It on the Mountain)

    Must of had a heart attack or something!?’ (Jamie Hewlett and Alan Martin, Tank Girl One):

    A curious example in Jim Nesbit’s novel Lethal Injection, where a character says “would’ve of”. My first thought was that it was a copy-editing or proofreading fix that stopped halfway: changing “would of” to “would’ve” and neglecting to delete the “of”. But a search online shows occasional analogous examples in unedited writing, and adjacent discussion on Language Log, so it may well be authentically dialectal:

    The example below, from alt-manga historian Ryan Holmberg’s The Translator Without Talent, is from The Marvel Times, a pretend-newspaper about comics that he created on his twelfth birthday. So its must of is probably not deliberate and also completely forgivable:

    Such phrases appear often in Cormac McCarthy’s novels. Here are some from Cities of the Plain, all used in dialogue:

    You’d never of knowed it though.

    I wouldn’t of wrote home for nothin.

    Looks like they’d of learned to stay out of it.

    Johnny if he hadnt of found that girl would of found somethin else.

    And there was nothin any mortal man could of done to of stopped it.

    And from Blood Meridian:

    No, No, he said. I mean ye was lost to of come here.

    It might of been a mule.

    Somebody ought to of pickled it a long time ago.

    Must of been a thousand indians in there all settin around.

    He appears to of spoke for hisself.

    I couldnt of learned it off ten dutchmen.

    Him and the governor they sat up till breakfast and it was Paris this and London that in five languages, you’d of give something to of heard them.

    Don’t you know he’d of took you with him? He’d of took you, boy.

    Glanton spat. Ort to of shot that one too, he said.

    Well, he said. I’d of thought any damn fool could saw the barrels off a shotgun.

    That old boy you bought them off of might of said they was injins but that dont make it so.
    The man didnt answer.
    Them ears could of come off of cannibals . . .

    You wouldnt of lived anyway, the man said.

    And from All the Pretty Horses:

    They might as well of, he said.

    Otherwise I’d of been born in Alabama.

    …it was a mistake not to of told you.

    But if it hadnt of been for her I wouldnt of made it.

    He might well could of

    Might well could of is also a nice example of a double modal. The [modal]-of construction is used frequently throughout Chris Cleave’s remarkable novel Incendiary:

    She was like that was Mena. Philosophical. I’d definitely of killed myself if it hadn’t of been for her.

    If you could of looked in my eyes you’d of seen the same thing I shouldn’t wonder.

    I wouldn’t of come near you I’d never of let you touch me you should be ashamed.

    Most notably in this exchange between two people only one of whom uses it dialectally:

    – He would of said something.
    – Maybe he wouldn’t have.
    Wouldn’t you of?

    A remarkable example in A Gate at the Stairs by Lorrie Moore uses it without a preceding modal, in the speech of a young child:

    ‘You got brown eyes,’ she said. ‘I of brown eyes.’

    Searching the Corpus of Contemporary American English for the string would of [v*], where [v*] is a verb, produces the graph below. It shows that the of-form’s predominant setting is fiction, usually ‘would of been’, and it also shows up in transcription of actual speech, as in the academic and newspaper instances. You can click through the image to view examples, sources, and further information at COCA.

    The magazine data are false positives (‘we’d have a better chance of achieving a breakthrough in quantum gravity than we would of figuring out how to reliably connect with teenagers’), but you get an idea of the construction’s low frequency and particular genre distribution.

    Plotting could of [v*] usages over time, using the related Corpus of Historical American English, suggests the construction may have peaked. Or is that just wishful thinking? Again, you can click on this graph for details, or open it in another tab.

    Of 1000 occurrences of could/would of in the Oxford English Corpus, about 850 are from ‘representations of direct speech (mostly from the Fiction domain, but also from interviews and courtroom transcripts)’. That leaves 150 genuine written instances of could/would of, compared with 4 million examples of standard could/would have. I can’t help picturing a global battalion of editors keeping it firmly at bay.

    The of-form is not frequent in edited prose, but it appears quite often in casual writing and it has been around a while. Does that count for much? MWDEU says its prolonged use has ‘not made it respectable’, and recommends avoiding it – including in transcriptions of real speech, since ’ve serves the purpose equally well. I agree, and I think if someone explicitly says of, and stresses it, that might warrant a ‘[sic]’.

    Regular readers know I like to make room for literary effect and poetic licence, but I have never warmed to this mistake. Every time I see it – be its use naive or intentional – I want to fix it. Authenticity of dialect and character are all well and good, but I think the main effect of the deliberate usage in edited prose is further uncertainty and error (not to mention irritation, in some quarters). What do you think?

    Updates:

    Years after writing this, I’ve softened considerably on the modal-of construction. This is partly because of exposure to its use by so many great writers, and also because it’s a good example of language change – a natural, essential characteristic of a living language. See my post on reconciling descriptivism with editing for more discussion.

    I’ve come across many more examples in books, and have added them to the sets above and below. @desktopenglish on Twitter drew my attention to this BBC article that quotes a footballer saying he ‘Shouldn’t of reacted the way I did’.

    What sounds to me like a good audio example comes from author Zadie Smith on the Adam Buxton Podcast. This link should cue the player automatically at 15:50, but if it doesn’t, that’s the time stamp. The relevant exchange is as follows, discussing Smith’s father:

    Smith: He was very uptight about time, yeah.

    Buxton: It rubbed off on you.

    Smith: It must of, yeah.

    Medievalist Lucy Allen found the line ‘For methowte I wold not for my life a sen it fallen’ in a 14thC religious text, The Shewings of Julian of Norwich. Translating it as ‘I thought I would not for my life of seen it fall’ [underlines mine], she writes: ‘it’s always fun when you notice something in a medieval text that is a dead ringer for one of the “modern” mistakes that horrify the pearl-clutchers’.

    David Crystal adds further historical commentary in his book Making Sense: The Glamorous Story of English Grammar:

    On 5 September 1819 the poet John Keats sends an apologetic letter to his publisher John Taylor, in which he writes:

    Had I known of your illness I should not of written in such fierry phrase in my first Letter.

    ‘Should not of written’? From such a great poet? It must have been just a slip, because later on in the same letter he writes ‘You should not have delayed.’ What interests me is to find this confusion 200 years ago. It isn’t just a modern thing, as some critics say. That identity in pronunciation between the preposition of and the unstressed form of the auxiliary verb have has been around a long time.

    Morph, a linguistics blog by the Surrey Morphology Group at the University of Surrey, has a great post on different aspects of the modal-of usage: ‘What’s the good of “would of”?’

    Lots of examples in Anne Tyler’s If Morning Ever Comes, spoken by several different characters (of different ages, backgrounds, and ethnicities):

    ‘You mustn’t of been but twelve or so but I remembered.’

    ‘You shouldn’t of mentioned breakfast, boy,’ he said.

    ‘Course I think he could of made a better choice in wives, but then Sally’s right pretty and I reckon I can see his point in picking her.’

    ‘You know, when I was a boy we’d of been plumb through town by now.’

    ‘If we’d of known,’ she said, ‘I’d of cleaned up house a little.’

    ‘Folks tell me I take too good care of him, so it can’t of been that he got too cold. Though he is right much of a puddle-wader, that could’ve done it.’ [Note nearby use of could’ve.]

    ‘I don’t guess my letter would of made any change in him one way or the other.’

    ‘If I’d of married Jamie,” she said, “I would of had a different family.’

    ‘Well, if it hadn’t of been her, it’d been someone else.’

    ‘She mustn’t of seen us.’

    Ross Macdonald also makes regular use of the construction:

    ‘If they knew they had a buyer, they might of stayed in business to accommodate you.’ (Ross Macdonald, The Blue Hammer)

    ‘I wish I could of died instead of him.’ (Ross Macdonald, The Blue Hammer)

    ‘The other man took them, he must of.’ (Ross Macdonald, The Galton Case)

    ‘He must of got away.’ (Ross Macdonald, The Galton Case)

    ‘He must of fell down on the knife and stabbed himself.’ (Ross Macdonald, The Galton Case)

    ‘He would of killed him too.’ (Ross Macdonald, The Galton Case)

    ‘When Culligan came marching out, armed up to the teeth, you could of knocked me over with a ‘dozer.’ (Ross Macdonald, The Galton Case)

    ‘Lucky for him I was out, or I’d of shown him what’s what.’ (Ross Macdonald, The Galton Case)

    ‘You were just a tiny baby, but that wouldn’t of stopped him.’ (Ross Macdonald, The Galton Case)

    As does Elmore Leonard; these are from The Hot Kid:

    Emmett Long kept looking at him. ‘You had a gun you’d of shot me, huh?’

    I’d of shoved the ice cream cone up his goddamn nose.’

    What Oris did, he got mad, changed the name of the company from Busy Bee Oil & Gas – a cartoon bumblebee in the trademark they’d of had one day – to NMD Oil & Gas, standing for No More Dusters, and worked a year as a driller to restore his capital.

    ‘The only one I told was Emmett,’ Carl said. ‘It had to of been Crystal told the papers.’

    She had to wonder if she had been here would he of recognized her, and bet he would’ve.

    I’d of arrested him he’s walking in the door,’ Lester said.

    Franklin was shaking his head. ‘I’d of seen ’em.’

    ‘I told him he shouldn’t of left the key in it.’

    ‘She looked at him again with a faint smile. ‘I would never of suspected.’

    ‘The first remark out of his mouth, I’d of pulled and killed him where he stood.’

    She’d of given me the choice of taking a chance with Teddy or being locked up.’

    ‘She wouldn’t of started breakfast if they weren’t all downstairs near ready to eat.’

    ‘Jack’s a talker,’ Carl said. ‘He’d of thought of a reason to go alone, pick up a bottle? And Tony’s polite, he would’ve said don’t steal the car, okay?’

    ‘No, he couldn’t of known that.’

    ‘Jack Belmont wouldn’t of left with bullets in his gun.’

    The minute Jack wasn’t looking, like taking a leak or something, she’d of run out of the house to find a cop.

    But Nancy knew who he was, so so the kidnapping wouldn’t of worked.

    ‘If I hadn’t decided to step back inside to answer the phone, I’d of missed one of the great opportunities of my career as a journalist . . .’

    Richard Stark, already quoted above, has half a dozen examples in his first novel, The Hunter:

    ‘If Art wanted to see you, he’d of told you where to find him.’

    Stegman blinked. ‘He must of believed me.’

    ‘His wife must of known it, but she never told me.’

    ‘Five minutes later,’ the owner told him, ‘you’d of been out of luck.’

    ‘…it must of meant something, that’s all.’

    ‘I wouldn’t of believed it.’

    The spelling occurs often in Kent Haruf’s novel Plainsong:

    He should of taken it last year.

    She might of come down and gone back, Ike said. She might not of too.

    She must not of stuck.

    She must of went home, Mr. Guthrie.

    You shouldn’t even of touched that.

    Well, he might of went to Denver, Raymond said. Then he might of went back to the Rosebud in South Dakota.

    I should of called during these months, I know.

    You could of done something yourself too, you know, he said.

    Something must of happened to her, Harold said. She must of got taken off or something.

    I can’t think of anything we might of did.

    You don’t even know where he might of took her for sure.
    He might of landed her in Pueblo or Walsenburg.

    We didn’t know what we might of done to cause you to want to leave here like that.

    He better not of hurt her permanent, Raymond said.

    And in Pete Dexter’s novel Train:

    “They must of left the sprinklers on all night,” the fat man said after he got back in control of his deportment again.

    “He must of got home somehow,” Train said.

    “She all convulsed the whole time they going through the house; she keeps saying, ‘Oh, no, he couldn’t of did that….'”

    Train began thinking more and more that the world might of decided to let him alone.

    Now he thought about he, she might not of even noticed the table leg if he hadn’t dropped it and woke up the dog…

    Train thought it must of reminded him of that feeling when he was hit by that car and rolled across the road.

    Then, if it was the right officer, they might of just carted Mayflower out of there, just because she was pretty, and then took his ass out into the desert and left it.

    “One of them must of got up here and took it,” he said.

    It seemed like Mr. Cooper must of told him where he come from, or how else would he know?

    Must of bought his clothes in the boy’s department.

    Melrose might of been trying to say something too, and Train distinctly saw his jaw slide out from under his face.

    It came to Train the Plural must of heard her before she even come out of the double-wide, that he must of known from how she was walking that she was mad.

    “A blind man,” he said, “We should of sold tickets.”

    Walter Tevis’s The Hustler, from multiple characters:

    ‘You should never of quit going to Sunday school.’

    ‘I already watched you lose – watched you lose to a man you should of beat.’

    ‘And if I hadn’t already paid for it I could of with the money I won in side bets.’

    ‘They couldn’t of helped but hear of me.’

    ‘I should of let that guy quit, Charlie, like you told me.’

    #books #corpusLinguistics #couldOf #dialects #dialogue #etymology #eyeDialect #fiction #grammar #language #linguistics #literacy #modalVerbs #modals #phrases #reading #schwa #speech #speechErrors #spelling #transcription #typos #usage #verbs #writing

  16. In a complete departure from my usual meanderings, I’m going to present an in-depth comparative review of eight iOS Mastodon/Fediverse apps. (Video: ‘What is the Fediverse?’) Given that I’m not alone in moving to Mastodon from Twitter at the moment (whether tentatively or bridge-burningly), I’ll also draw comparisons with the official iOS Twitter app, noting points of comfort and familiarity as well as things that might jar a little at first. But please bear in mind that Mastodon isn’t meant to be a clone of Twitter. I’ve chosen these eight apps in particular simply on the basis that they have a rating of 3 stars (out of 5) or higher in the iPhone App Store (in fact, all of them are rated 4–5 stars):

    *link to App Store

    Skip to the end for a tl;dr summary. (This is a very long post.)

    Initial considerationsHow much does it cost?

    First things first, you might want to consider how much you’re willing to spend. Fortunately, only Mast (£2.49, €2.99) and Toot! (£3.49, €3.99) will cost you actual money (so you could, like me, try all eight apps for £5.98). If you decide you like an app, and you want to (and have the wherewithal to) support the developer, the two paid apps along with Mercury and Tootle have in-app purchase options for tipping them (with a small amount of bonus functionality unlocked in the case of Mercury).

    Will it still be around next year?

    Before getting too comfortable with an app, you might also want to consider how likely it is to continue being maintained. All these apps work on the latest iPhones, but the timeline below shows that some haven’t been updated for a while, including the venerable Tootle, which was the only one of these I had used until this month! (I first toyed with Mastodon in 2018, when none of the others were around – including the official Mastodon app, which is actually the baby of the bunch.) Having said that, if you do have to move from one app to another at some point in the future, it should be at most a minor irritation, as long as you don’t make heavy use of app-specific features that store data on your device (such as Mast’s saved hashtags, or draft toots in those apps that support them).

    Timeline showing periods from the first version released on the App Store to the most recentAnd what about other platforms, btw?

    Although I’m talking about iOS (i.e. iPhone apps), all of these also work on iPad. (Mercury works in iPhone-emulation mode.) Beyond the Apple ecosystem, both the official Mastodon app and Fedi are available on Android – but other apps such as Tusky seem to be more popular there. On the desktop, there are a few apps available (including a macOS version of Mast, which felt unpolished and buggy when I tried it). The standard multi-column Mastodon web interface – perhaps tailored slightly by your chosen instance – is probably the nicest way to connect to the social network when you have the luxury of a large screen.

    First impressions

    Never judge a book by its cover, or an app by its icon. That doesn’t mean I’ll put up with ugliness! Fedi gives us a zero-effort, bland, corporate ‘productivity app’ icon, so it’s not winning any prizes here (disclaimer: there are no actual prizes), and nor is tooot, with its oops-I-forgot-to-replace-the-placeholder look. The icon for the official Mastodon app looks ok, perhaps a little too like the official Twitter app’s icon, using a flat white logo on a blue background, which would be the same colour as Twitter’s if it weren’t for the addition of a slight gradient. (And it’s obviously an elephant rather than a bird.) Mercury’s icon captures, um, the blobbiness of liquid metal. Ok, that’s a charitable guess. It is one of four apps, though, that allow you to choose variations on the theme, and this redeems it (slightly). Two of the others are Mast and Metatext, both of which are reasonably smart elephant logotypes. That leaves Tootle, whose cute little elephant looks a little weary, but then it is relatively long in the tusk. The winner for me, another one with the option of picking your own variant, is Toot!’s cheery cartoon mastodon! Social media should be fun – but if you’ve come from Twitter, you can be excused for having forgotten that!

    Getting started

    That’s enough of a preamble. Although I’m going to focus mainly on what I think are the things you’ll want to do most of the time you’re using an app, it’s worth looking briefly at how easy it is to get started, including setting up an account on an instance, and connecting to an existing account.

    (If I’d thought of this in advance, I’d have noted what it was like at the time. Now I’ve had to log out of both my Mastodon accounts on all eight apps to remind myself! It took me a while to work out that I had to do a firm press on an account to bring up the option to remove it in Mast. And I actually had to delete and reinstall both Mast and Toot! because they insisted – not so unreasonably in normal use – on remaining logged in to at least one account!)

    On opening the apps for the first time, you’ll be greeted with varying levels of friendliness and/or intimidation.

    FediMastMastodonMercuryMetatexttoootToot!Tootle Initial screens for the eight apps (following any splash screens)

    Metatext and Toot! both introduce the brand-new user to Mastodon. The first app, albeit after an unnecessarily laboured fade-in of the welcome screen, has a short embedded YouTube video (produced by Mastodon). The second app has a brief text introduction, as well as a link at the bottom of the screen that will pop you out of the app and take you to that very same video on YouTube.

    Mercury’s ‘Find and join a mastodon instance’ link actually links to Mastodon’s home page – which slightly unfortunately also prompts you to open the official app if you have it installed! I suppose you will eventually find lists of instances once you’ve read or skimmed over the introductory blurb.

    The official Mastodon app’s ‘Get Started’ button (the first of only two on that screen) will take you to a screen in which you can choose from lists of instances, sorted thematically, and there’s a little explanation there too.

    Fedi appears to suggest the instance fedi.app, but if you accept that default, and tap any of the three buttons, you’ll get a horrible red error box at the top of the screen – with raw HTML code for the first two buttons! So don’t do that! (It does go away, but it doesn’t inspire confidence.) If you ask for help choosing an instance, the lack of polish continues to shine through (um, no, that’s not quite right). You’re landed on a GitHub documentation page! (GitHub is a website used by software developers.) When you select the text box, you do get a list of suggestions. The documentation reveals that the developers of Fedi favour Pleroma (an alternative to Mastodon), and the instances they recommend skew in that direction, including some very nasty ones you may have heard of, such as Gab and Spinster (which most instances in the Fediverse block, as indeed do some apps themselves).

    The other apps – Mast, tooot and Tootle – don’t offer any explicit guidance on what to do, but assume you know you want to connect to an instance (you do, by the way!). tooot has some mystery boxes labeled ‘Name’, ‘Users’, ‘Toots’ and ‘Universes’, whose purpose will only become clear when you type an instance URL into the text field. It also slightly oddly offers app settings at this point. Worst for shaking confidence is the wonky English: ‘Logging in process uses system broswer [sic] that, your account information won’t be visible to tooot app. Read more privacy policy’.

    A note on terminology

    There are a number of different names for things in the Mastodon world, and the apps vary in their choice of terms. (Some even have settings that let you choose the ones you prefer.) The instances that you can sign up to are also known as servers. Toots (the Mastodon equivalent of tweets on Twitter) are also known more prosaically as posts, and officially as statuses. Toots can be favourited or liked (with stars, hearts or neither). They can also be boosted, reposted or reblogged (the equivalent of retweeting). A stream of toots is either a timeline or a feed. As on Twitter, you can have a profile pic, but these are sometimes called avatars (a term I prefer to avoid because of its appropriation from Hinduism).

    Screenreader accessibility (part 1)

    Before going any further, I should say that Toot! and Tootle are sadly likely to be unusable by low-vision users who rely on being able to increase the text size on their iPhones (rather than using screenreaders). Unfortunately, these apps don’t respect the settings on your phone, and don’t offer any way to change the font size within the app either. The developer of Toot! has known about this issue since 2018, but it clearly hasn’t been a priority to fix it.

    I’m not a screenreader user, but I have done just enough playing around with VoiceOver (the iPhone’s built-in screenreader) to have at least some idea of what’s useful. Or at least I can spot when app developers have done things really badly! But I haven’t explored every aspect of these apps using VoiceOver, and I can only give a hint of how accessible these apps are.

    The opening screens for Mercury, Metatext, Toot! and Tootle are all straightforwardly navigable from top to bottom using VoiceOver. Mastodon’s opening screen takes you straight to that ‘Get Started’ button. tooot’s opening screen works fine too, with the proviso that there’s no explanation of the mysterious labels beyond the ‘Login’ button (but these are as much of a mystery for those of us using the visual interface!).

    Mast’s opening screen is navigable, but unfortunately highlights several user interface elements that are hidden visually and intended not to be seen or active at this point. You need to skip past no fewer than seven invisible and unusable elements – five buttons, a heading and a list – to get to the ‘Instance name’ text field. Not great.

    Fedi’s VoiceOver support is haphazard from the start. On the opening screen, the label for that all-important instance text field is widely separated from the text field itself, and the app gives unnecessary description of a ‘screenshot’ before getting into the functionality. I did actually play with Fedi properly, using a couple of instances, but it didn’t have many redeeming qualities. I’m so unimpressed by the app that I don’t think it’s worth labouring descriptions of how well it behaves elsewhere. It is therefore eliminated at this stage. (I wasn’t planning to have elimination rounds, but the app forced my hand!)

    Signing up or logging in to an instance An instance’s login page

    I said a few paragraphs ago that I’d look briefly at this aspect, but it seems I don’t do briefly at the moment! Fortunately, all of the apps share the same sign-up/login process, as this is delegated to the instance’s login page (which generally looks more or less the same from instance to instance – I’ve only seen minor customisations like colour changes).

    If you haven’t already created an account on your chosen instance, you can choose the ‘Sign-up’ link here, which takes you to joinmastodon.org. Otherwise, you just need to enter your email address and password, and you’ll be asked to authorise the app to access your account. If you’ve set up two-factor authentication on your instance of choice, there may be another step here. And depending on the instance, you may also have to agree to abide by the instance’s rules.

    There are some app-dependent wrinkles (of course!).

    The official Mastodon app offers an alternative sign-up route, which happens if you tap the ‘Getting started’ button instead of the ‘Login’ button – here you are presented with the instance’s rules, and supply your display name, chosen username, email address and password within the app.

    In Metatext, after you’ve typed the name of an instance, the ‘Log in’ button may be joined by another button, depending on the instance: ‘Request an invite’, in the case of an instance that requires you to be invited; ‘Browse’, in the case of instance that allows public browsing of its Local timeline and users; or ‘Join’, in the case of instance you can’t browse publicly but can sign up to without being invited.

    Tootle also allows you to browse publicly accessible instances, using it’s ‘Take a look’ link, though this is unfortunately always active, and just pops up an unhelpful ‘Oops, something is wrong’ error when you try to look at an instance that doesn’t allow public browsing.

    Toot! is very helpful in some ways, but its sign-up/login process feels a little tortuous at first (or at least it works very differently from the other apps). When you pick an instance, you are shown the instance’s rules and have to say you agree with them before proceeding. If the instance you have chosen allows public browsing, you then see its Local timeline, and can switch to its Federated timeline. (I’ll explain these later.) If on the other hand the instance you have chosen doesn’t allow public browsing, you’ll see a screen labeled ‘Local timeline’, but with no toots and an unhelpful message about ‘errors when loading’. In either case, if you want to sign up or log in, you need to take an extra step: the simplest way is to tap the dimmed ‘Home’, ‘Toot’ or ‘Notifications’ button at the bottom of the screen.

    More than one instance?

    All the apps reviewed support accounts on multiple instances. In four of them, to add an instance, you start with the same action used to switch between your instances. In Mastodon, Mercury or tooot, press and hold the ‘Profile’ button or profile picture at the bottom of the screen. In Tootle, tap the display name/instance name at the top of the screen.

    In Metatext, you switch instances by pressing and holding the profile picture at the top, but to add a new one, you need to tap it instead and then choose ‘Accounts’. In Mast, you switch instances similarly by pressing and holding the ‘Profile’ button at the bottom, but adding a new one is a little more convoluted: tap the ‘Profile’ button, tap the cog at the top left, scroll down and choose ‘Accounts’.

    Toot! is a little different. To add an instance, tap the ‘…’ at the top right, and choose ‘Servers’. But to switch instances, use the instance switcher button at the bottom right: either press and hold, or swipe left or right for a nice rotating transition between screens for different instances.

    Both Metatext and Toot! allow you to treat a publicly browsable instance the same way as the instances you’re signed up to, as far as it makes sense to do that, which could be quite useful. Tootle doesn’t quite treat read-only instances on an equal footing, but allows you to add ‘tabs’ for such instances at the bottom of the screen. Mast also allows you to add what it calls ‘instance timelines’, hidden away under ‘Explore’.

    Exploring the FediverseTimelines

    There are three basic timelines in Mastodon:

    • Home. This is where you’ll see public toots (and possibly other kinds of posts) of all the people you follow, in the order that they’re posted. It’s more like Twitter’s ‘Latest tweets’ than its opaquely generated ‘Home’ view. (Note: the Home timeline doesn’t exist if you’re browsing a publicly browsable instance without logging in.)
    • Local. Here you can see all the public toots on your instance, again in chronological order.
    • Federated. This timeline is like the Local timeline except that instead of just the public toots on your instance, it includes the public toots on all instances that your instance is currently federated with. Unless you’ve chosen a very isolated instance, this is a fast-flowing stream of toots.

    If you have just signed up on an instance, your Home timeline will be dispiritingly empty. No algorithmically suggested people to follow or anything like that. You’re in charge here! So you probably want to start by looking through your Local timeline – or the Federated timeline if you’re feeling brave!

    In Mast, the three timelines are available under ‘Feed’, and are labelled with tabs across the top of the screen as ‘Home’, ‘Local’ and ‘All’ (i.e. Federated).

    Metatext works similarly, except that the button at the bottom is labelled ‘Timelines’ rather than ‘Feed’, and the Federated tab is labelled ‘Federated’. It’s also nice that you can swipe left and right between the three timelines.

    tooot devotes two buttons at the bottom to timelines: the house button is for the Home timeline, labelled ‘Following’, while the globe button is for a view with two tabs, ‘Federated’ and ‘Local’, and again you can swipe between them.

    Toot! also reserves the house button for the Home timeline. To access the Local or Federated timeline, tap the instance switcher. You can choose between the two at the top of the screen.

    Tootle has separate buttons on its configurable tab bar for the three timelines.

    In Mercury, you switch between timelines by tapping on the ‘Timelines’ button, which reveals a slide-in menu, including the three timelines, and also a lot of other things that aren’t really timelines.

    It may surprise you to find that there is no Federated timeline in the official Mastodon app, and even the Local timeline is hidden away under search, disguised as ‘Community’. Lead developer Eugen Rochko (who also runs the large instance mastodon.social) has tried to justify this decision, but I’m not at all convinced, and for me it counts as this app’s biggest negative point.

    Direct message timelines

    Direct messages are really just toots in Mastodon. So they appear in your Home timeline along with everything else. Their distinguishing feature is simply that they have their visibility set to direct (as opposed to public, unlisted or followers). This means they are visible only to people mentioned in them.

    Nevertheless, most of the apps have a facility to show you just those toots with this property. Mast and Metatext have a ‘Messages’ button, Mercury has a ‘Conversations’ button, and Tootle has a ‘DM’ button. Toot! has a ‘Direct messages’ view accessible from the ‘…’ menu at the top of the screen.

    Otherwise, direct messages are highlighted in various ways in your Home timeline: Mercury and tooot use an envelope icon, and change the boost button to a padlock and a subtly dimmed boost icon respectively (since you can’t boost direct messages). Metatext and Tootle show their envelope icon in place of the boost button. Toot!, by default, styles direct messages in conversation bubbles, and omits the boost button. It also notifies you of new direct messages using a little profile pic circle at the top right.

    Mast uses a paper aeroplane icon for direct messages, but Mastodon doesn’t distinguish them from toots with other visibilities at all. Both these apps confusingly retain an active boost button. In Mastodon, this appears to work momentarily and is then immediately undone, but since you can’t tell otherwise that the toot is a direct message, this could be very frustrating. In Mast, it also seems to work, and updates the number of boosts to 1. But this is only a display bug (and unboosting straightaway leads to the number of boosts being −1). If you go to a different view and return, everything is fine.

    By the way, Mast gets completely hung up if you send a direct message without any mentions – though why you’d do that only I can guess!

    Screenreader accessibility (part 2)

    Now, I have to concede ignorance about how people actually use screenreaders to navigate complex structures like Mastodon (or Twitter) timelines. So I may have approached this somewhat idiosyncratically! For one thing, I only tried the flat navigation style, whereas I can imagine grouped navigation being better in some situations. I did switch to the container rotor to move between major elements of the user interface with vertical swipes. Before I tried this, I had a lot of difficulty getting around parts of all the apps.

    As a baseline, I compared the apps’ behaviour when selecting a toot in a timeline and letting VoiceOver ‘read all’ (default: two-finger swipe down), without considering how easy it was to select that first toot. Mastodon, Metatext and tooot all did a good job, with about the right amount of detail for an overview. Toot! felt ever-so-slightly verbose at times, but was basically fine. Mercury gave slightly more information than appeared on screen, and didn’t quite keep its visual and audible timelines in sync in some minor respects. Mast would have been ok, except that content warnings were completely ignored, which feels like a major failing. Tootle was fine with content warnings, which it just read as labelled buttons, but unfortunately it read everything else on the screen as well, which made browsing the timeline in this way very tedious.

    Navigating through the timeline, element by element, Toot!, tooot and Tootle (from best to worst) all fared poorly. The container rotor didn’t often help, as the heading, timeline and button bar are not properly connected in the apps, and I couldn’t say how easy they would be to use at all for someone who relies on a screenreader. (I couldn’t access the button bar in any of these apps without actually tapping on it.)

    Mast had one or two peculiarities. Saying how old a toot was, the ‘h’ for hours was read as ‘aitch’, the ‘m’ for minutes as ‘metres’, and the ‘s’ for seconds as a plural ending! Content warnings, as noted before, were not treated correctly, with VoiceOver simply diving in and reading the visually hidden content.

    In Mastodon, content warnings did at least kept stuff hidden – just a little too well though!

    Mercury was really awkward to navigate consistently – I couldn’t really work out the logic at all, which was very frustrating. Sensitive content was sometimes read out, while content warnings clung onto their secrets a little too tenaciously.

    Some useful pieces of information, such as indications that toots are direct messages or have some other non-public visibility, seem to be omitted from VoiceOver support in most apps. Metatext fared better than most here.

    Multilingual support is frankly appalling across all the apps here, and I suspect this is a longstanding problem with VoiceOver on iOS that simply hasn’t been addressed. What is frustrating is that the other screen-reading tool in iOS (‘Speak Selection’/‘Speak Screen’ in the ‘Spoken Content’ accessibility options) does a pretty good job of identifying languages and reading toots in a timeline accordingly. That tool, however, isn’t interactive, and simply reads until you tell it to stop. This isn’t just an issue with Mastodon apps, but equally with the Twitter app, and indeed any app that doesn’t have content explicitly marked for language (which would be normal good practice on the web).

    In summary, VoiceOver accessibility isn’t great, with all the apps having failings in this area. I hope the developers will pay more attention to accessibility in future releases. I was going to say that the web interface is probably a better bet in the meantime, but I just tried it and it seems even worse! 🙁

    Searching and browsing

    Besides connecting with others on your instance’s Local and Federated timelines (which, of course, you can’t do if you’re using Mastodon!), you’ll probably want to explore further afield, at least at first.

    All the apps have a search function, accessed in most cases using the familiar magnifying glass button (except in Toot!, where you need to tap ‘…’ and choose ‘Search’). If you enter a search term, you’ll usually get matches of people (the term is found in profiles in federated instances), hashtags (the term is found in hashtags that have been used at some point) and toots (the term is found in toots in the Federated timeline). You can choose between these using tabs in Mastodon, Mercury and Metatext. (In Mercury, you need to tap ‘search’ separately for each tab, which is slightly irritating.) Mastodon and Metatext also have an ‘All’ tab, which shows a selection of search results from each category, and this is essentially what tooot and Toot! show in their tab-free search results screens.

    For hashtag results, Metatext and Toot! display little recent-usage graphs alongside each hashtag found.

    In Mast, the search function in the current release is almost completely broken: after tapping the second magnifying glass, or pressing and holding the first, you get to the search field. It has tabs for ‘Toots’ and ‘Users’, but only manages to display two or three toots in an unscrollable list. If you tap ‘Users’, the search closes!

    Tootle’s search is a little different, with no ‘All’ tab, but tabs (across the bottom) labelled ‘MyToot’, ‘Hashtag’, ‘Account’ and ‘Instance’. The middle two are self-explanatory, as is the last (though this addition doesn’t seem very useful). As far as I can tell ‘MyToot’ finds the search term in toots that you have posted, boosted or favourited.

    Besides search functionality on their ‘Explore’ screens, Mast and Metatext let you browse profile directories for your instance – and in Mast, for instances federated to it too. This is the place to find the Local timeline in Mastodon too (‘Communities’).

    Mastodon, Mast and Mercury also have some slightly opaque additional features on their ‘Explore’ screens, including what seem to me to be un-Fediverse-like suggestions of accounts to follow and news items. I haven’t explored these further.

    Profiles

    There’s not a huge amount of difference in the usability of user profiles (and if you’re anything like me, you’ll spend a lot more time focusing on toots and threads than on people’s profiles). Coming from Twitter, most of the apps’ profile views will look fairly familiar, with a header image at the top, and a profile pic in a little frame beside the user’s display name and username. All the apps except Mercury, tooot and Tootle will enlarge the profile pic or header image if you tap on it, just as in the Twitter app. Mercury doesn’t show a header image when you’re viewing your own profile (but you can still edit it).

    Some of the apps use a square frame rather than the twitter-like round frame for the profile pic, and the header image varies from app to app in how it is cropped, so there’s no one-size-fits-all approach that will work here. Tootle breaks the mould visually here (or perhaps it’s fairer to say that it predates the mould!), with (a variable part of) the header image used as a background for the profile pic and the entire bio. This does unfortunately render some bios extremely hard to read. (Note that bios can be up to 500 characters in length, compared to Twitter’s 160.)

    Profile information

    Besides the bio, there may be a table of up to four rows containing user-defined information, possibly including links to websites, which can be ‘verified’ if they point back at the Mastodon account. This table usually appears just above or below the bio. But Mastodon hides it under an ‘About’ tab alongside ‘Posts’, ‘Posts and replies’ and ‘Media’). And Mast hides the individual rows of the table under its ‘Links’ menu item. Tootle doesn’t display this information at all. Of the apps that do, all but Mast and Mastodon indicate the ‘verified’ status of any web links. Only Toot! tells you when the link was verified.

    All the apps have some way of showing you if you’re following or requesting to follow the person, usually doubling up as the button to follow or request to follow them. Toot! is the exception: it states separately whether you’re following the person, being followed by them, or following each other, which is actually quite helpful. Mastodon and Mercury don’t show you whether or not the person is following you (though if they are, they will appear in your list of followers). Metatext only tells you if a person is following you, not if they aren’t.

    All the apps display the number of accounts the person follows, and the number of people following the account. All but Metatext and Toot! also display the total number of toots.

    Only three of the apps – Mast, Metatext and tooot – show the date the person signed up to the instance. Mast is slightly overzealous in reporting the time as well, which isn’t actually recorded and always comes out as 00:00:00 UTC (GMT)!

    If you have endorsed/featured a user (something you can only do in Mast or Toot!), you can see the endorsement status in their profile in Toot! This seems of limited use!

    Most of the apps use a very similar layout for your own profile and other people’s profiles (apart from things which only make sense in one context or the other). tooot is the odd one out here: for your own profile, instead of the bio and other information, it gives access to various lists/timelines and settings.

    Beneath the profile information, the apps display the user’s toots, most recent first (except in Mercury, where you have to tap on the ‘Toots’ option to view them on a separate screen). Any pinned tweets come before other tweets, except in Mast, Mastodon and Mercury. In Mast, there is a ‘Pinned’ menu item you can use to see these, which does feel a little awkward and counter to the idea of pinning things for everyone to notice.

    Mastodon, Metatext and Toot by default omit toots that are replies to other toots, and have a separate toots-and-replies tab for all toots. Mastodon and Metatext also have a tab for toots containing media. Mast and Mercury have separate galleries of recent media below the basic profile information, with links to the toots containing them.

    Interacting with a profile

    The thing you’re most likely to want to do after checking out someone’s profile is follow them. And all the apps have some kind of follow button (which may request a follow if the account is set to require approval of followers). Tootle’s follow button disappears after use. To unfollow, you need to use a menu item instead. In all the other apps, the follow button turns into an unfollow button.

    Although mentions are just toots that include a person’s username (beginning with @), and direct messages are just mentions with visibility set to direct, all the apps conveniently offer some means of doing one or both of these from either a button or menu item on a person’s profile. Offering both feels like overkill though, as you can easily convert either into the other by changing the visibility – public or direct – while composing the toot.

    Profiles in Mercury and Metatext have a notification bell that you can tap presumably to be notified whenever that person toots, though I haven’t tested this.

    Almost all the apps offer menu access to items that will be familiar from Twitter, principally mute, block, report and share. (Mercury doesn’t include block or report. Tootle doesn’t include report.) Reports go to the administrator of the instance the user’s account is on. Hopefully you won’t need to report or block users very often.

    If you use an instance’s web interface, you can add your own private notes to other people’s profiles. Unfortunately, such notes can be neither created nor viewed in any of the apps here. That’s a shame, as you could use private notes to remind yourself why you followed – or blocked – someone, say.

    Toots (and other posts)Interacting with timelines

    I’ll use the word timeline loosely here to include not only the chronologically ordered Home, Local and Federated timelines, but also lists of favourites and bookmarks, and lists of toots returned as the result of a search, or those under a profile. (But for now I’m only talking about lists of toots, so I’m not counting lists of notifications, hashtags etc.)

    MastMastodonMercuryMetatexttoootToot!Tootle The seven apps showing part of my personal timeline of toots

    All the apps display timelines in a way that will feel familiar to Twitter users, with newer toots above older ones. Tootle, however, also (consistently, but confusingly) carries this over to its display of threads, with replies above original toots. The remaining apps follow the convention used in Twitter, and have replies in chronological order below original toots in the display of conversations/threads.

    Mast and Mercury reduce visual clutter a little by eliminating the action buttons beneath the toots in this view. In Mast, these become visible in the ‘Detail’ view shown when you tap on a toot. In Mercury, they pop up beneath the toot when you tap on it. Toot!, as elsewhere in its interface, uses small caps text rather than icons, which looks quite stylish in my opinion.

    Moving through a timeline is completely intuitive, with scrolling just as you’d expect in an iPhone app. Tootle is slightly frustrating though, as the timeline comes to a disappointingly abrupt halt when you flick-scroll up or down. It feels as though it could do with an oil!

    As in the Twitter app, a timeline can sometimes have gaps in it, which you can fill in using a load-missing-toots button that sits in the gap. This button in Metatext or Toot! shows, by way of little arrows that rotate as you scroll the timeline, where the missing toots will be placed – either above the toot that is below the gap, or below the toot that is above the gap. This is incredibly helpful in reducing disorientation.

    A Toot! convo

    In most of the apps, tapping on an otherwise inactive part of a toot takes you to a detail view where you can see how the toot is connected to other toots – what it is in reply to, if anything, and any replies to it. Here is where toots with unlisted visibility show up, when they would be hidden from the Local timeline for instance.

    Mercury is the exception: as just noted, tapping on a toot brings up the hidden action buttons for the toot. You can then tap the conversation button to see the detail view (which has ‘replies’ and ‘thread’ subviews). As an alternative to using these buttons, in Mercury you can use swipe gestures: a short swipe to the left is the equivalent to tapping the conversation button; a long swipe to the left is equivalent to tapping on the favourite button; a short swipe to the right is equivalent to tapping on the reply button; and a long swipe to the right is equivalent to tapping on the boost button.

    These swipe gestures felt quite handy when I first came across them, but in many ways I’d rather see swipe to the right used as an equivalent to the back button, as it is in the Twitter app for instance. None of the apps do this.

    The way connections between toots are indicated in the detail view for a toot varies from app to app. Toot!’s indication of a conversation is particularly innovative, using (by default coloured) vertical connecting lines linking the profile pics beside the toots. Fragments of these lines are also visible above and below profile pics in a timeline, to indicate that the toot is in reply to something or has replies. Not quite sure yet if it’s just a gimmick, or something that’s actually useful. But there’s much about Toot! that feels playful, and makes using it feel comfortable and enjoyable.

    Viewing and listening to media

    There can be up to four images in a toot. Alternatively, there can be audio (with an optional thumbnail image), video with audio, or silent video (such as an animated GIF).

    Images, as shown in the screenshots, are dealt with in different ways by the apps, especially when there is more than one in a toot, and I’m not sure I could argue that any approach is better than the others. In Mercury, Metatext, Toot! and Tootle, alt text is displayed beneath (or sometimes partly overlaying) an image when it is enlarged. In Mast, you can only see the alt text by long-pressing on an image in the context of a toot (not when it is enlarged). As far as I can tell, Mastodon and tooot don’t display alt text.

    Audio in toots can be played by all the apps except Mastodon and Tootle. Tootle does, however, show the thumbnail image! Only tooot shows the image and plays the audio. In Mast and Mercury, note that there is no sound when your iPhone is in silent mode. (The same applies to videos with audio in those two apps.) Mast and Metatext have standard controls for moving to different parts of the audio in their full-screen audio plays. Mercury lets you play audio within the timeline, and has a slidable bar showing how far through the audio you are.

    Silent videos in a timeline play automatically on a loop in all the apps except Mast and Tootle. Tapping on a silent video in any of the apps enlarges it to the full screen width. Mast and Tootle use the standard iOS player for this, these two apps alone giving you controls for moving backwards and forwards through a silent video.

    Only Metatext has silent auto-play in the timeline for video with audio, and it moves particularly smoothly between full screen and in-timeline views for both kinds of video. Toot! also has fluid transitions for video, but doesn’t keep the place between different views. All the apps except Toot! use the standard iOS player for video with audio.

    Support for alt text with audio and video is patchier than for images (but I haven’t checked whether it is available in VoiceOver in either case). Metatext displays alt text for silent video only. Tootle shows the alt text for audio (for which it only displays the thumbnail!). Only Toot! displays alt text (in full screen) for audio and both kinds of video.

    Mastodon allows media to be marked as sensitive, so that it is hidden or (in the case of images) blurred by default. And it also allows toots to be flagged with a content warning, hiding the main text. In Mast, a toot with a content warning takes up as much screen space as it would if the whole toot were there: it is effectively covered by a labelled black rectangle. (This probably explains why the screenreader reads the covered text anyway.) A similar approach (but without screenreader issues as far as I’m aware) is taken by Mastodon, Mercury and Toot!, but the other apps use a variable amount of screen space for a toot depending on whether the content is shown or hidden. Metatext’s buttons for content warnings feel very intrusive, dominating the timeline. All the apps except Mast allow you to hide material again after revealing it if you wish.

    Interacting with toots

    Sometimes you’ll come across toots in languages that you don’t understand. Only Mast offers anything like the convenience of Twitter’s machine-translation option. I’m not sure what it uses behind the scenes, but it seems effective, and readily copes with toots that switch languages. (It can also translate bios in profiles.) Mercury offers a translate option for toots, but this opens a web page in Safari, with the text being provided to Russian search engine Yandex, which typically tries to translate the text into Russian in the first place! If the text contains an apostrophe, only the text before this is copied to the translation site. In Mastodon, Metatext and Tootle, you can select some text (e.g. in a toot in detail view) and use the iOS translate option. This is a little clunky, but better than nothing. tooot and Toot! only allow you to copy the whole text of a toot, which you could then paste into the translation tool of your choice. Not exactly handy though.

    All the apps have reply, boost and favourite buttons, which work pretty much as you’d expect. Metatext, Toot! and Tootle’s buttons have a bonus feature: if you long-press them, you get a menu asking which account you’d like to use to reply, boost or favourite. This is extremely convenient if you have more than one account. And in Toot!, you get the same menu when you tap on a button if you’re viewing an instance that you’re not logged in to.

    Composing toots and threads

    The toot buttons in tooot, Toot! and Tootle sit a little incongruously on the bar at the bottom of the screen (the other buttons there being for different views within the app rather than actions). Toot!’s button uniquely pops up a menu asking if you’d like to start with text, an existing image, or a photo taken using your phone’s camera. Given that most of us probably start with text most of the time, this feels like an unneeded extra step on the way to composing a toot. A minor quibble though. Mast, Mastodon and Mercury all have their toot buttons in the top right corner, while Metatext’s hovers over the bottom right corner, but not right at the bottom.

    Whether you are launching a completely fresh toot out of the blue or replying to an existing one makes little difference at this stage, except that replies are usually pre-filled with mentions of the person or people you’re replying to (not in Mast). All the apps have a box for you to type, paste or speak into. They all show either the number of characters you’ve used so far or the number remaining of the maximum 500. (I believe some instances allow 1000 characters here.) And all except Tootle have some way of indicating when you’ve gone over the limit. That’s because in Tootle, you simply can’t exceed the limit. If you’re typing, it won’t accept another character beyond the 500th. If pasting or dictating text would take you over the limit, none of what you’ve pasted or dictated is included.

    Tootle also counts characters a little differently: like Twitter, it treats emojis as two characters long (because their Unicode representations do in fact take more space to store). All the other apps (correctly for Mastodon) treat emojis as single characters. Tootle is joined by tooot in erroneously counting other Unicode characters according to their storage requirements.

    Emojos are instance-specific custom emojis, some animated, which are represented in toots by names between a pair of colons. These appear to take up whatever space their name takes up, and you can use them either by choosing them from an emojo picker, or by typing their name. Metatext handily offers visual autocompletion suggestions as you type, which can make finding the right emojo that much easier.

    Regardless of their actual length, all URLs in Mastodon are treated as if they were 23 characters long (and use of URL shorteners is officially discouraged). Mast, Mercury and Tootle all fail to count URLs correctly.

    Finally, on the topic of counting, only the local part of a username (e.g. the ‘@transponderings’ of ‘@[email protected]’) is supposed to count towards your character allowance. Only Mercury, tooot and Toot! get this right. All the apps, incidentally, offer completion suggestions as you type usernames. Tootle’s seems to have less coverage than the others though.

    While all the apps allow you to reply to toots you have written, only Metatext and Toot! let you write a thread of toots to be tooted more or less simultaneously. Writing long threads is arguably less useful on Mastodon than on Twitter, given that single toots can be much longer than tweets, but there may be times when it will be convenient. Unlike Twitter’s threads, a thread of your own toots can occur even in reply to someone else’s toot. Threads aren’t treated in a special way by Mastodon though: this is simply a convenience feature in these two apps.

    Adding media to toots

    Only Mast, Metatext and Toot! allow you to paste images in from elsewhere, but in all seven apps you can choose an image from your photo library. And when it comes to videos, only Toot! lets you paste a copied video into your toot. And none of the apps seem to let you paste audio!

    In fact, only Mast and Metatext support inclusion of audio in toots. And only Metatext lets you add alt text to audio, or mark audio as sensitive media. Neither app supports the full range of audio formats that Mastodon supports.

    Mast, Mastodon and Metatext allow you to browse for files containing images and video, whereas the other apps limit you to the Photos library on your iPhone.

    When it comes to video, Mercury, tooot and Toot! all work well. But I had trouble posting videos from both Mast (which was taking forever) and Mastodon (which didn’t seem to want me to toot while there was video attached). I didn’t investigate this any further. Mastodon (if only it worked!), Mercury and Toot! let you add alt text to video. Only tooot and Toot! let you mark video as sensitive media.

    Tooting miscellany

    Mastodon’s delete-and-redraft capability (introduced in June 2019) will be the envy of many people stuck on Twitter, as it’s very much like the oft-requested edit button. All the apps except Mastodon and Tootle support this.

    In most apps, you can set the visibility of a toot to public, unlisted, followers or direct. However, thanks to the developer’s stance on Local and Federated timelines, you can’t create unlisted toots in Mastodon. This is a pity, particularly as I have seen a number of people recommending that toots in a thread after the first should be unlisted, as a courtesy, so as not to clutter up other people’s timelines.

    All the apps allow you to add content warnings to toots (called spoilers in Mercury and tooot – and I suppose it makes sense to use them for both purposes).

    All the apps apart from Tootle also allow you to include polls in your toots. Unlike Twitter’s polls, these can be set up so respondents can pick more than one of the two to four options. However, the official Mastodon app only allows single-choice polls.

    Toots can be scheduled for later publication – they are uploaded to your instance immediately, but held back until a specified date/time. Of the apps reviewed, only Mast and Mercury support this.

    Cautionary notes

    When you are composing a toot (or a thread of toots) and tap elsewhere in the app, Mast, Mercury, tooot and Tootle all do what you’d expect if you’ve come from Twitter: they ask if you want to save your draft. In Mast, tooot and Tootle, there are buttons in the compose window to allow you to pick a draft from where you left off. In Mercury, you need to open the draft from the drafts ‘timeline’.

    None of the remaining apps have a draft facility. At least Mastodon warns you that you’re about to discard your draft. Metatext and Toot! unceremoniously discard whatever you’ve been writing, whether a single toot or perhaps even a lengthy thread! Be very careful!

    Mercury allows you to select video alongside other media from the Photos library. It will attempt to toot and erroneously state that it has succeeded. Mastodon also allows you to do select an untootable selection of media items, but it fails to make sense of the video in that case, before you toot. This is the only case I’ve come across where one of the apps has crashed though.

    Notifications

    Just two of the apps, as far as I can tell, show announcements from your instance admin. Because these are pretty rare, I’m not sure if they appear elsewhere in other apps. In Metatext, announcements are available at the top right of the main ‘Timelines’ view. In tooot, you can find them under your profile.

    Aside from these announcements and the special highlighting of new direct messages in Toot! that was noted earlier, each of the apps maintains a running list of notifications including mentions, follows (and follow requests), boosts, favourites and poll updates – yes, unlike in Twitter, you can be notified when a poll you’ve participated in ends!

    In all but one of the apps, you can see your notifications by tapping the bell icon at the bottom of the screen. In Mercury, the notifications view is found among the timelines that you select from in the list that slides in from the left.

    Mercury and Toot! have app settings to choose which kinds of notifications to receive. I presume (though I haven’t had the chance to test it) that these don’t only affect the notifications view, but also the live notifications that pop up if you’ve enabled them in your iPhone settings.

    In tooot, if you tap on the filter button, you can choose to view or not view each of six types of notification. Mast also has a filter button for six types of notification, but you can only choose to few one type or all.

    Mastodon, Metatext and Tootle offer a simple tabbed view giving a choice between all notifications and just mentions (also just follows, and ‘others’, in Tootle). Settings in each of these apps also offer finer control over the kinds of notifications you receive.

    Only Tootle takes things to the next level in terms of interaction between the in-app notifications and iPhone notifications, with independent control over how mentions, boosts, favourites and follows are brought to your attention both inside and outside the app.

    Neither the apps here nor the Twitter app do a particularly good job of showing you which notifications you have not yet seen. But one thing I miss from Twitter is the consolidation of notifications. It would be really good to know that 11 people had favourited a toot rather than knowing separately that A, B, C, … and K had favourited it. (On the flip side, the detail in Mastodon does mean that each favourite and boost has a time stamp, so you can tell when they all happened, which I suppose might be nice to know sometimes.)

    Privacy considerations

    According to the App Store, Mastodon, Metatext, Mercury and Toot! do not collect any data from app users. Zhiyuan Zheng, the developer of tooot, claims to collect ‘user content’, ‘identifiers’, ‘usage data’ and ‘diagnostics’ from app users, but ‘not linked to your identity’. (Oddly enough, tooot is also the only app to display a ‘privacy protection’ notice if you take a screenshot.) The developers of Mast and Tootle have not yet submitted privacy/data-handling policies to Apple.

    Other bits and bobs

    Five of the apps – Mast, Mercury, Metatext, tooot and Toot! – work in landscape orientation, though I’m unsure whether that’s ever going to be the best way to view Mastodon timelines. Still, if that’s your preference, it’s worth knowing.

    There are other (non-screenreader-related) accessibility options in the apps’ settings, which I haven’t had time to explore here.

    Three of the apps – Mast, Mastodon and Mercury – have additional menu items available from their icons on your iPhone’s home screen. From all three you can compose a toot, while two can take you straight to different timelines or other views. I’m not sure how useful this is.

    All the apps feature in the ubiquitous iOS share menu, and their built-in share functionality is adequate for occasional use. If you frequently find yourself wanting to share things with your followers when you’re in other apps though, you might want to consider Linky for Twitter and Mastodon (£3.49). This allows you to use the iOS share menu to share text, photos etc. on Mastodon or Twitter, with markup options and various other features, and posting to multiple accounts simultaneously if required. (It doesn’t currently allow you to provide alt text for images, so you need to use the delete-and-redraft option subsequently to add this.)

    Mast and Mercury both have iPhone widgets, but the former doesn’t really work, and the latter isn’t really particularly useful.

    Tootle has a little play/pause button, which lets you see toots scrolling in continuously or else leave the timeline where you put it. The difference may only be noticeable on the Federated timeline!

    Mastodon has an option to turn off animated emojis (there are a lot of instance-specific custom emojis in Mastodon), but it doesn’t work.

    Mast and Tootle displays dates and times in US format regardless of the settings on your iPhone.

    If you get fed up with looking at toots, Toot! has a couple of Easter eggs tucked away at the bottom of menus to keep you amused!

    Summary – tl;dr

    For various reasons, Fedi was eliminated from consideration at the Getting started stage (although I had also used it for a bit with my accounts, and didn’t find that it redeemed itself later on).

    Mast’s search functionality is completely broken at this point, and many other aspects of the app are buggy. The app developer appears to have left it to rust, which is disappointing, as it does have one or two nice touches, notably the inclusion of in-app translation of bios and toots. But I can’t really recommend using this app at present.

    The other six apps are all fairly straightforward to set up with accounts on one or more instances, most working in pretty much the same way. Metatext, Toot! and Tootle additionally let you have read-only access to publicly browsable instances alongside the instances you’ve signed up to.

    Mercury has the clunkiest timeline support, while Toot!’s is definitely the coolest (and Toot! generally feels most fun to use of all the apps in general, with some delightful transitions). The official Mastodon app bizarrely doesn’t have a Federated timeline view at all.

    While all apps support direct messages in your Home timeline, Mercury, Metatext, Toot! and Tootle also have filtered timelines that show just your direct messages.

    All the apps have issues with VoiceOver accessibility, but Mastodon and Metatext probably fared better than the others (with the proviso that I’m not a regular screenreader user).

    Scrolling through timelines of toots feels fairly comfortable in all apps, although Tootle can feel a little sluggish. Mercury has some nice swipe gestures, which reduce visual clutter in the timeline. Toot! shows conversation threading using (optionally colour-coded) connecting lines between toots.

    Media support varies greatly among the apps. Metatext and Toot! probably come out on top, on balance, with Toot! being the only app to show alt text for all media types, and Metatext being the only app that allows you to compose toots with audio attachments.

    Toot! and Tootle both make working with multiple instances easier, as you can reply, boost or favourite from another instance without leaving the instance you’re looking at.

    Toot! is the only app that counts characters in toots correctly according to Mastodon’s rules when you’re composing a toot.

    Both Metatext and Toot! have support for composing threads of toots. But beware: neither Metatext nor Toot will offer you any warning if you close a toot or thread you’re in the middle of composing. If you do that, it’s gone!

    All the apps except Mastodon and Tootle support the delete-and-redraft feature, basically an edit button. (It preserves text, attachments, alt text, polls, visibility settings – everything except any replies, favourites or boosts.)

    I’m not going to try to condense all this into a simple star rating, but I’ve personally found myself being most comfortable using Toot! and Metatext. Sadly, none of the apps do everything just right, and you may find the combination of features (and omissions and bugs) tips the balance in favour of one of the other apps. Some of the apps at least are being actively developed, so App Store reviews pointing out problems you’ve had might actually lead to changes being made.

    Corrections

    Thanks to Heinz Skunk for pointing out that Metatext also has long-press reply, boost and favourite buttons for using an alternative instance.

    Thanks to Avi for pointing out that Metatext does in fact indicate in their profile when someone is following you.

    Thanks to Anna e só for pointing out that Toot! is problematic for low-vision users, as it doesn’t respect the iPhone text-size settings. I found that Tootle has the same issue.

    Thanks to Camille for making me aware that Android’s Tusky app supports private notes on profiles. I had claimed before that none of the iOS apps did so because the Mastodon API didn’t support this. But I checked again and saw that it had been in the API since v3.2.0. (At the time of writing this review, Mastodon was at v3.5.2.)

    Behind the scenes: the making of this blog post

    As well as obtaining the eight apps (for the princely sum of £5.98, as noted), and tipping £0.89 for bonus functionality in one, I had to spend a fair bit of time researching the differences between the apps. I also invested in one or two additional tools to make the job of writing this a little easier. I used a 24-hour licence of Time.Graphics (£4.09) to make creating the timeline as hassle-free as possible – twice, in fact, because two of the apps were updated while I was writing it. And after a lot of searching (and skipping lots of web articles saying what I wanted to do wasn’t possible), I discovered KeyPad, a Mac app (£2.49 in-app purchase required) that lets me use the keyboard and trackpad on my MacBook to control my iPhone, meaning that, with a touch accessibility option turned on, videos could show where I’m tapping on the screen (but I didn’t actually use this in the end!).

    I don’t mind spending a little less than £15 on this post. To be honest, it’s the time and the spoons involved that are more valuable to me. I don’t write blog posts for money, but in the hope that someone at least will find what I’ve written to be of value to them. If you have found this helpful, please like it if you’re able to, and if you can share it more widely, whether by tooting or tweeting a link, or by reblogging if you have a WordPress account, I’d really appreciate that. And if you do have a bit of spare cash, I’ll be extremely grateful for any tips received on my Ko-fi page! 😊

    Share this:Like this:Like Loading... Related

    #accessibility #fedi #fediverse-2 #ios #iphone #mast #mastodon-2 #mercury #metatext #review #social-media-2 #tooot #toot #tootle #twitter-2 #user-experience

    https://transponderings.blog/2022/05/21/eight-mastodon-apps-for-iphone/

  17. A win! Rapid City-based Pete Lien & Sons has formally withdrawn its graphite drilling project near Pe’Sla, a sacred meadow in the Black Hills where Sioux tribes hold ceremonies and prayer gatherings throughout the year. The company told the Forest Service it won’t be filing another plan.
    bsky.app/profile/altnps.bsky.s
    -
    From resistance team of US Natl Park Svc
    500+ char posts not resent
    Unaffiliated w/ AltNPS
    -
    #AltNPS #Coup #Activism #NationalParkService #FederalGovernment #USpol #Trump

  18. Okay so I'm trying out on and I can't seem to launch . It did however work in KDE Plasma :thonking:

    I did notice KDE SystemMonitor mention not having hardware rendering, could that be the issue? I haven't tried starting alacritty from to see what errors it spits out (its been a long day).

    Also, I can't seem to add a Ctrl+Alt+T shortcut to open xterm (let alone alacritty) ¯\_(ツ)_/¯

  19. Edit: Formulierung verbessert, Screenshot und Alt-Text angepasst

    Ich glaub ich hab nen NPC der braucht das:

    #dnd #pnpde #ttrpg #Cormyr #ForgottenRealms #MagicItem

  20. okay, managed to write a simple #textEditor in #Python using #wxPython and #pyWinhook that will trap any #KeyDown I don't like. It's crude, doesn't handle capitals or altGraph symbols, and is likely #Windows-only for now, but I'll share the #code later tonight. :)

    A lucky added benefit of this is that in the process I realised I can use the same principle to temporarily disable the mute key #BeardGrabber keeps hitting. Already wrote a simpler #CLI version of it. 😄

    #coding #ScratchYourOwnItches

  21. @dvl thanks!

    ALT text here includes two commands (without the breakage that's difficult to avoid in Mastodon).

    #FreeBSD #patch #update #vulnerability #security

  22. SO CUTE
    From a post by dining and cooking dot com, in their alt txt they say they copied the idea, so, hard to credit.
    But, roll out premade sugar cookie dough, add some teddy graham cookies, and you've got adorable.
    #cookie #time #happy #star #sad #no #teddy #bear #cooking #baking #cooling #rack #piped #icing

  23. SO CUTE
    From a post by dining and cooking dot com, in their alt txt they say they copied the idea, so, hard to credit.
    But, roll out premade sugar cookie dough, add some teddy graham cookies, and you've got adorable.
    #cookie #time #happy #star #sad #no #teddy #bear #cooking #baking #cooling #rack #piped #icing

  24. SO CUTE
    From a post by dining and cooking dot com, in their alt txt they say they copied the idea, so, hard to credit.
    But, roll out premade sugar cookie dough, add some teddy graham cookies, and you've got adorable.
    #cookie #time #happy #star #sad #no #teddy #bear #cooking #baking #cooling #rack #piped #icing

  25. SO CUTE
    From a post by dining and cooking dot com, in their alt txt they say they copied the idea, so, hard to credit.
    But, roll out premade sugar cookie dough, add some teddy graham cookies, and you've got adorable.
    #cookie #time #happy #star #sad #no #teddy #bear #cooking #baking #cooling #rack #piped #icing

  26. A reminder to all artists/creators out there from the great Martha Graham... I've posted before, and I will again! Alt has the text... #inspiration #artistadvice #dontgiveup #createdontscrape #humanmade #humansagainstai

  27. Thursday Dog Quote

    https://flic.kr/p/2rjF5Ze

    Alt text beneath the read more bit…

    “The one absolutely unselfish friend that man can have in this selfish world, the one that never deserts him, the one that never proves ungrateful or treacherous, is his dog.”~George Graham Vest, U.S. Senator from Missouri

    […]

    cynnisblog.wordpress.com/2025/

  28. Drop your weapons! You are surrounded by armed bastards!

    Life On Mars – ab 23. November wieder bei ARTE

    Klar, alle COP-Serien spielen in einem Paralleluniversum. Aber diese hier, ist aus einem Parallel-Univerum mit multiplen (parallelen?) Zeitachsen auf unterschiedlichen (Bewußtseins-) Ebenen. Sie bekommen hier Cops, Mystery, Crime, Humor – und als Zuspitzung des ganzen ermöglicht eine geniale Besetzung, eine intelligente Geschichte, ein überragendes Dialog-Buch und, nur ganz nebenbei – dank der Tatsache, dass der BBC zu ihrer Zeit (2006) wohl der gesamte Automobilbestand der Insel zur Verfügung stand, um ihre Charaktere damit auszurüsten – Car-Porn.

    Gene Hunt: Anything happens to this motor, I’ll come ‚round your houses and stamp on all your toys. Got it? Good kids.

    Trailer: Life On Mars – Season One – BBC1

    Inhalt von ARTE.tv anzeigen

    An dieser Stelle ist ein Inhalt der ARTE Mediathek eingebunden. Wenn sie diesen Inhalt anzeigen wollen, klicken sie bitte hier. Die Datenschutzerklärung von ARTE.tv gibt ihnen Auskunft über die dabei übertragenen Daten.

    Erfahre mehr in der Datenschutzerklärung von ARTE.tv.

    Inhalt von ARTE.tv immer anzeigen

    Content-Warnung: Siebziger Jahre!

    Eigentlich müsste jeder Episode von „Life On Mars“ heutzutage eine Warnung vorgeschaltet sein, die vor Homophobie, Frauenfeindlichkeit, Rassismus und obszöner Sprache warnt. In soweit stehen die nur 18, seit der Erstausstrahlung vergangenen Jahre für gleich mehrere Evolutionssprünge unseres kollektiven Bewusstseins. Umso mehr, als der zentrale Held der Serie, Sam Tyler, seinerseits um 23 Jahre in der Zeit zurückreisen muß – nur um ganz die gleiche Erfahrung zu machen…

    Eine Content-Warnung kriegen sie von mir nicht. Erstens waren es die Siebziger, zweitens ist es Kunst und drittens und letztens ist es ein großer Spaß auf dieser Zeitreise mitzugehen.

    „Detective Sam Tyler arbeitet mit seiner Kollegin und Freundin Maya an einem brisanten Fall in Manchester. Sam ist endlich einem Verdächtigen auf der Spur, doch die Beweislage reicht nicht aus. Als dann Maya verschwindet, ist Sam völlig durch den Wind. Er steigt mitten auf der Straße aus und wird von einem Auto überfahren. Als er wieder zu sich kommt, ist er plötzlich in den 70er Jahren gelandet. Auch hier ist er Kommissar und muss einen Fall lösen, der dem aus der „Zukunft“ verblüffend ähnelt. Eine rätselhafte Zeitreise, die Sam so schnell wie möglich beenden will…“

    (Auszug aus der ARTE Programvorschau)

    Ich war zu seiner Zeit, also zur Ausstrahlung der Serie (1973 war ich 8 Jahre alt), begeistert und „addicted“ genug, mir alle Staffeln der Serie in miserabler Qualität über halblegale Kanäle aus dem UK zu besorgen. Für mich war das „Erinnerungsfernsehen“… heute ist es eine Geschichte aus einer Zeit – vor der Zeit – der allermeisten potentiellen Zuschauer:innen in der werberelevanten Zielgruppe (14-49). Und gerade aus dieser Zielgruppe dürften nur die wenigsten eingeschaltet haben, als die erste Staffel seinerzeit (2007) bei Kabel1 ausgestrahlt wurde.

    Gene Hunt: They reckon you’ve got concussion – I couldn’t give a tart’s furry cup if half your brains are falling out. Don’t ever waltz into my kingdom acting king of the jungle.
    Sam Tyler: Who the hell are you?
    Gene Hunt: Gene Hunt. Your DCI. And it’s 1973. Nearly dinner time. I’m ‚aving ‚oops.

    Die Originalsprache ist eine herrliche Zumutung!

    Das ganze Elend solch herausragender ausländischer TV-Produktionen im deutschen Fernsehen ist leider, dass sie bei der Übertragung in den germanischen Synchronisationsstandard ungefähr 50% ihres Charmes und Charakters einbüßen. Der Zweikanalton ist da natürlich auch hier eine unbedingte Voraussetzung für den vollen Genuss.

    Benutzen sie, wenn es denn irgendwie geht, besser die englische Tonspur. Auch wenn diese, darauf seien sie hiermit vorbereitet, eine absolut herrliche Zumutung für alle ist, die Englisch nur aus der Schule, der Uni oder dem Büro kennen oder gewohnt sind. Ich war selbst oft und regelmäßig im Vereinigten Königreich… ich habe Freund:innen all over the place. But in Manchester wusste ich oft nicht, ob das verfluchte Mancunian noch Englisch war, oder etwa ein Alien-Accent-from-another-world. Das macht aber nichts. Nach einer halben Stunde sind sie drin. Und nach zwei Staffeln sind sie vermutlich komplett angst-befreit für alles was danach noch kommt.

    Besser als die Vorbilder?

    UK-Krimi oder Buddy-Cop-Serien aus England sind im deutschen TV immer gut gelaufen. Ich erinnere mich zwar nur noch dunkel an „Mit Schirm, Charme und Melone / The Avengers„, doch an „Die Zwei / The Persuaders!“ und vor allem „Die Profis / The Professionals“ erinnere ich mich als prägende Erfahrung meiner Kindheit. Und nicht ohne Grund laufen sowohl die Originale, als auch immer wieder Remakes davon durch die Kinos und TV-Kanäle. Eben wohl weil es außer mir noch vielen so geht. Es stimmt: Das ist Fernsehen für „alte Leute“.

    „Life On Mars“ steht in genau dieser Tradition, hat sie dabei aber, sowohl in der Produktion als auch, ganz besonders, im Storytelling, auf ein wesentlich moderneres Level gehoben und brutal in die Gegenwart transformiert. Im Vergleich zu dem, was sonst an Krimiware bei der BBC die Mediathek verstopft – von den unseren gar nicht zu reden – ist diese Serie ein echter Edelstein und mindestens so modern wie Tarantinos Zeitreise „Once Upon a Time in Hollywood“ – und der Film ist von 2019.

    Der Soundtrack ist ein Hit

    Was ich an der Serie besonders liebe, und was sie ebenso zu etwas wirklich besonderen macht, ist ihr vorzüglicher zeitgenössischer Soundtrack. Damit bekommen wir noch heute jede gute Party zum kollektiven ausflippen! Jedenfalls die Art von Partys die ich freiwillig besuchen würde…

    (Quelle: Wikipedia.de)

    Schaut es euch an! Ihr habt schon dafür bezahlt! Bessere und intelligentere Unterhaltung werdet ihr kaum finden. Nicht öffentlich-rechtlich und vermutlich auch nicht kommerziell. Es ist, was es ist: Eine Mediathekperle, die unterzugehen droht, weil kein Algorithmus sie uns in die Timeline boxt. Nur deshalb und dafür mach ich das hier.

    I just want to smack it in your face. And I don’t want to hear you complainin‘!

    „Life On Mars“ – verfügbar in der ARTE-Mediathek wieder ab 23. November 2023

    TV Serie, BBC1, UK, 2006 – 2 Staffeln, 16 Episoden

    Regie: John McKay

    Drehbuch: Matthew Graham, Tony Jordan, Ashley Pharoah

    Mit John Simm (Sam Tyler), Philip Glenister (Gene Hunt), Liz White (Annie Cartwright)

  29. Drop your weapons! You are surrounded by armed bastards!

    Life On Mars – ab 01. Dezember wieder bei ARTE

    Klar, alle COP-Serien spielen in einem Paralleluniversum. Aber diese hier, ist aus einem Parallel-Univerum mit multiplen (parallelen?) Zeitachsen auf unterschiedlichen (Bewußtseins-) Ebenen. Sie bekommen hier Cops, Mystery, Und die Zuspitzung des ganzen ermöglicht eine geniale Besetzung, eine intelligente Geschichte, ein überragendes Dialog-Buch und, nur ganz nebenbei – dank der Tatsache, dass der BBC zu ihrer Zeit (2006) wohl der gesamte Automobilbestand der Insel zur Verfügung stand, um ihre Charaktere damit auszurüsten – Car-Porn.

    Gene Hunt: Anything happens to this motor, I’ll come ‚round your houses and stamp on all your toys. Got it? Good kids.

    Trailer: Life On Mars – Season One – BBC1

    Inhalt von ARTE.tv anzeigen

    An dieser Stelle ist ein Inhalt der ARTE Mediathek eingebunden. Wenn sie diesen Inhalt anzeigen wollen, klicken sie bitte hier. Die Datenschutzerklärung von ARTE.tv gibt ihnen Auskunft über die dabei übertragenen Daten.

    Erfahre mehr in der Datenschutzerklärung von ARTE.tv.

    Inhalt von ARTE.tv immer anzeigen

    Content-Warnung: Siebziger Jahre!

    Eigentlich müsste jeder Episode von „Life On Mars“ heutzutage eine Warnung vorgeschaltet sein, die vor Homophobie, Frauenfeindlichkeit, Rassismus und obszöner Sprache warnt. In soweit stehen die nur 18, seit der Erstausstrahlung vergangenen Jahre für gleich mehrere Evolutionssprünge unseres kollektiven Bewusstseins. Umso mehr, als der zentrale Held der Serie, Sam Tyler, seinerseits um 23 Jahre in der Zeit zurückreisen muß – nur um ganz die gleiche Erfahrung zu machen…

    Eine Content-Warnung kriegen sie von mir nicht. Erstens waren es die Siebziger, zweitens ist es Kunst und drittens und letztens ist es ein großer Spaß auf dieser Zeitreise mitzugehen.

    „Detective Sam Tyler arbeitet mit seiner Kollegin und Freundin Maya an einem brisanten Fall in Manchester. Sam ist endlich einem Verdächtigen auf der Spur, doch die Beweislage reicht nicht aus. Als dann Maya verschwindet, ist Sam völlig durch den Wind. Er steigt mitten auf der Straße aus und wird von einem Auto überfahren. Als er wieder zu sich kommt, ist er plötzlich in den 70er Jahren gelandet. Auch hier ist er Kommissar und muss einen Fall lösen, der dem aus der „Zukunft“ verblüffend ähnelt. Eine rätselhafte Zeitreise, die Sam so schnell wie möglich beenden will…“

    (Auszug aus der ARTE Programvorschau)

    Ich war zu seiner Zeit, also zur Ausstrahlung der Serie (1973 war ich 8 Jahre alt), begeistert und „addicted“ genug, mir alle Staffeln der Serie in miserabler Qualität über halblegale Kanäle aus dem UK zu besorgen. Für mich war das „Erinnerungsfernsehen“… heute ist es eine Geschichte aus einer Zeit – vor der Zeit – der allermeisten potentiellen Zuschauer:innen in der werberelevanten Zielgruppe (14-49). Und gerade aus dieser Zielgruppe dürften nur die wenigsten eingeschaltet haben, als die erste Staffel seinerzeit (2007) bei Kabel1 ausgestrahlt wurde.

    Gene Hunt: They reckon you’ve got concussion – I couldn’t give a tart’s furry cup if half your brains are falling out. Don’t ever waltz into my kingdom acting king of the jungle.
    Sam Tyler: Who the hell are you?
    Gene Hunt: Gene Hunt. Your DCI. And it’s 1973. Nearly dinner time. I’m ‚aving ‚oops.

    Die Originalsprache ist eine herrliche Zumutung!

    Das ganze Elend solch herausragender ausländischer TV-Produktionen im deutschen Fernsehen ist leider, dass sie bei der Übertragung in den germanischen Synchronisationsstandard ungefähr 50% ihres Charmes und Charakters einbüßen. Der Zweikanalton ist da natürlich auch hier eine unbedingte Voraussetzung für den vollen Genuss.

    Benutzen sie, wenn es denn irgendwie geht, besser die englische Tonspur. Auch wenn diese, darauf seien sie hiermit vorbereitet, eine absolut herrliche Zumutung für alle ist, die Englisch nur aus der Schule, der Uni oder dem Büro kennen oder gewohnt sind. Ich war selbst oft und regelmäßig im Vereinigten Königreich… ich habe Freund:innen all over the place. But in Manchester wusste ich oft nicht, ob das verfluchte Mancunian noch Englisch war, oder etwa ein Alien-Accent-from-another-world. Das macht aber nichts. Nach einer halben Stunde sind sie drin. Und nach zwei Staffeln sind sie vermutlich komplett angst-befreit für alles was danach noch kommt.

    Besser als die Vorbilder?

    UK-Krimi oder Buddy-Cop-Serien aus England sind im deutschen TV immer gut gelaufen. Ich erinnere mich zwar nur noch dunkel an „Mit Schirm, Charme und Melone / The Avengers„, doch an „Die Zwei / The Persuaders!“ und vor allem „Die Profis / The Professionals“ erinnere ich mich als prägende Erfahrung meiner Kindheit. Und nicht ohne Grund laufen sowohl die Originale, als auch immer wieder Remakes davon durch die Kinos und TV-Kanäle. Eben wohl weil es außer mir noch vielen so geht. Es stimmt: Das ist Fernsehen für „alte Leute“.

    „Life On Mars“ steht in genau dieser Tradition, hat sie dabei aber, sowohl in der Produktion als auch, ganz besonders, im Storytelling, auf ein wesentlich moderneres Level gehoben und brutal in die Gegenwart transformiert. Im Vergleich zu dem, was sonst an Krimiware bei der BBC die Mediathek verstopft – von den unseren gar nicht zu reden – ist diese Serie ein echter Edelstein und mindestens so modern wie Tarantinos Zeitreise „Once Upon a Time in Hollywood“ – und der Film ist von 2019.

    Der Soundtrack ist ein Hit

    Was ich an der Serie besonders liebe, und was sie ebenso zu etwas wirklich besonderen macht, ist ihr vorzüglicher zeitgenössischer Soundtrack. Damit bekommen wir noch heute jede gute Party zum kollektiven ausflippen! Jedenfalls die Art von Partys die ich freiwillig besuchen würde…

    (Quelle: Wikipedia.de)

    Schaut es euch an! Ihr habt schon dafür bezahlt! Bessere und intelligentere Unterhaltung werdet ihr kaum finden. Nicht öffentlich-rechtlich und vermutlich auch nicht kommerziell. Es ist, was es ist: Eine Mediathekperle, die unterzugehen droht, weil kein Algorithmus sie uns in die Timeline boxt. Nur deshalb und dafür mach ich das hier.

    I just want to smack it in your face. And I don’t want to hear you complainin‘!

    „Life On Mars“ – verfügbar in der ARTE-Mediathek wieder ab 01. Dezember 2023

    TV Serie, BBC1, UK, 2006 – 2 Staffeln, 16 Episoden

    Regie: John McKay

    Drehbuch: Matthew Graham, Tony Jordan, Ashley Pharoah

    Mit John Simm (Sam Tyler), Philip Glenister (Gene Hunt), Liz White (Annie Cartwright)

  30. Hey, if you're interested in trying out any of my text-based games, you can get all three right now in the Steam sale as a bundle for $8.39! (Or pick up each one on sale individually.) Try alt-history Napoleonic intrigue in The Eagle's Heir, heroic fantasy in Stronghold: A Hero's Fate (with a sequel on the way!), and theatrical fantasy in The Play's The Thing.

    store.steampowered.com/bundle/

    #interactivefiction #choiceofgames