Categories
Applications Games

Playing Dungeons and Dragons with Discord

I really enjoyed this Sly Flourish video about how to play Dungeons and Dragons with Discord:

I play DnD with my wife and daughter at home, so I don’t have an immediate need for this. At the same time, there are loads of people who find themselves playing remotely, so this is a compelling option.

Other tools

Even though we play in person, I’ve been using a number of digital tools to help manage our games.

DnD Beyond

I’ve been using DnD Beyond quite a bit lately. I’m trying out the paid, Master Tier subscription to manage our campaign. The subscription enables me to create encounters based on the characters’ levels (that translates into somewhat more accurate difficulty estimates).

I also like that I can share the digital books that I’ve purchased.

The Combat Tracker is terrific, and helps managing initiative, and monster damage a lot easier. This works hand-in-hand with the Encounter Builder. I’ve realised that creating encounters from within the campaign manager/page allows me to create campaign-specific encounters.

The DnD Beyond character sheets are also terrific. I only use the online version for my character, and my wife has switched over to that version for the most part, too.

The new digital dice are really nice too. I’m looking forward to trying those out too (although I think I prefer physical dice on the whole).

Notion

Notion has been really useful for my campaign notes, and tracking the party’s progress through a campaign. I add maps, tables to track overall encounters, XP awards, and even individual encounters (there’s some overlap here with the DnD Beyond Combat Tracker).

Options like inline tables, internal links, and other Notion blocks are proving to be really helpful, although I’d like to build page templates that I can start a new adventure with.

There are a number of terrific digital tools available to us. They add to in-person games too, and can really enhance online game play if you can’t meet up to play your games.


Image credit: Jack B on Unsplash

Categories
Applications Social Web Telecoms

Google Wave 2.0?

According to Ars Technica

Integrating the service into Gmail is an aggressive move and something we haven’t seen the company do since the Google+ days. Reportedly a lot more integrations are coming in the future—the G Suite team apparently wants to make some kind of “new unified communications app” that merges features from Gmail, Drive, Google Chat, and Google Meet.

Google Meet, Google’s Zoom competitor, gets wider Gmail integration

Is “Google Wave” still taken?

Categories
Applications

Exploring Notion as an Evernote alternative

I found myself exploring Notion as an Evernote alernative again, yesterday. I looked at it briefly about a year ago, and it didn’t seem like something that was worth switching to at the time. After all, I’ve been using Evernote for years, and given how much I was using Evernote, I wasn’t sure that investing in a new service was worth it.

My prompt to explore Notion originated in my thoughts about my Dungeons and Dragons adventure notes, and my curiosity about it as a possible replacement for my handwritten notes (handwritten notes leave me feeling a little twitchy because there aren’t any backups).

An example of my adventure notes

I found a couple great discussions online about the tools that other DMs use for their adventures. Popular options include OneNote, Evernote, a number of services designed for role-playing games, and Google Drive.

I found a couple discussions about Notion as an option, too. One reddit user posted an intriguing Notion page template that they use for their adventure notes.

What I like about Notion

There’s a lot to like about Notion. It uses blocks, much like the WordPress Editor, to insert different types of content into your pages. Evernote supports some options, but my inability to add media from other sources (or even, in some cases, directly), feels somewhat limiting when I want to create richer notes.

For example, my options for adding content in the Evernote Web editor (probably on the leading edge of where the editor is going) look like this:

By contrast, I can embed a YouTube video in Notion much like I can do this in WordPress:

I keep mentioning the WordPress editor. The reason for the comparisons is that I really like using the block editor to add different types of content to my posts and pages. It’s a remarkably flexible editor that gives anyone the ability to create some really interesting, and complex layouts, pretty easily.

Some of the other Notion features that I enjoy, and that I’d love to see in Evernote (or any similar service I use) include –

  • Support for Markdown;
  • The ability to link to individual blocks on a page;
  • The option to create a wide variety of page types, including simpler databases that I could refer back to later in other pages; and
  • Frankly, Notion is cheaper than Evernote (almost $20 a year cheaper relative to the Evernote Premium plan that I’m on).

I also like how easy it is to import my notebooks from Evernote into Notion. I ran a test import of my DnD notebook, and it generated a really handy index page with links to the individual “notes” (or sub-pages):

Room for improvement

All that said, moving to Notion isn’t an easy decision. For one thing, Notion lacks the powerful search features that Evernote has. Evernote will not only search your notes’ text, it also does OCR-based searches on your note attachments.

This is an extremely useful feature because it means that all of those PDFs, and images containing some sort of text, become searchable. This isn’t the case with Notion, currently. They are working on improving search, but OCR is probably a way off:

https://twitter.com/NotionHQ/status/1245123301694779393?s=20

I also use the Evernote add-on for Gmail to quickly archive emails that I want to refer to down the line. I don’t see a similar option for Notion, or even an email address that I can forward emails to.

A small issue that I noticed is that I also can’t change the storage location for Notion on my Android device. I made the mistake of buying a phone with 32GB of storage, so space on the device is at a premium.

Not being able to move the app’s storage to the SD card on the phone is a challenge.

Can Notion replace Evernote (for me)?

Currently, I’m not sure. I still want to spend more time experimenting with Notion, and may use it to create my next DnD adventure as a sort of “real life” test.

The search feature limitation is, well, a limitation. I add PDFs to my notes because I want to reference them later. Many of them are already searchable, so not being able to tap into the text that’s there already isn’t ideal.

For now, though, I like what I see, and it’s certainly worth exploring further. If the search feature is updated to at least include PDFs with searchable text, Notion starts to become a pretty compelling alternative to Evernote.

My Evernote Premium subscription is up for renewal in June, so I have a little time to decide whether to continue.

If anything, the (sneaky) credit that Notion gives users switching from Evernote makes a Personal plan that much more affordable, so switching is pretty easy, once I make the decision (on a related note, here’s a helpful perspective: Switching From Evernote To Notion – Alex Svanevik – Medium).

Categories
Applications

Brave browser seems to protect our privacy the most

I’ve been curious about the Brave browser for a little while now, and I’ve switched to Brave for any Chromium-based browser stuff I do (testing, browsing on sites that don’t support Firefox, and so on).

I found this Ars Technica post interesting. They summarise a study into browsers and privacy, and found that Brave probably protects our privacy the most:

Specifically, the study examined the browsers’ sending of data—including unique identifiers and details related to typed URLs—that could be used to track users over time. The findings put the browsers into three categories with Brave getting the highest ranking, Chrome, Firefox, and Safari receiving a medium ranking, and Edge and Yandex lagging behind the rest.

Study ranks the privacy of major browsers. Here are the findings | Ars Technica

I still default to Firefox (specifically Firefox Developer Edition). At the same time, I’m happy to keep exploring the Brave alternative.

Categories
Applications Music

Spotify recommendations are spot on today

I’ve been listening to one of my Spotify Daily Mixes that comprises instrumental movie and TV soundtracks. It has been giving me some excellent choices, many of which I haven’t heard before.

I’m really impressed! Here are a couple tracks that have become new favourites:

If only my YouTube recommendations for videos were as accurate!

Categories
Applications Useful stuff

Exploring the Brave browser

A few of my colleagues have been raving about the relatively new, Chromium-based Brave browser lately, so I decided to try it out.

I initially didn’t pay much attention because I’m pretty happy using Firefox as my primary browser. That said, I like a browser that blocks tracker crud on the Web, so I thought I’d try it out.

The biggest plus for me is that the browser blocks trackers out of the box. It’s one of the reasons I’m a big Firefox fan – pretty robust tracker blocking from the start.

Brave puts performance, and security at the forefront, literally, with indicators of how much the browser is blocking as you journey across the Web, and how much time it seems to be saving as your browse:

I haven’t really compared Brave’s blocking stats with Firefox’s (I’m not sure if I can really compare them directly given that I just see totals, not a breakdown), but it is gratifying to see that value go up.

In Firefox, I set my start page as about:protections so I see this data each time I start up my browser, too:

If anything, these values are great reminders of how much cruft is on the Web, degrading our browsing experience.

Another aspect of the Brave model is how it uses Basic Attention Tokens as a way to reward us consumers for visiting participating content creators’ sites.

I don’t fully understand how Brave Rewards work, but I like this idea of enabling consumers to make micro-contributions to content creators, and help support them. It’s a bit like Recurring Payments on WordPress.com.

That said, I intend doing some more research. The model intrigues me!


If you’re interested in trying the Brave browser out, here are a couple things I’ve discovered so far that may help you make the move from Chrome, if you’re a Chrome user:

  • Brave is Chromium-based, so it actually looks and feels a lot like Chrome;
  • You can install Chrome extensions in Brave, just like you do with Chrome;
  • Instead of using Google sync to sync between Brave browsers on different browsers, Brave has its own sync tool. This may be appealing if you don’t want Google at the heart of your browsing experience.

I’ve enjoyed using Brave so far. I’m not switching away from Firefox just yet, but I’m using Brave as my preferred Chromium-based browser, and it’s working well for me.

In the meantime, here are a couple posts that I’m going to read for broader perspectives on Brave:

Featured image by Jack Sloop
Categories
Applications Coding Tutorials

The missing piece in my Python scripts

My quest to automate parts of my workflows usually involves writing Python scripts to streamline some of my tasks as a Happiness Engineer.

One output has confused me for far longer than it should have, and I was shown the light today (in the form of a pretty simple solution).

My dilemma

Many of my scripts generate template documents. These include meeting agendas, hangout notes, and team reports. These documents include a couple components that I’ve largely automated using Python, such as –

  • Calculating dates and times in reports (sometimes including timezone conversions);
  • Taking inputs I provide in response to command line prompts, running calculations, and adding those to fields in my reports; and so on.

Many of my documents have a static list of team members that I ping much like Twitter mentions when I publish them as posts on internal blogs (we use internal blogs quite a lot, as you can imagine). Those lists each need to be updated manually every time there’s a change in the team composition, in each of the documents the list appears in.

Although the team composition doesn’t change frequently, I often find myself re-using a script for a team report, or hangout agenda, for example, in another group I work with. This means another set of documents where I need to manually create a list of people, and maintain that.

An example could be something like this:

Pinging: @john-doe, @maryjacobs, @davesmith, @janestuart, @tomwright, @steverobinson

The solution

Currently, the first part of generating this sort of list of people is creating a .csv file that looks something like this:

first_name,last_name,username
John,Doe,john-doe
Mary,Smith-Robinson,maryjacobs
Dave,Smith,davesmith
Jane,Stuart,janestuart
Tom,Wright,tomwright
Steve,Robinson,steverobinson

I was planning on using Python Classes to do this, but quickly realised that I don’t understand Classes nearly well enough to using this feature for this aspect of my documents.

I realised that there’s actually a simpler solution using .csv files and the csv module available in Python instead, after watching Corey Schafer‘s tutorial on this, here:

As an aside, Schafer’s tutorials are wonderful!

I was able to borrow from Schafer’s solutions to write a script that produced a list that looks something like this:

Pinging: ['@john-doe', '@maryjacobs', '@davesmith', '@janestuart', '@tomwright', '@steverobinson']

My script looked like this:

import csv

with open('people.csv', 'r') as csv_file:
    csv_reader = csv.DictReader(csv_file)

    members = []

    for line in csv_reader:
        wpuser = f"@{line['wp_user']}"
        members.append(wpuser)

print(f'Pinging: {members}')

I couldn’t work out how to just generate a list of usernames separated by spaces. I ran into a similar issue with other scripts where I similarly loop over a list of items to produce some sort of list-generated output.

In other words, I couldn’t figure out how to output the list of usernames without the []' characters you see in my initial output.

So, I asked for help on reddit where JohnnyJordaan pointed me to this StackOverflow post that includes a couple solutions to a similar question. I had searched for a solution to my challenge, but didn’t come across this answer (or anything like it).

Clearly, I need to work on my Googling skills when it comes to finding solutions to my coding challenges.

Anyway, the solution that JohnnyJordaan suggested is pretty simple. Instead of using something like print(f'Pinging: {members}'), I could rather join the items in the list with a statement like this:

print(f'Pinging: {", ".join(members)}')

As I suspected, the solution is pretty simple. It just eluded me, completely. So thank you to JohnnyJordaan for the pointer!

I also like the * that came up in one of the StackOverflow solutions, but it doesn’t work with the f strings that I tend to use. Still, there are other ways to use them. Trey Hunner has an interesting post about these operators here (if you’re interested).

Categories
Applications

You don’t need Facebook News to keep up with news

Facebook News (or, rather, a Facebook News tab), is rolling out in the USA, and there are valid concerns about this already, for various reasons.

Whether you’re in the USA, or not, you don’t need (and may not want to rely on) Facebook News to keep up with the news. Instead, there is a tried, tested, and widely available alternative that you can configure to suit your preferences right now: feed readers.

Advantages to using a feed reader

Feed readers have been around for decades, and use RSS or XML feeds that most news sites (and virtually all blogs) publish to syndicate their content. They aren’t exactly the Hot New ThingTM these days, but they’re still going strong. They also have a few advantages over options like Facebook News:

  • You have a wealth of choice when it comes to selecting your feed reader;
  • You can choose which sources to follow, and you’ll receive all the updates from all of your sources, pretty much as they publish them without relying on an algorithm to share the updates in your feed;
  • If you don’t like using your current feed reader, you can usually export your feeds, and move to a new feed reader.

Feed reader vs feed aggregator

When it comes to choosing a feed reader, you’ll want to make two decisions: which feed aggregator you want to use, and which feed reader you wan to use to read your feeds. Some feed readers are standalone feed aggregators, and you can use them to subscribe to your feeds on your local device.

Most feed reader apps (like the ones I mention below) will do this.

The real magic is when you have a feed aggregator that syncs between your feed reader apps. They’ll all enable you to subscribe to your preferred feeds. All you’ll want to decide is which one to use. There are a couple services to consider:

  • Feedly – I consider Feedly to be the spiritual successor to Google Reader. It’s a web-based service that has both Feedly apps for iOS and Android, and you can also use a variety of 3rd party feed readers to subscribe to your Feedly feeds;
  • Feedbin – Feedbin is similar to Feedly in that it’s a feed aggregator, and integrates with a variety of 3rd party apps on multiple platforms; and
  • Inoreader – This is another popular service that has mobile apps for iOS, Android, and Windows Phone.

Feed reader and service recommendations

Here are a few great feed reader options to consider:

  • NetNewsWire – This mainstay from a decade or so ago is back, and is being actively developed as an open source feed reader for macOS. It’s contributors are adding more and more integrations and functionality at a rapid pace;
  • Reeder – Reeder is a paid macOS app that I’ve been using for years. It’s packed with functionality, including a decent Pocket reader;
  • FeedReader – If you’re a Linux user, this nicely designed app is a good option to consider. It seems to have borrowed it’s design from a macOS app I like, Reeder, and integrates with services like Feedly to give you a desktop option for your Feedly feeds;
  • WordPress.com Reader – If you’re a WordPress.com user, you can also use the included Reader as a feed reader;
  • Nuzzel – If you prefer to receive your news updates on Twitter (Twitter is pretty well suited for this), then Nuzzel offers a great way to collate news updates, especially when you use it in conjunction with curated Twitter lists that you populate with your preferred news sources; and
  • Thunderbird – You may remember Thunderbird as Mozilla’s email app. It’s still being developed, and includes a feed reader too. Thunderbird is free, cross-platform, and open source, so it’s a great option too.

When it comes to keeping up to date with news, and the sites you’re interested in, feed readers remain a terrific way to do it. There are many options available when it comes to both aggregators, and feed readers. Make your own choices, and subscribe to the content that matters most to you.

Featured image by Roman Kraft