GrooveStomp Profile Picture

Brief Update for 2016-05-11

I haven’t been too active here or on my daily coding project1. So what’s been going on?
Honestly, not too much. A lot of Dark Souls. I mean watching VaatiVidya2 and EpicNameBro3 while also playing through Dark Souls: Prepare to Die Edition4 and Dark Souls II: Scholar of the First Sin5. I love that series so much. I’m not very good at it and I don’t like everything that the games do or that the community is interested in; but overwhelmingly I am completely entranced by it.

Besides videogaming and family business, I’ve been doing a little bit of software tinkering. However, this tinkering is a lot less on the programming side of things and much moreso on the configuration and setup side of things. I’ll document these things more in the near future. Here’s a quick summary of what I’ve been playing with:

- Mumble Raspberry Pi Server
- SSD Nodes VPS for my domain name and to forward network traffic to my home servers
- X-less Arch installation on my Dell Mini 10 (ie., console-only)

And some things I’ll be playing with soon:

- Much more console-land exploration on Arch
- Sabotage and/or Tiny Core Linux exploration
- Linux From Scratch study
- More electronics (when I get my AliExpress shipments)
- More home servers
- Linux Kernel programming study
- Linix Framebuffer programming study
- Rust language study

And more family time, more workout time and more Dark Souls. :-) I plan to write on all of this stuff and I think having my new setup on the Dell Mini will help achieve this goal.


1BitBucket Daily Coding Practice
2VaatiVidya on Youtube
3EpicNameBro on Youtube
4Dark Souls: Prepare to Die Edition on Steam
5Dark Souls II: Scholar of the First Sin on Steam

I like KDE

So, it turns out I like KDE.

I use Ubuntu a lot. It’s installed on all of my computers and it’s the server OS I’ve used at work for the past five or so years. Typically I stick with Unity on the desktop. There are a few reasons why I opted to change: I like to try new things, I get bored, I haven’t used KDE in a while. It’s hard to say exactly. A few strong contenders: I was rather impressed with Kdbg recently and started using that in all my C projects. I’ve been using Manjaro, and on my more powerful machines I opted for the default distro which includes KDE. Rich Geldreich told me to use it.1

I had been using it for a few weeks and ran into similar issues with regards to multiple monitors and screen locking, so I opted back to Unity. Well, here I am switching right back to KDE and it is definitely a much more comfortable, possibly more intuitive UI.

So there you have it. I apparently like KDE.


1Rich Geldreich: A Shout-Out to QtCreator 2.8.x on Linux

Game Reviews, OSes and the 3DS

Today is a grab-bag of miscellaneous thoughts and updates that aren’t necessarily related to each other.

First off, I haven’t been keeping up with my daily programming practice, but it’s not for lack of will. As my last post may have illustrated 1; I’ve been dealing with computer problems. I’ve only recently managed to get a working installation of Windows on my machine, but I’ve run into problems with my GNU/Linux distro, so actual productivity work is put on hold until that’s resolved.

Game Reviews

I mentioned previously my desire to do “intentful game reviews.” 2 Clearly that has not gone anywhere. Part of the reason is a lack of desire to play the sorts of games I explicitly expressed interest in playing. Partially it’s a stronger focus on programming and non-gaming related activities as I also described. 3

The Witness is out now, and as far as I can tell, it is the epitome of the kind of game that I expressed a desire to spend time thinking about and reviewing. Part of all this hoopla with dual-booting Windows and Linux is so that I can actually play The Witness. (As well as Titanfall and The Witcher 3 among others.) So we’ll see. I’m hopefull I can get my machine into a nice state where these kinds of things can happen. :-)

Going forward, I don’t see myself expending a lot of effort on thinking about games. Chris Franklin does a better job than I can see myself doing 4 and I don’t want to put much effort into paying particular attention to experiences I’m not actually enjoying. So if I like a game, I’ll play it and enjoy it, and if it sticks with me, then I may deem it worth of comment on here. But don’t expect anything resembling a schedule or consistent practice.

Windows 7 vs. Any Modern GNU/Linux Distro

Just a quick thought on this that I don’t think deserves a full post of its own.
During my recent adventures in installing various OSes in various ways, the discrepancy between a freshly installed Linux system versus a freshly installed Windows 7 system hit me with full force.

This isn’t all that surprising, as Windows 7 was released in 2009 and here we are 7 years later. Nevertheless, I have a Windows 7 install disk and I have various GNU/Linux distros kicking around, so my actual experience here is directly affected.

Windows 7 by default gives you so very little. My desktop LAN interface doesn’t even work without installing several drivers for my motherboard. Once I have network access I have to go grab a video driver to get out of 800x600 resolution. In contrast, any modern Linux distro will install all necessary drivers by default so you’re at least in a basically functioning environment. There are caveats, sure, like a reasonable chance that your wifi card isn’t supported in an obvious way, or maybe you’re stuck with open source video drivers that don’t perform as well as the closed-source binary blobs. Even with these caveats, the base installation you’re left with is leaps and bounds above what a fresh Windows 7 installation will get you.

Windows 10 does seem to address this gap.


I’ve been dabbling in various Zelda games recently. I finished Wind Waker several weeks ago, and I’m well into Twilight Princess now. I was having fun with Twilight Princess, but the Wii controls finally got to me. The imprecision is absolutely killer. There’s no point playing a videogame if the input you’re providing is consistently getting misinterpreted. As much as I like aspects of Twilight Princess (and by extension; Skyward Sword), the Wii’s control system just destroys the overall experience. This distaste has led me to seek out other isntallments in the series that use “standard” controls. The most obvious method of doing this currently seems to be the 3DS.

So I borrowed a 3DS from Lucas. 5

So far I am really enjoying it. I’ve been playing Ocarina of Time. I play with the 3D setting on, but set to about 2/3rds of maximum depth. I don’t think Ocarina of Time is a perfect game by any means, but this is one of the better ways I’ve experienced Link to date. I really like the 3D effect, too; it makes it seem like there’s a little 3D physical toy acting according to my whim. That may get old, but I do think the 3D effect adds to the overall experience, however slightly.


1GrooveStomp: UEFI and Windows 10
2GrooveStomp: Inspired to Share Gaming Experiences
3GrooveStomp: Daily Coding
4Errant Signal
5Lucas Amorim

UEFI and Windows 10

My primary desktop environment is some variant of GNU/Linux. The only case where this hasn’t been true is when I was really into PC gaming and was operating off of Windows 7 for that purpose.

Recently I’ve been more interested in privacy. One nice thing you can do several modern GNU/Linux distributions is full disk encryption (FDE). I’ve been using this where possible for over two years now. Unfortunately, FDE requires the GNU/Linux distro to completely take over your HDD. For my purposes, I wanted to dual boot Windows and GNU/Linux and have each of them use FDE. There are many blog posts and articles that a quick internet search will reveal which give insight on how to accomplish this; however I saw no success whatsoever. The problem seems to be exacerbated by the switch to UEFI from BIOS. I’ve been able to install Windows 7 and Manjaro KDE side-by-side without encryption on UEFI, but literally every other combination I’ve tried has had some major failure where I’ve been unable to access one OS or the other. Right now it looks like the only solution I have is to have both OSes unencrypted and to modify Grub to chainload Windows. For now I’m choosing which OS to boot from the UEFI boot menu.

Choosing which OS to boot
UEFI is terrible.
It sounds like UEFI introduces a lot of nice technical upgrades over legacy BIOS mode, but every single time I’ve ever had to know that I’m dealing with UEFI it’s been because there’s a problem preventing me from doing what I want to do. The best thing I can say about legacy BIOS is that I didn’t know anything about BIOS and I didn’t care. I could do what I needed to do to dual-boot or replace my OS or whatever. UEFI completely breaks this capabability of the computer to simply work. Now I need to know what UEFI is and how UEFI works in order to try and configure my computer how I want. Even then it doesn’t usually work; and a cursory search seems to indicate that I’m not the only one who’s encountered these problems. To top it off, I’ve technically found a workable solution for what I want (though both my logical volumes are now unencrypted…) but I have to select which OS to boot from the UEFI boot menu. To do this I can’t use my regular keyboard (A Kinesis Advantage) so I need to have a secondary keyboard plugged in. This situation is full of so much fail and is so obviously worse than where things were before. Alas, such seems to be the way of things.

It’s pretty cool to shit on Windows these days. The web is cool, everybody does web development, and all web developers use a unixy environment. (Likely some variant of Mac, though there are a few of us GNU/Linux stalwarts kicking around.) Windows is pretty awesome, though. I’m not a die-hard Windows guy, so I’m not intimately familiar with how awesome Windows is (or, conversely, the extent to which it is awful), but there are a few obvious things:

Again, very high level as I’m not a Windows user so I don’t have an in-depth understanding of these things. These are just the obvious bits that I am aware of.

Installing Windows 10 is awful.
It is literally the most awful OS installation procedure I’ve ever gone through.
First of all, how do you get Windows 10? Buy a CD? Get a downloadable image? Nope! You need to buy a new computer with it already installed, or upgrade from an older OS. You literally cannot get an installable image of Windows 10 for an old computer.
Okay, sure. That’s terrible, but let’s go along with it.

I’ll just install Windows 7 here and then get the Windows 10 installer and update. No problem.. This doesn’t work! I’m serious, you can’t do that. First you have to install every single update that you can. In my case this was over 117 required updates taking up over 1GB of bandwidth. This is required before you can install Windows 10.
Okay, that is seriously bad, but let’s go along with it.

Okay, two updates simply fail over and over. I also can’t install all the updates at once for some reason, so I select a subset and install those in one go. I do about 30 at a time, and every single group requires a full restart.
This is really, really awful, but fine, whatever, we’re pretty used to that by now.

Now I can install Windows 10, right? Sure, let’s run the installer. Going… fine, screen, click through; okay, now I have to insert a product key. I don’t have a Windows 10 product key, so I use my Windows 7 product key, right? I literally have no idea and there’s no documentation on this that is anywhere obvious. Let’s try it.
Nope. Doesn’t work.
Okay, let’s search and see what we can find. Hmm. Looks like the Windows 7 product key should work fine. You actually need to update your entire OS first before you try to install Windows 10, and then you won’t be prompted for a product key because Windows knows your already activated Windows OS that you’re running and will register that with your motherboard so you’re automatically good to go.
Except that is clearly not happening. I am very clearly being asked for a product key despite being as up to date as I can be. Okay, whatever, let’s find some help. Oh, look, a Youtube video that says to just use this random product key to proceed. Okay, that works. Great. Now Windows 10 is installing. Awesome. It’s finished. Okay, now let’s just change the background because the default one is garish. Oh. Windows 10 isn’t activated. Hmm. Okay, activate it. Oh, I have to input a product key. Okay… Oh, Windows 10 doesn’t accept my Windows 7 product key.

So, I opened a support chat with Microsoft. A customer support agent used remote desktop to troubleshoot things. It looks like they mostly just enabled a bunch of services that I disabled when installing Windows 10 and that essentially allowed Windows 10 to update fully and activate my key. I’m sure I missed something there, but that’s certainly what it looked like.
Yes, it looked like during my Windows 10 install, configuring Windows 10 to not automatically share all my data with Microsoft broke the installation completely.
This entire process is so broken. How did any of this get okayed?

Well, it seems like I might be in a position now to finish configuring my desktop. It’s only taken three days so far. The first step will be trying to get a bootable image out of Windows 10 in case things get screwed up along the way to final configuration. Wish me luck.

An Update On Self-Hosting Progress

Well, it seems I’m making very slow progress towards my goal of self-hosting. The first issue I’ve run into is with officially support OSes. I like running Arch Linux, but Arch Linux is not officially supported by either OwnCloud or GitLab. GitLab is the more demanding of the two applications, requiring a minimum of 2GB of RAM and strongly recommending 2 cores. Unfortunately, I have Manjaro (an Arch distribution) running on my Dell Mini 10 where I installed GitLab via Yaourt; but that machine only has 1GB of RAM and a single core. Luckily, my Acer Aspire One D270 has 2 cores and 2GB of RAM, and I just finished installing CentOS 7 on there the other day. I’ll see if I can get GitLab running on it. The GitLab installation instructions are not at all breezy, though; so we’ll see how far I make it this week. In the meantime, I’ll continue searching for a Debian 7 or CentOS 6.5 image for the 32bit Dell Mini 10 so I can start installing OwnCloud on that.

Self Hosting

I’m going to start this post with a little problem I created for myself.

So many computers

Let’s see here. I have a gaming desktop at home, a work laptop at work, a netbook at home for resource-constrained programming and a Raspberry Pi. That’s cool. Daniela also has her own computer, but that’s hers and I simply leave it be. Two weeks ago I caught myself watching The 8-Bit Guy talking about the Macbook Core Duo and seeing if it’s obsolete1. I was really impressed by how capable the machine still is, and also had the Libreboot project sitting in the back of my mind. Specifically, Libreboot mentions 2008 and earlier Intel chips possibly being okay… So that’s arriving on Thursday, presumably. Oh, and I just bought another netbook off of a coworker.

Maybe, just maybe I have a problem.

Did I happen to mention that I’m looking to get a replica Altair 8800, too?2

Power Usage

Okay, time for a little tangent.

One interesting thing about all these different computers is how much power they draw and what they can be used for. Initially I picked up my first netbook for resource-constrained programming, thinking I could do some software rendering optimizations on it. As my collection of computers has grown, my goals for each machine have changed. I now envision an army of servers aided by a couple of special purpose machines. Well, maybe not an army, but definitely two servers (each netbook) plus hooking up my Raspberry Pi as a torrent machine. My desktop will change once again to a hybrid gaming/programming machine - granted I can ever wrangle UEFI dual boot with full disk encryption; and my work machine will remain as-is.

I think the netbooks are great as potential servers because they have pretty low power draw compared to my mammoth desktop. According to some quick searches and rough calculations, I’m looking at power draws of 10-22W, 45W and 3.5W respectively, for each of my Dell Mini 10 (netbook 1), Acer Aspire One (netbook 2) and Raspberry Pi. Compare that with my 500+W desktop with a power supply so large that I know it’s more than 500W, I just can’t remember how much more.


The new Macbook is interesting. It is apparently supported by Libreboot.3 I actually didn’t realize this before splurging on it, but it has turned out to be a happy coincidence. I mean, I did have suspicions it would work out… But why do I care about Libreboot? Have you heard about Intel’s Management Engine?4 5 Or how about AMD’s PSP?6 Basically, we’re all screwed. As my good friend Lucas says, “Encrypt Everything.”7 At work I’ve already configured DNSCrypt, and you may have noticed that my website is also served via HTTPS now. This is all part of the big plan.

Self Hosting

Right now I host my website via GitHub pages. I also host all my code projects on BitBucket and GitHub. I have photos up on SmugMug and I stream videos from Netflix. That last one will probably remain, but I will definitely change the others.

Here’s the plan: My brother recently brought to my attention that my router is supported by OpenWRT8. Great!

  1: Install OpenWRT onto router
  2: Install OpenVPN9 onto router
  3: Install DNSCrypt10 onto router

That’ll set up my home environment so all of our locally networked devices have a secure, private connection out to the wide internet. Now, remember all my netbooks? Yeah, those fit nicely into the plan.

  4: Setup OwnCloud11 on netbook 2
  5: Self-host my website on netbook 1
  6: Host code projects via GitLab12 on netbook 1

The final piece will be hacking together a gateway so my webserver is accessible publicly. I may use this solution to cover my OwnCloud server as well.

  7: Get a small VPS instance for $5 USD/mo. from Digital Ocean13
  8: Setup SSL keys between my VPS and home machine(s) via Let’s Encrypt14
  9: Forward appropriate requests from my VPS to my home machines via some wizardry

Well, that’s the plan anyway. Oh, I intend to self-host email as well. But, I believe that option is rife with complexities, and I’m reasonably happy with ProtonMail15 so far.

PS: I pay Private Internet Access for access to their non-logging VPN.16


1The 8-Bit Guy: Is It Obsolete?
2Briel Computers Altair 8800 Micro
3Libreboot: Macbook 2,1
4Hackaday: The Trouble With Intel’s Management Engine
5Libreboot: Intel ME
6Libreboot: AMD PSP
7Lucas Amorim: Encrypt Everything
9OpenVPN on OpenWRT
10DNSCrypt on OpenWRT
13Digital Ocean
14Let’s Encrypt
16Private Internet Access


This is a short post. I really like videogames, but I often find myself lacking motivation to play. I think this happens a lot because I know there’s a serious time commitment to actually complete most games and I’m not normally able to play for more than an hour or so.

Well, Dark Souls has been absolutely consuming my free time lately.

I got quite into Dark Souls about a year ago when I picked up a copy for PC. Since then my interest has waxed and waned until lately where I’ve been watching Let’s Plays and Guides.

Well, I found an awesome videogame critic: Matthewmatosis1. I strongly recommend watching his reviews of the Metal Gear2 and Zelda3 series. Both are really awesome. His Zelda series, in particular, really nails pretty much everything I’ve ever thought about those games. He’s also got a great in-depth commentary on Dark Souls4, and a critique of Dark Souls II5.


1Matthewmatosis Youtube page
2Matthewmatosis Metal Gear Solid Reviews
3Matthewmatosis Zelda Reviews
4Matthewmatosis Dark Souls Commentary
5Matthewmatosis Dark Souls 2 Critique

Daily Coding Practice

I’ve mentioned before that I’ve begun what I call “daily coding practice.”1 My inspiration for this comes directly from Mike Acton by way of HandmadeCon2. Mike said that we as serious, professional programmers should be dedicating some slice of time every day to practicing our craft, even if it’s as little as 30 minutes. Now, Mike also emphasized small, throw-away practice, similar to doing scales if you were to practice guitar. You don’t do part of your scales then pick up the next day and continue. I have yet to fully come to terms with this, but I have at least taken inspiration from the “a little bit every day” part of it.

It is not easy to do this.

I’m managing 3-4 times per week. It’s not easy to do, but it is rewarding, and I think I can keep this going for a long time; perhaps even indefinitely. Like I said, I’m not doing throw-away practice like Mike suggested, so sometimes I end up spending 2 or more hours trying to finish off what I’m working on. A couple of times I’ve spent more than 4 hours in the evening. I don’t recommend this - it wears you out very quickly. I am, however, not only working on side projects. I did a little bezier curve rendering on the Pico 83, and I fully intend to do similar projects in the future. I also have plans to work through Project Euler in Rust and other languages. Heck, just take a look at my wiki page!4

There are a lot of ways you can tackle daily coding practice. It depends on how much free time you have, how engaged you are in other projects, what other responsibilities you have, whether you even want to do it. My situation is this: I have family responsibilities and I’m typically thoroughly engaged for the full work day. I have a solid two hours to spare in the evening. This is completely unaccounted for time. There are three really big, obvious things I want to focus on in this two hours:

  1. Family
  2. Health and Fitness
  3. Programming

I’m not perfectly efficient, however, and do find myself unable to concentrate or otherwise unmotivated with some frequency. Note, also, that I’ve also ordered this list in terms of how I value each item’s relative importance. I will always prioritize time with my family if the need is there, and often if the opportunity presents itself. In actuality, I always prioritize #3 over #2, but that’s not what I desire to keep doing and will hopefully be able to report otherwise soon. What I’m ultimately trying to say here is that two hours is not a lot of time in which to perform all three tasks. It’s doable, but it requires good discipline. I lack that discipline but am working on it.

I find it difficult to make really good progress on side projects by divvying up this 2 hour chunk of time. I also spend this time on videogames, and sometimes boardgames. (At least I used to do boardgaming somewhat consistently.5) I align myself with Cal Newport and his thoughts on deep work6 and have found my best progress has come when I’ve been able to dedicate 4+ hours to a project. On a weekday this requires sacrificing something else like my evening stretches (Yes, that #2 above is in addition to stretching) or having a “proper” goodnight routine. A viable alternative I’ve been inadvertently using is to focus on one or two items on a given day, shuffling the remaining items to other days. Maybe I’ll do 2 hours of fitness on Monday, then 2 hours of programming on Tuesday, then 2 hours of programming on Wednesday. Like anything worth doing, it’s not always easy to do and the benefits aren’t obvious or immediate, but I do think it’s a worthwhile endeavor and will see where it leads me.


1 Previous post of mine mentioning daily coding practice. 2015-12-12: Ludum Dare
2 Mike Acton speaking at HandmadeCon
3 Bezier Curves on the Pico-8
4 BitBucket Practice repository wiki page
5 My posts about boardgames
6 About Cal Newport

Ludum Dare (2015-12-12)

Ludum Dare 34 kicks off this weekend. There are two themes that tied: “two button controllers” and “growing.” I was fully intending to participate, but I am having serious doubts about that decision now. I’ve managed to build the tiniest of skeletons of an application, but I have so much to do in order to get anywhere near a working game that I know it’s basically infeasible. This is pretty much the reality when you have kids and a full time job and you’re already doing daily programming practice. Most of my responsibilities get kicked off to the weekend. Even then I’m just barely pulling my weight. Anyway, we’ll see.

Chris Franklin commented on Twitter about month-long jams that require much smaller commitments of time on any given day. That sounds pretty good to me. I’ll continue with what I have and see where it goes. Maybe I’ll abandon it after this weekend… maybe I’ll continue with it through December, or maybe I’ll even just continue with it until I get bored of it or decide to finish it off.

It’s a tough call. I get that the point is to just start making something because making something is better than making nothing. I 100% get that. It doesn’t mean it’s easy to overcome those built-in walls, though. :-) And, of course, I see something awesome like this Space Harrier-esque Pico8 game and figure just effing do it in Pico8.

Bernband Review

I’m drawn to the idea of walking simulators. It’s no coincidence that my first “intentional” game review was of Proteus. Modern so-called “AAA” gaming is full of violence, so walking simulators are a nice conceptual departure. I don’t have a lot of experience with walking simulators, but I have played a few, including: Dear Esther, Proteus, Shelter, The Stanley Parable and Gone Home. Even among that small selection, there’s a wide variation of gameplay and themes, so clearly this is a broad genre worth exploring.

To start off with, I really love the visual aesthetic of Bernband. I’m somewhat nostalgic about lo-fi graphics, but it’s not really “my bag” per se. There was a time when my main interest in videogames was seeing bigger, better, shinier graphics. Even these days I’m still rather interested in the continually advancing hedonistic graphical treadmill and like to push my “fantsy pants” Geforce 660Ti to its limits. With all that being said, there’s a strong appeal in lo-fi graphics. I think giving your mind the freedom to fill in the blanks is a big part of it; perhaps it’s even the only part of it. From a purely technological standpoint I’m curious about these kinds of graphics because the burden of implementation appears to be much lower, and I’m a game developer wannabe. Bernband takes advantage of this mental “filling in of the gaps” but simultaneously fails to really push it to do something wonderful. You see musicians repeating the same too-few-frames looping animation and other passive walkers just bumble around with barely any agency. In short, it’s kind of a mixed bag.

My gaming pc is a Linux desktop, and that sometimes presents challenges for gaming. Bernband provides a native Linux client like more and more games are doing these days. Just take a look at the list of Linux-compatible games on Steam. Unfortunately, my experience wasn’t hurdle free. Bernband was written to dynamically link against 32 bit libraries, but my OS is 64 bit, so I had to install 32 bit versions of libglu, libxcursor and libopenal. Actually, the game runs without libopenal 32-bit (without sound) and this is how I first experienced it. Without sound is a little boring, so I improvised. I found a Bernband trailer and then looped the music from that trailer, also known as Habits by DJShrike. This was actually a pretty good experience. After a quick run through, I sorted out the libopenal issues and played with the originally intended sounds. Honestly, I preferred the experience with the looping soundtrack. The in-game sounds are somewhat lo-fi like the visual aesthetic, but also repetitive and lacking character. They’re fine and passible, it’s just that I prefer my experience playing with the soundtrack instead. The looping soundtrack lets your mind wander and improvise all the sounds that you’d expect to hear, in similar style to how the lo-fi visuals let your mind fill in the gaps.

I’m specifically opting to review games that are outside of the norm. My intention is to broaden my experience and escape the narrow bubble in which I live my everyday life. It’s great to absorb myself into the things that I already like, but there is so much to experience that’s simply different. I read books, watch movies and listen to music a little outside of my normal tastes, and now I want to do the same with games. This is an interesting experience, because so-called “walking simulators” are nothing like mainstream games. I struggle with Bernband like I struggled with Proteus. There is a lot to like in the experience, but it seems shallow upon reflection. There are hints of greatness, but what little agency is available quickly highlights how shallow the simulation is. I’ve broadly divided my desired gaming experiences into two categories: experiential and ludic games. Bernband is definitely an experiential game much moreso than a ludic game, but it fails to deliver a particularly noteworthy experience. The setting is excellent and the presentation is mixed, but good; but the game doesn’t actually say anything or go anywhere. It’s very shallow. Despite the tone of what I’ve written here, I still think that’s okay. I largely enjoyed my Bernband experience and would love to see more exploration of that setting.