Skip to content

Instantly share code, notes, and snippets.

@nikwl
Created April 25, 2023 11:37
Show Gist options
  • Select an option

  • Save nikwl/711a8016a0d57e46d33bec949da79b11 to your computer and use it in GitHub Desktop.

Select an option

Save nikwl/711a8016a0d57e46d33bec949da79b11 to your computer and use it in GitHub Desktop.
Tools

Tools

The right tool for the job makes all the difference. Here's a list of tools that the people at TARS use and recommend.

Tools Contents

Datasets

Google's Dataset Search
Kaggle
3D-Machine-Learning
Datasets of 3D Indoor Objects
Google's Scanned Objects Dataset
Awesome Data Annotation
Scanned Objects MuJoCo Models
COVE (dataset repo sponsored by CVF)

Code Resources

Graphics Reproducibility Stamp
Code Replicability in Computer Graphics
PapersWithCode
Software Heritage

Figure Creation

Blender Tutorial
Blender Toolbox
Latex Equation Generator
TablesGenerator
Diagrams

Containerization

Anaconda (Ubuntu, Windows) [GUI]

Python containerization tool with many pre-loaded Python packages.

Miniconda (Ubuntu, Windows)

Minimal installer for conda; no pre-loaded Python packages.

Docker (Ubuntu, Windows) [GUI]

Extremely powerful os-level containerization tool. Build complex environments within a docker image and then port them to another system with minimal hassle.

virtualenv (Ubuntu)

(Better) python containerization tool.

Package Management

Microsoft-supported package manager for Windows. Has a good selection of packages.

Editors

Visual Studio Code (Ubuntu, Windows) [GUI]

Visual Studio Code is a lightweight but powerful source code editor which runs on your desktop and is available for Windows, macOS and Linux. It comes with built-in support for JavaScript, TypeScript and Node.js and has a rich ecosystem of extensions for other languages (such as C++, C#, Java, Python, PHP, Go) and runtimes (such as .NET and Unity).

  • Lightweight.
  • Remote file and workspace editing.
  • Linting for multiple languages.
  • Integrated version control.

IDEs

JetBrains IDEs (Ubuntu, Windows) [GUI]

JetBrains has a fleet of development tools for many different languages, including Python, Java, C/C++, etc. All IDEs have the same GUIs and similar configurations.

  • Powerful IDEs with many features built-in
  • Free for students
  • Integrated version control.

Clarkson VPN

https://getvpn.clarkson.edu/

Remote Desktop

AnyDesk (All OSs) [GUI]

The universal remote destop client deployed on most of the lab machines.

Parsec (Only Windows can host, clients for Ubuntu, Raspbian, Android, Web, macOS) [GUI]

Extremely low latency remote desktop. Paid version has pen support (only alternative for pen support is RDP IIRC). Doesn't seem to like the campus firewall though.

Moonlight (Ubuntu, Windows) [GUI]

Lightweight remote desktop client. Designed for (but not limited to) game streaming.

NoMachine (Ubuntu, Windows) [GUI]

Snappy remote desktop client. Supports key authentication.

RDP (Windows) [GUI]

Remote desktop client built into windows. See Joe's script for ssh tunneling.

mRemoteNG (Windows) [GUI]

Manage remote session on multiple protocols (including RDP, SSH, and VNC) in a tabbed interface.

Remote File Transfer

rclone (Linux, Windows, Mac)

Command line program to manage files on cloud storage. Supports most popular cloud storage types. Allows mounting cloud storage as a drive on all platforms. (Mounting requires WinFSP on Windows.)

rsync (Ubuntu) [GUI]

Basically scp, but supports additional functionalities and is more efficient.

SSHFS-Win (Windows) [GUI]

Windows port of SSHFS. SSHFS allows you to mount a remote filesystem using SFTP.

WinSCP (Windows) [GUI]

WinSCP is a popular SFTP client and FTP client for Microsoft Windows! Copy file between a local computer and remote servers using FTP, FTPS, SCP, SFTP, WebDAV or S3 file transfer protocols.

Remote Shell

Screen (Ubuntu)

Terminal multiplexer. Screen allows you to start a screen session and then open any number of windows (virtual terminals) inside that session. Processes running in Screen will continue to run when their window is not visible even if you get disconnected. Screen cheat sheet.

parallel-ssh (Ubuntu)

Asynchronous parallel SSH client library, implemented in python. Run SSH commands over many - hundreds/hundreds of thousands - number of servers asynchronously and with minimal system load on the client host.

System Monitoring

Glances (Ubuntu, Windows) [GUI]

Glances is a cross-platform monitoring tool which aims to present a large amount of monitoring information through a curses or Web based interface.

NSSM (Windows) [GUI]

Lets you create and manage custom services on Windows. I (Joe) use this with rclone to create persistent cloud mounts.

WeightsAndBiases (Ubuntu, Windows)

Machine learning monitoring library.

Neptune (Ubuntu, Windows)

Machine learning monitoring library.

Paper Writing and Distribution

You know what this is.

A free, AI-powered research tool for scientific literature.

Build a related-works graph to identify groupings of works.

Site to look for call-for-papers.

Site covering the publishing policies for most major journals.

Site listing major CV conferences by date.

AI-powered related works search.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment