Development + Research Tools (so far) for PhD

Figured this list could be helpful for anyone doing research on limited budget and time. Part of this was inspired by replicating infrastructure used during my time in industry. Feel free to email me any suggestions and tools to try out.

Wandb. This one is obvious - but yes, grafana but for machine learning experiments though you can definitely repurpose this. Free for students. I’ve also tried Tensorboard but not as extensively.

Discord Webhooks. Create your own discord server, which you can use cron jobs or any event trigger to send requests to your server’s webhook. I use this to get phone notifications for when my experiments have failed, are done, etc.

Tailscale. Tailscale has a reasonable free plan. This is useful for sharing servers with others, accessing servers on phone, etc.

Hakyll. Easy to set up personal site and blog with markdown files this way. To deploy, you can use github actions (don’t have to rsync it which some tutorials suggest). You’ll have to create a .github/workflows/*.yml file. Here’s an example snippet.

name: Build and Deploy

on:
  push:
    branches: [main]

jobs:
  build-deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: haskell-actions/setup@v2
        with:
          ghc-version: '9.4.8'
          cabal-version: 'latest'

      - name: Cache cabal packages
        uses: actions/cache@v4
        with:
          path: ~/.cabal
          key: ${{ runner.os }}-cabal-${{ hashFiles('**/*.cabal') }}

      - name: Build site
        run: |
          cabal update
          cabal run site build

Editor stuff.

Planning a research project/paper. I prepare slides for my weekly meeting to summarize what I did the past week, what questions I have, and what I will do next. Good practice for presenting talks.

Ergonomics. I remember 2 weeks before a paper deadline, I couldn’t use my left hand. I can’t imagine using talon voice to edit latex.