Posts
Artix 2 · Css 2 · Git 2 · Hugo 2 · Java 1 · Javascript 1 · Linux 2 · Neovim 2 · Opinions 2 · Rust 1 · Self-Host 2 · Software Development 5 · Tmux 1 · Void Linux 1 · Web Design 3 ·Solutions to problems with Java Development
May 12, 2024
I recently ran into some problems with java development. One problem was neovim specific but the other was an issue with gradle. I wanted to document these in case any one else has similar problems as it took me a little bit of time to figure out.
Rust is pretty good (Short thoughts on Rust)
Apr 9, 2024
In my current position I’ve had to swap to full time Rust development. After about 2 months of full time Rust development I think I’ll likely be developing projects in Rust in the future instead of C++ when performance is important. My reasons for this are primarily:
My nvim/tmux workflow
Mar 4, 2024
At my previous employment I was forced to use a windows system. Although not ideal, I was able to continue using my Linux terminal workflows by heavily utilizing Windows Subsystem for Linux. As part of this I had to get comfortable with integrating tmux into my workflow as I didn’t care to learn the Windows Terminal options for terminal multiplexing. I don’t need tmux quite as much anymore since my current employer allows me run Linux on my development machine, but I still use it when remoting into my work desktop via ssh. Hopefully this can be of use in improving the efficiency of others that depend on terminal based workflows.
Why I left Artix for Void Linux
Jan 5, 2024
This is going to be primarily opinion based post but I want to talk about a shakeup that has happened. I have uninstalled Artix from all of my computers and have instead swapped them to Void Linux. This is the first time I have changed Linux distros in about 3/4 years and was done with a heavy heart as having to setup a new system is always a pain. Regardless I have been using void linux for about 2-3 months and I am finding it a much better experience than Artix, and I want to discuss the reasons why below.
Gettting Valgrind working on Artix Linux
Aug 29, 2023
I’m currently working on developing an implementation of the Concurrent Atomistic-Continuum method using C++ and CUDA to accelerate calculations.
A need arose to use valgrind
for debugging some memory issues.
I currently run Artix Linux and it turns out that both Artix Linux and Arch Linux have fully removed all debug packages from their repositories and have swapped over to a debuginfod
style system.
On my system, said debuginfod
was working with gdb
but not with valgrind
.
In particular I was missing the debug symbols for glibc
which prevented valgrind
from working at all.
I had to try a few things before I got it working so I want to share how I did.
I also want to mention an issue I ran into if any guys from Artix Linux ever end up reading this post.
Highlighting the active menu item in Hugo
Jul 3, 2023
I’ve recently been developing sites for some family/friends.
I had one person request highlighting the currently selected menu item.
I had built a custom theme which used a navbear defined in the site wide hugo.toml
.
There were a few different solutions but I wanted to highlight the solution I ended up using for my use case.
A dummy of my site directory set up is:
Hosting your own git frontend service using Gitea
Feb 25, 2023
I recently had interest in starting to work on the implementation of the Concurrent Atomistic-Continuum Method using C++ to take advantage of GPU acceleration. As a first step, I began thinking about where I wanted to host my project. I decided to add hosting my own git server to my list of self-hosted services, including e-mail and matrix chat server. This is a quick guide on how I set up Gitea and configured it on my website. As a note, my web server is a Debian machine using Nginx
Separate files from git repo into a submodule
Feb 22, 2023
I recently had a situation where a library I was working on, originally as part of one project, was going to be needed for another project. The ideal way to handle this situation, is to have the library files as their own git repo which is then added to the projects as a submodule. This way any changes required to the submodule for the needs of each project can be shared easily. It took me much longer than I would’ve liked to, but I finally managed to find the solution and wanted to share it with anyone else who might need it.
Developing a mobile-friendly navigation menu for your website
Feb 13, 2023
I personally am a big fan of navbars as they are a clean way to navigate any website. The classic navbar, that you are likely seeing on this site if you are viewing this on a desktop browser, is extremely simple to make and you can easily find guides to develop these. The one I personally used is here. What was not as simple for me was creating a decent navbar for mobile. I had to develop it for a site that I was working on for my church that never concluded development. I copied it over to my personal site and learned a lot in the process of developing it so all was not wasted. It did however end up taking me way more time than it should have and in the hopes of saving some other poor soul some time, I decided to write an article about how I did it on my site.
Fighting the web obesity crisis using Hugo and Skeleton CSS
Feb 12, 2023
Now that I’ve graduated from my PhD, I find that I have more free time that was previously spent working on my dissertation. I also have the desire to continue to publish in some manner. My solution to both of these problems is to revamp my previous website which I only used as a portfolio site for job search purposes into a random blog.
Work featured on San Diego Supercomputer Center website
Nov 14, 2022
My work has been featured on the San Diego Supercomputer Center website! This post highlights my work published with title:
“Effects of interdiffusion on shear response of semi-coherent {111} interfaces in Ni/Cu”