Skip to content

2024 Q2

Posted on:July 1, 2024 at 02:22 AM

And just like that, another quarter has passed! Here’s the recap as to how the last quarter went, right off the bat, having a predetermined set of goals make it working towards them much easier than just working on what feels right.

For 2024 Q2 we worked on the following:

For full source changes go to GitLab or visit the CHANGELOG.

Let’s dig into each one of them.

Show AutoSave status

See this post.

Add ID3 metadata

This was a request from our PawaLite users. They wanted to have a list of speakers listed in the MP3’s metadata.

Speakers List in ID3 Metadata

Since we already had the list of speakers to add them to the MP3 metadata, it was a simple stretch to include this in the Discord message embed as well!

Speakers List in Embed

If you would like to have other metadata included here, we already have the pipeline in place so chat with us on Discord!

Upgrade to Java 21 LTS

This change did happen and it has little bearing to your experience using pawa on the day to day basis. Keeping up to date with the latest Java version ensures that we’re getting updates for security and performance improvements, which will affect pawa indirectly.

Stretch Goal: Show speakers on webapp

Failed! To make this change, it would require changes to our database and we also need a way to obtain the user’s pfps so instead this will a new Stretch Goal will be chosen for Q3.

Bonus: Google Analytics

Sigh…

We already track page metrics using Plausible, we do this to understand how much traffic we’re getting and if there’s any errors that are happening that we can address before you all notice.

The reason for also adding Google Analytics is because ad providers only accept GA as proof of traffic.

I want ads to be the last resort for monetization, but I need to start collecting metrics now if I want to turn the ads machine on at some point. I’d much rather monetize in a way that provides value to you all so I’m open to new ideas!

Q3 Goals

For Q3’s milestone, I’d like to focus on addressing performance and quality of life improvements. This is what I have in mind.

pawa’s messages

Embed messages did not exist when we created pawa, so we send messages on channels to communicate. We added slash commands and experimented with embed messages. They look sooooo much better!

The goal for this is simple, move communication to embed messages rather than direct messages to a channel. We’ll start with the /recording command. My vision is to only send one embed message and keep updating that.

/recover command usefulness

I fixed some issues in the previous version of pawa that made the recover command not as useful. Most of the time it is not able to find a recording but I need to know why. It’s usually one of these three cases:

There’s no features here, just quality of life improvements for better feedback. After this, I can probably make this command available for others to use. Should this be a premium command?

Database Query Performance

Not much here, I use PgHero to monitor the performance of the database queries made, and it’s currently flagging two potential improvements. I also noticed some areas of the code that are making way more queries than they ought to be making slowing startup.

Stretch Goal: Add Log in with Discord to the webapp

This ties to the last quarter’s goal to show the speakers for the recording. What I’d like to do instead is enable the login button and have a proper landing page that will allow you to choose the server that you want to look at. We’ll start with no customization only viewing the recordings that for that server.

Stretch Goal: Upgrade PostgresQL 13.1 to 16

Paired with the above, the version of our database is comically old… There’s a tiny risk in dataloss, but we have hourly backups of the database so it’ll just be annoying and may cause some downtime.

Stretch Goal: Migrate Server

We’re hosting pawa in a really old version of CentOS and it’s no longer supported. I’ve had another server ready to go just need to install all the things. Might pair this task with the database upgrade.

Been procrastinating this change because it’ll cause downtime and can be potentially time consuming.