Week Review 9/8/2023

Setting Up Workstations

Mr. Christy asked Joao and I to set up the new workstations. The computers were already built by Zack and Cormac last year, so we only needed to plug in the peripherals and flash the shop’s Windows 10 Image on them.

To do this we used two thumb drives. One with Macrium Reflect, and one with Windows 10. We booted off of the Macrium Reflect USB, and flashed the Windows 10 Image.

Although the install was successful, there were a few issues. The workstations were not able to connect to the internet, and were only outputting signal on one of the ports. Both of these issues ended up being with the drivers. We installed the network and display drivers and it fixed the problems.

The final change we made to all the computers was updating Windows.

Picture of desktop computer

Setting Up My Development Environment

I am much more familiar with Unix for software development. These computers need to run Windows for various reasons, so installing Linux was out of the question. I decided to set up Windows Subsystem for Linux (WSL) to get the best of both worlds.

WSL

WSL gives the experience of having an Ubuntu Terminal in Windows. It is not fully virtualised so the performance is very good and you can access the whole computers file system.

Setting up WSL is fairly simple, you simply type in wsl --install to install Ubuntu. Although I prefer using Arch on my home computer Ubuntu makes more sense in this circumstance for a few reasons.

  1. This might be used by multiple people so it is best to make it hard to break.
  2. Arch Linux only has third party support.
  3. WSL specific documentation is almost exclusively for Ubuntu

When I typed Ubuntu into the start menu and launched it I did not get any errors.

Ubuntu in windows start menu

Windows Terminal

Windows terminal allows you to theme WSL, PowerShell, Windows CMD, or any other command line shell. The only functionality that it adds are tabs, but theming the terminal makes it more fun to write code in.

I set up the tokyonight-windows-terminal theme to make it nicer to look at.

Image of theme

Git

I generated an SSH key with a long passphrase and added it to my Github account for this computer. I use git through ssh because I don’t like the Github-CLI and it is much more secure than using HTTPS.

Tmux, Neovim, Fish, and Starship

I already had the configuration files for neovim, tmux, fish, and starship from my Linux system. I just cloned the github repository with my configuration files. Installed the applications and their plugin managers, then moved the configuration files into the correct place in the system.

Making My Press Page Responsive

On my press page I previously had the size of each iFrame hard coded. That made it look very good on desktop, but it was nearly unusable on mobile.

I am using the following Rawhtml shortcode to make the iFrames in the first place.

<!-- raw html -->
{{.Inner}}

I am planning on making an article embedding shortcode, but I have not done it yet.

I am going to use the Wired article as an example for how I am embedding them. I originally had the following code.

<iframe 
    src="https://www.wired.com/story/mtba-charliecard-hack-defcon-2023/"
    width="800px"
    height="500px"
    frameborder="0"
</iframe>

I changed the width parameter from 800px to 100%. This makes it take into account how big the screen it is displaying on is.

<iframe 
    src="https://www.wired.com/story/mtba-charliecard-hack-defcon-2023/"
    width="100%"
    height="500px"
    frameborder="0"
</iframe>

This makes it so it scales when you shrink the screen, and I am satisfied with how it looks on my phone now.