zerosleeps

Since 2010

Windows: maybe not

Purely by coincidence, but with great timing for me, my partner has just acquired a brand new Dell XPS 13 for work and boy has it been an eye-opening experience for both of us.

The hardware is great. It feels solid, has a fine array of ports, and the screen is beautiful with it’s teeny tiny bezel. It’s pretty functional as well, with LEDs to show when it’s charging and sleeping, plus a little battery level gauge.

The trackpad is a far cry from Apple’s current offerings and you need two hands to open it, but it’s still a really nice piece of kit. Nicely presented in the packaging too.

But then you turn it on.

The Windows 10 first-run experience is… fine. Cortana is a bit obnoxious, and Microsoft begged for an online account to be created. It’s very telling that the privacy controls available for review during setup all default to “give us your data” mode as well. It was an easy enough process though.

The next thing we noticed was that the machine was loaded with Windows 10 Home, not Windows 10 Pro as advertised in-store. That’s on the retailer that this was purchased from, and not at all surprising, at least to me. It was a helpful reminder that Windows editions are a thing though. Why?

Next up - bloatware o’ bloatware. This is a multi-thousand-dollar machine, which is stuffed with shit like Candy Crush and things that shove Dolby logos in your face. Of course Dell themselves add all sorts of support and maintenance crap. It took a few days for my partner to get through the various Windows updates + Dell updates and the conflicts between them.

Drivers are apparently still a thing, by the way.

None of this was helped by the fact that for some reason, Windows wouldn’t activate. That is also still a thing. Attempting to manually activate didn’t really provide any enlightening information, and the troubleshooter added nothing. And since this was over Easter weekend, Microsoft support was shut down and couldn’t help either. I never found out what the issue was, but it did eventually get resolved by Microsoft.

Aw, and then last night the screen brightness controls stopped working. The on-screen HUD would show the brightness being adjusted (whether by shortcut keys or somewhere in Settings), but the brightness remained steady. So there’s something else that will suck up some troubleshooting time.

The saddest part is that my partner just shrugged most of this off, like it’s normal to have to put up with it all. That right there is perhaps the problem - PC/Windows users just assume that this kind of crap is expected. That’s not okay!

So not a fabulous initial experience for my partner, but it sure helped me form a pretty solid conclusion about my “could I switch to Windows” thing from a couple of weeks ago. Apple can do much better, but it turns out the grass on the other side is a really off-putting shade of brown. It can often feel like everything is broken when I stumble into an issue which affects my workflow, but these past few days have made me realise that MacOS is still head-and-shoulders above the Windows experience.

I’m still pissed off about my MacBook Pro’s keyboard though…

Sublime Text timestamp snippet

2 parts needed: a Python module to generate the string, and a definition to make the class available as a Sublime Text command.

The end result of all of this is a new Sublime Text command which outputs something like this at the current cursor position:

2019-05-01T19:53+1000

~/Library/Application Support/Sublime Text 3/Packages/User/date-time-stamp.py

Python module which defines a subclass of sublime_plugin.TextCommand and uses Sublime Text’s hooks to spew out a formatted datetime as a snippet.

Ever tried to get Python to output the local UTC offset? What a mess. My solution was shamelessly stolen from this Stack Overflow answer:

import time
import datetime
import sublime_plugin

class DateTimeStampCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        utc_offset_sec = time.altzone if time.localtime().tm_isdst else time.timezone
        utc_offset = datetime.timedelta(seconds=-utc_offset_sec)
        formatted_string = datetime.datetime.now().replace(tzinfo=datetime.timezone(offset=utc_offset)).strftime('%Y-%m-%dT%H:%M%z')

        self.view.run_command(
            "insert_snippet",
            {
                "contents": formatted_string
            }
        )

~/Library/Application Support/Sublime Text 3/Packages/User/date-time.sublime-commands

This surfaces the new class method in Sublime Text’s command pallet:

[
    {
        "caption": "Insert ISO8601 date and time",
        "command": "date_time_stamp"
    }
]

FileVault

I’ve been paying closer attention to the software I use since last week’s little series of posts, and I think I rely on macOS’ underlying POSIX-compliant Unix core more than I initially thought. What’s the story with terminal applications on Windows these days? SSH clients? I mentioned (but skimmed over) using Ruby on Windows, but it turns out I knock up throw-away Ruby scripts more frequently than I initially suspected.

The prompt for this post though was my realisation that FileVault counts as macOS-only software. It’s Apple’s built-in full-disk encryption solution. Does Windows have an equivalent?

More things to look into…