diff options
Diffstat (limited to 'content')
-rw-r--r-- | content/blog/ditched-iphone.md | 36 | ||||
-rw-r--r-- | content/blog/new-website.md | 34 | ||||
-rw-r--r-- | content/projects/resurrection.md | 45 | ||||
-rw-r--r-- | content/projects/uirc.md | 51 | ||||
-rw-r--r-- | content/projects/wiimmfi.md | 16 |
5 files changed, 182 insertions, 0 deletions
diff --git a/content/blog/ditched-iphone.md b/content/blog/ditched-iphone.md new file mode 100644 index 0000000..f6c7379 --- /dev/null +++ b/content/blog/ditched-iphone.md @@ -0,0 +1,36 @@ +--- +title: "Why I Ditched My iPhone After 7 Years" +date: 2022-12-02T11:10:36-07:00 +draft: true +--- +I got my first Apple product while I was just in elementary school: an iPod Nano 3rd Gen that was pre-loaded with Adele and the movie WALL-E. And a few years after that at 10 years old, I got an iPod Touch 4th Gen that opened what felt like other planets for me to discover. Then at Christmas of 2014, I got an iPhone 5c, my first cellular device, back when Apple gave them away for free. I was officially hooked into what we know it as today: the Apple Ecosystem. I was stuck in this honeymoon phase for almost 5 years, until last year when I became more aware of odd practices in the tech industry, the incredible world of open-source software, and the ways the devices I was using every day were using me. + +I graduated high school in 2020, the same time when COVID-19 began. As everything began shifting online as high school ended, I was required to sign up for several accounts for my college classes that summer, and also for other services that my friends were using to communicate such as Discord and Zoom. All of which I did blindly without doing any research or reading between the lines. I stayed comfortable with where I was at and, more importantly at the time, where my friends were at, and it wasn't until I left for college in the fall to discover how much clash and controversy there is in the tech industry. + +## The Awakening + +It wasn't until the beginning of 2021 that I started seeing articles, old and new, of these popular companies I had tech accounts with were either becoming breached or willingly sold my information. Apple, Google, Facebook and Amazon have had their fair sharing of data and anti-trust lawsuits. All of which I have usually never taken seriously. But in the light of that, I also became more aware of free and open-source software and how it's freedom not only confirms our trust in a product, but also it's ability to share new projects and be able to have that feeling of independence after relying on proprietary software that hides it's secrets. While I wouldn't call myself an open-source purist, I do my best to advocate and use open-source software when possible. With both of these things in mind, I have worked my hardest to move everything I do to open-source software and having my independence away from a single tech company, notably Google, by relying on others for different tasks. At this point I feel pretty confident I have done so the best I can, but one contender remained: my iPhone. + +At this point, I have gone through 3 more iPhones: the 6, 6S and 11. (The 6S I had was a champ!) But now as my 11 is now paid off the two-year contract and I now have all this knowledge, I had a decision I had to make: Do I continue settling for a new expensive iPhone, or do I take the leap of faith and go Android? After all, [Android is open-source](https://source.android.com/) and based on Linux which I love using and supporting, it embraces being open through side-loading where [Apple has a garbage take on it being a security hazard](https://www.youtube.com/watch?v=huC9lvQi47o) (though I do love Craig's charisma talking about it), and, in my opinion, does a better job of managing permissions and privacy. But, if I switch, I'll lose iMessage, my Apple Watch, and the respect from my friends (a majority of whom use iPhones). + +So obviously I went the Android route. Specifically, I'm rocking a Google Pixel 5a with [GrapheneOS](https://grapheneos.org/) installed. Yes, buying a Google Pixel device for privacy sounds incredibly ironic, but they are actually the [best phones for privacy and security](https://www.privacyguides.org/android/#google-pixel) due to Google implementing the Android Security Model correctly and Google being okay with you to flash custom OSes to the device as long as you buy it unlocked. Plus, most privacy-based Android distributions are only available for install on Pixel devices. I also didn't hold out for the 6a coming at the end of this month since I liked the appearance and feature set of the 5a more. So how are my first impressions? + +## Privacy + +I feel like I have control of my life again using Android. The amount of control I am given over every single application, including the sandboxed Google Play Services with GrapheneOS, is incomparable to the experience I had on iOS where it was simply a toggle or a setting buried deep with no further explanation. I also really like the bare system that GrapheneOS leaves you with after installation. Reminded me a lot of installing Gentoo or Arch Linux and made me happy. I have been very annoyed to find out that some apps require Google Play Services to do something simple such as send notifications (specifically Discord) or just work in general, but having them sandboxed and controlled like an app I installed from the app store gives me a little more peace of mind. + +You might ask, why did you not go with [CalyxOS](https://calyxos.org/)? And the reason is simple, GrapheneOS was the first OS I was made aware of and I liked the control over Play Services, whether from Google or microG. If you are debating which one to install, I believe GrapheneOS is the better option for full privacy with the option to use Play Services, where CalyxOS provides privacy with the convenience of Play Services through microG. + +## Apps + +Luckily I tested the waters before switching over since I had a Pixel 2XL I bought for $25 in order to make developing [Wiimmfi Watcher](https://brysonsteck.xyz/projects/Wiimmfi%20Watcher/) easier. I used that phone to find potential open-source replacements for every day apps through F-Droid and Droid-ify and find outlets to get the other proprietary apps I need with Aurora Store. I also ended up installing a couple of the [Simple Mobile Apps](https://www.simplemobiletools.com/) to replace a few apps that GrapheneOS comes with since some of them are extraordinarily outdated. Other than that, no issues with apps whatsoever. + +## The Phone Itself + +Navigation is a bit of a struggle right now, I forget where I am most of the time getting deeper into apps. I also completely forgot what a lock screen is, so sometimes I will lift up the phone and swipe up to try and see other hidden notifications but end up getting to the passcode screen instead. + +The Pixel 5a is also a mid-range phone. I have only used high-end iPhones for my life and right now the phone does not feel as snappy, but I also believe that it's very capable of doing the jobs I need it to do. So far 5G has done nothing exciting with me, however I work from home at the moment so I don't leave the house much to test it out fully. I have had weird issues with calls, but I think it may be an issue with the network I'm using. + +## Final Thoughts + +These last three days have been exciting! I can't wait to see how my experience will be after a month. In fact, I will try to create a second blog post after some time detailing how I felt about everything. Stay tuned and I'll give you the deets! diff --git a/content/blog/new-website.md b/content/blog/new-website.md new file mode 100644 index 0000000..13fb801 --- /dev/null +++ b/content/blog/new-website.md @@ -0,0 +1,34 @@ +--- +title: "Welcome to the new website!!" +date: 2022-12-02T11:10:17-07:00 +draft: true +--- +**UPDATE (May 29, 2022) :** Resurrection is now updated and my main projects are now highlighted on the website. Thank you for your patience! + +Hello, and welcome to the new website! Now I have the ability to post blogs and easily add and edit information about projects I currently work on. So far everything has been going fairly smoothly, but a couple of unexpected road-blocks have surely arisen. In the meantime, I wanted to give you more information about why I chose to switch the domain for my web server, and what were the drawbacks of doing so. + +### Why Did I Change Domains? + +It's a combination of four different reasons, half of which are not well justified by simply buying a new domain: + +1. This new domain is cheaper to maintain for longer periods of time. +1. I would like to escape using Google services as much as possible, of which the old domain was registered with. +1. I wanted an excuse to start this new website made with the Django framework, and the downtime gave me an excuse to do so. +1. I have no idea how to switch around `certbot` certificates between web servers. + +### What were the Drawbacks of Changing Domains? + +There weren't very many! The minor one is that I just have to go back to any of my accounts online that mention the old domain and add the new one instead. + +The major drawback is that all versions of my projects that use my web server to check for updates now return errors. These projects include: + +* Resurrection (Java throws errors, but doesn't affect the functionality of the program afterwards.) +* Wiimmfi Watcher (Displays a Toast saying there was an issue, but this project is no longer maintained anyway.) + +Resurrection 1.3.2 will release in the next two days to point to the correct domain to check for updates. + +### What Will Happen with this New Website? + +Not much really. + +I have always seen my website as a way to quickly showcase the projects I've worked on and I wanted to not only make it easier to add and update my projects on my website, but also be able to post blogs on topics that I believe are relevant and show how much I have grown. So hopefully you will be here for the ride while I work on getting the website fully functional! diff --git a/content/projects/resurrection.md b/content/projects/resurrection.md new file mode 100644 index 0000000..6e12c03 --- /dev/null +++ b/content/projects/resurrection.md @@ -0,0 +1,45 @@ +--- +title: "Resurrection" +date: 2022-12-02T11:10:50-07:00 +draft: true +--- +Resurrection is a Spigot/Bukkit Minecraft Server plugin that forces players to wait a certain amount of time before rejoining the world. This allows for tactical planning for games such as faction survival and other PvP gamemodes as it can severely penalize an entire team if care is not taken. + +Resurrection is intended to make players wait long amounts of time between death and respawn, preferably 24 hours minimum. Resurrection sets the time to be 24 hours by default. However, you can make players to wait any amount of time you wish, whether shorter or longer than the default 24 hours, but your experience with this plugin may be impacted. + +![](https://brysonsteck.xyz/files/resurrection.png) + +## Compatibility + +Tested Minecraft Versions: 1.8<sup>*</sup>, 1.9, 1.10, 1.12, 1.13, 1.14, 1.15, 1.16, 1.17, 1.18 + +Native Version: 1.16 + +Resurrection is only confirmed to run on vanilla Spigot or Bukkit servers, meaning you built the server yourself using `BuildTools` with no extra settings, or downloaded it from official sources such as their website. Resurrection is **NOT GUARANTEED** to run on **ANY** fork of Spigot/Bukkit servers, such as Tuinity or Paper. Issues reported involving these forks may not be provided a solution unless proven that the issue still happens on vanilla versions. + +<sup>*</sup>For Minecraft Servers version 1.8, you must download a special build of Resurrection in order for the plugin to work properly. + +## Commands + +* `/about` + * Displays information about the plugin, including links to download, and also warns the command-runner if the plugin is outdated. +* `/bug` + * Displays contact information in case a bug occurs, such as links to the GitHub issues page and the Google Form. +* `/dead` + * Displays all the players currently awaiting resurrection and how long they have left. +* `/howlong [PLAYER]` + * Shows the player how long they (or the specified player) have until they are resurrected. + * This command requires a player to be specified when ran from the console. +* `/resurrect PLAYER` + * Manually resurrects a player if they are dead. + * Operator-only command. +* `/source` + * Informs the user that this plugin is free and open source under the [GNU Affero General Public License Version 3.](https://github.com/brysonsteck/resurrection/blob/master/LICENSE) + +### More Information + +To find more information about Resurrection, including how to submit bugs or learn what files the plugin auto-creates, you can either visit the [Github repository](https://github.com/brysonsteck/resurrection), which contains all the source code, released .Jar files and the home for all bug reports, or by visiting the [Spigot](https://www.spigotmc.org/resources/resurrection.94542/) and [Bukkit](https://dev.bukkit.org/projects/resurrection-official) resource pages where you can mainly leave reviews and easily see version history. + +Resurrection, it's source code and it's Jar files are licensed under the GNU Affero General Public License. You can read the full license and copyright notice on the Github repository [here](https://github.com/brysonsteck/resurrection/blob/master/LICENSE). + +Resurrection currently has 400+ confirmed downloads across Github, Spigot and Bukkit since the first beta released in July 2021 and currently has a 5 star rating on Spigot! diff --git a/content/projects/uirc.md b/content/projects/uirc.md new file mode 100644 index 0000000..3ac14ee --- /dev/null +++ b/content/projects/uirc.md @@ -0,0 +1,51 @@ +--- +title: "uirc" +date: 2022-12-02T11:11:03-07:00 +draft: true +--- +It's exactly what it sounds like. It takes an image as an argument in the form of a file on the local file system or a link to an image on a web server, and returns the ratio of the image. That's literally it. + +Perhaps I can give you some visual representation. Let's say you have an image of a neat little [background of an unrealistically oversaturated landscape](https://brysonsteck.xyz/files/sunset.jpg) and want to make sure it fully fits in your 16:9 monitor: +``` +$ uirc unrealistically-oversaturated-landscape.png +unrealistically-oversaturated-landscape.png > 16:9 +``` +Neat! What about images that don't really play nice? Take this lovely image of [Peter Griffin](https://upload.wikimedia.org/wikipedia/en/c/c2/Peter_Griffin.png). Let's throw him into uirc: +``` +$ uirc peter.jpg +peter.jpg > 1:1.45 (uneven) +``` +Good to know! I can also give the `-r` flag to display the resolution if I so incline, or even find out the ratio of both images: +``` +$ uirc -r peter.jpg unrealistically-oversaturated-landscape.png +peter.jpg > 1:1.45 (uneven) [247x359] +unrealistically-oversaturated-landscape.png > 16:9 [1920x1080] +``` +What if I don't want my wife to find a photo of Peter Griffin on my laptop? Well, you can use a link instead:: +``` +$ uirc https://upload.wikimedia.org/wikipedia/en/c/c2/Peter_Griffin.png +downloading "https://upload.wikimedia.org/wikipedia/en/c/c2/Peter_Griffin.png"...ok +Peter_Griffin.png > 1:1.45 (uneven) +``` +There's also a help menu with the `-h` flag if you really need it. + +##Why does this exist? + +The reason UIRC exists is actually the combination of two events: + +1. I've recently started learning more and more about the C programming language, it's history, and how nice and flirty it gets with the actual machine (maybe even making your relationship more serious if you're a psychopath). It runs my OS (Linux) and my window manager (dwm). I use it every day, and it makes me want to learn more and what it can do. Ever since I've been looking for an excuse to make a C program of my own. +2. I was working at my on-campus job when I needed to know the ratio of an image. Being too lazy to do the math with the image's resolution and oddly hesitant to use a web tool (which I did eventually use), I switched to my terminal quickly to find the file I needed to see what the resolution was, and badda bing badda boom. + +Born was my idea. I found an excuse to learn and code in C for an issue that is over-saturated with solutions everywhere. + +##Why should I use this? + +Don't. + +Or you could I guess, I won't stop you. There's just *way* more convenient (and possibly easier for the command-line-illiterate) ways to find the ratio of an image. This is just an idea that I had and the excuse to get me learning how to program in C. + +##I've made my decision. How do I install? + +Ah, the UNIX community. Stubborn about always wanting to use command line tools over convenience. It just warms my heart. You can head to the INSTALL page on the [GitHub repo](https://github.com/brysonsteck/uirc/blob/master/INSTALL.rst) for uirc for more information on how to install it to your computer. Compatible with Linux, BSD, macOS, and Windows (WSL). + +Yes, the README of this project is satirical. The project is not. diff --git a/content/projects/wiimmfi.md b/content/projects/wiimmfi.md new file mode 100644 index 0000000..ffe1d85 --- /dev/null +++ b/content/projects/wiimmfi.md @@ -0,0 +1,16 @@ +--- +title: "Wiimmfi Watcher" +date: 2022-12-02T11:11:13-07:00 +draft: true +--- +Wiimmfi Watcher is an unofficial Android app that displays online Mario Kart Wii room data by entering a friend code. Wiimmfi is a fan-made server that replaces the now defunct Nintendo Wi-Fi Connection ("Nintendo WFC" for short) and supports many popular Nintendo Wii and DS games, with the most popular being Mario Kart Wii. I am not offiliated with the Wiimmfi project nor it's developers. This app can be used in several different languages. + +Originally a school project, I saw a use for it in the real world since the Wiimmfi website doesn't have a mobile friendly view. This application is also my first piece of software released to the public and it remains special in my heart. It is available on the Google Play Store here, with it's source code available on GitHub under the GPL-3.0 license, for Android devices running KitKat 4.4 or newer. + +## ⚠️ DEPRECATED ⚠️ + +Wiimmfi Watcher is no longer maintained for reasons beyond my control. Due to the Wiimmfi website implementing DDoS protection as a result of recent attacks on their servers since September 4th, 2021, Wiimmfi Watcher is unable to access Wiimmfi servers and all requests the app makes returns `HTML Error 503: Service Unavailable`. + +### Download + +You can visit the Google Play Store to [download](https://play.google.com/store/apps/details?id=me.brysonsteck.wiimmfiwatcher) the most recent and stable version, or you can [clone the repository](https://github.com/brysonsteck/wiimmfi-watcher) if you would like to build it from scratch. |