Programming Languages
These are software tools that enable developers to write, test, and execute programs or scripts. They often provide a set of rules, syntax, and libraries to simplify the coding process. The programming languages listed here include general-purpose languages as well as educational and visual programming languages.
-
GNU Octave
A numerical computing language that is compatible with MATLAB, with syntax and functions similar to MATLAB. It offers a command-line interface, a graphical user interface, and support for linear algebra, optimization, signal processing, and more.
-
Julia
A high-level dynamic programming language for scientific computing, with syntax similar to MATLAB or Python. It offers fast execution, distributed parallelism, and a built-in package manager.
-
Jupyter
A programmer's editor with colorized syntax for many languages, and a simple text editor for one file per window.
-
KWrite
A simple and colorized syntax text editor that supports many programming languages.
-
Python
An open-source programming language used for many applications. This is reached through the terminal with the command python.
-
R
A statistical computing language that is widely used in data analysis, machine learning, and graphics. It offers a command-line interface, a graphical user interface, and a vast library of packages for statistical modeling, data visualization, and more.
-
Scratch
A visual programming language that is designed for kids to learn coding concepts through drag-and-drop blocks. It offers a friendly and colorful interface, and it can be used to create simple animations, games, and interactive stories.
-
Squeak
A multi-platform smalltalk programming environment that is designed for educational purposes. It offers a graphical user interface, an object-oriented programming model, and support for multimedia and web programming.
-
Thonny
Thonny is a simple Python IDE that is designed to make learning programming easier.
-
Visual Studio
A powerful and versatile integrated development environment (IDE) for software developers and teams. With this app, you can build and debug modern web applications.
Generative AI
These are machine learning tools that can generate text, images, video, music, and other data, often through the use of written requests or existing source materials you choose to upload. By hosting these applications locally on our AI Studio computers, you can use the special hardware to produce results quickly, privately, and without cost.
-
Gemma 3
Read about the capabilities of Gemma 3, by Google.
-
Llama 3.2 AI
Read the documentation for Meta's many language models.
-
Stable Diffusion XL
Stable Diffusion XL is a text-to-image model that's used to create visual images based on written prompts. The results can range in style and quality depending on how you write your prompt.
Accessing Stable Diffusion XL
Each machine in the Sunderland Innovation Lab is running a web interface that allows you to generate AI images from text. To access this service, login in to any machine with your eID and open the file browser to your home directory. Double click the file labeled stable-diffusion.html, which will open a web browser to the AI image generation interface (also available manually at http://127.0.0.1:7860).
Using Stable Diffusion XL
To generate an image, simply describe what you want to see in the prompt box and click generate. There are enough sliders and variables in this interface that it might seem overwhelming, so please follow these base recommendations for best results.
1. Select one the checkpoints prefixed with "sd_xl_base"
2. Set the generated images height and width to 1024x1024
3. Chose one of the sampling methods prefixed with "DPM++" such as "DPM++ 3M SDE"
4. Note that although increasing the sampler steps may produce a crisper image from your prompt, it will also increase the time it takes to generate the image.
You can chose any value you like for the available sliders, but it's easy to end up with a configuration that produces poor results, so use these recommendations as a baseline to work from.
2D & 3D Processing
These are software tools that enable users to create, modify, and manipulate 3D models, animations, or simulations. They often provide a set of tools for sculpting, texturing, lighting, and rendering 3D objects. The software tools listed here are widely used in various industries such as game development, architecture, and engineering.
-
Blender
A free and open-source 3D creation software that can be used for modeling, animation, rendering, and compositing. It offers a customizable interface, a wide range of tools and add-ons, and support for various file formats.
-
Dia
Dia is free and open-source general-purpose diagramming software. It supports various types of diagrams, including UML, network, flowchart, and entity-relationship diagrams.
-
FreeCAD
A free and open-source parametric 3D modeling software that is designed for mechanical engineering and product design. It offers a modular architecture, a scripting interface, and support for 2D drafting and simulation.
-
Grace
a free WYSIWYG 2D graph plotting tool, for Unix-like operating systems. The package name stands for "Graphing, Advanced Computation and Exploration of data."
-
Libre CAD
A free Open Source 2D CAD application for Windows, Apple and Linux. It is an open-source software that is used by engineers for designing purposes.
-
Lychee Slicer
A slicing software for resin 3D printing that offers features, presets, and support.
-
MeshLab
A free and open-source software that can be used for processing and editing 3D meshes. It offers a set of tools for cleaning, smoothing, decimating, and analyzing meshes, and support for various file formats.
-
PyMOL Molecular Visualization System
PyMOL is a user-sponsored molecular visualization system on an open-source foundation, maintained and distributed by Schrödinger.
-
UltiMaker Cura
UltiMaker Cura is free, easy-to-use 3D printing software trusted by millions of users. Fine-tune your 3D model with 400+ settings for the best slicing and printing results.
Image Editing
These are software tools that enable users to edit, retouch, or manipulate digital images or graphics. They often provide a set of tools for selecting, cropping, resizing, adjusting colors, and applying filters or effects. The software tools listed here are popular among artists, designers, and photographers.
-
GIMP
A free and open-source image editing software that can be used for photo retouching, image composition, and graphic design. It offers a customizable interface, a wide range of tools and filters, and support for various file formats.
-
ImageMagick
A free and open-source software suite that can be used for creating, editing, and converting images in batch mode. It offers a command-line interface, a scripting interface, and support for various image formats and operations.
-
Inkscape
A free and open-source vector graphics editor that can be used for creating and editing illustrations, logos, icons, and diagrams. It offers a flexible interface, a wide range of drawing tools and effects, and support for various file formats.
-
Shotwell
A program that lets you import, view, edit, and share your photos and videos.
-
Darktable
An open source photography workflow application and raw developer. A virtual lighttable and darkroom for photographers.
Circuit Design
These are software tools that enable users to design, test, and simulate electronic circuits, including printed circuit boards (PCBs). They often provide a set of tools for schematic capture, PCB layout, and Gerber file generation. The software tools listed here are widely used in the electronics and maker communities. (New to electronics? Check out the Electrical and Electronics Engineering Glossary by Nationwide Lifts.)
-
Eeschema
A free and open-source schematic capture software that is part of the KiCad suite. It offers a customizable interface, a library of electrical symbols, and support for hierarchical schematics and netlists.
-
Fritzing
A free and open-source software that can be used for designing and simulating electronic circuits, as well as creating visualizations of breadboard layouts and schematics. It offers a friendly and intuitive interface, a library of components, and support for exporting designs to PCB software.
-
KiCad
A free and open-source software suite that can be used for designing printed circuit boards (PCBs). It offers a schematic editor, a PCB layout editor, a 3D viewer, and support for generating Gerber files and BOMs.
Multimedia
These are software tools that enable users to create, edit, or play multimedia content such as audio, video, or images. They often provide a set of tools for recording, editing, mixing, or converting multimedia files. The software tools listed here are popular among podcasters, YouTubers, musicians, and photographers.
-
Audacity
A free and open-source software that can be used for recording, editing, and mixing audio. It offers a simple and intuitive interface, a wide range of effects and plugins, and support for various file formats.
-
Krita
A free and open-source digital painting software that can be used for creating illustrations, comics, and animations. It offers a customizable interface, a wide range of brushes and tools, and support for layers and masks.
-
OBS Studio
A free and open-source software that can be used for live streaming and recording video and audio. It offers a modular interface, a wide range of settings and filters, and support for various streaming platforms and video formats.
-
Rhythmbox
A free and open-source audio player software. It is also a music playing application for GNOME using the GStreamer multimedia framework
Desktop Publishing
These are software tools that allow users to prepare and edit office documents, presentations, and produce publish-ready content. The software tools listed here are widely used in office environments, education, and research environments.
-
LibreOffice
A free and open-source office suite that can be used for word processing, spreadsheets, presentations, and more. It offers a customizable interface, a wide range of features and templates, and support for various file formats.
-
TeXstudio
A free and open-source LaTeX editor that can be used for creating documents, presentations, and publications in mathematics, science, and engineering. It offers a user-friendly interface, a set of editing and debugging tools, and support for various LaTeX packages.
-
Vim
A free and open-source text editor that is designed for efficient editing of plain text files. It offers a command-line interface, a wide range of keyboard shortcuts, and support for various plugins and modes.
Network Analysis
These are software tools that enable users to analyze, monitor, or simulate computer networks, including wireless and wired networks. They often provide a set of tools for capturing, filtering, and analyzing network traffic or packets. The software tools listed here are widely used in the fields of robotics, software-defined radio, scientific computing, remote desktop access, and network security.
-
WireShark
A free and open-source software that lets you see what's happening on your network at a microscopic level. It is the de facto (and often de jure) standard across many industries and educational institutions.
-
Nmap/Ncat
A free and open-source software that which reads and writes data across networks from the command line. Ncat was written for the Nmap Project as a much-improved reimplementation of the venerable Netcat.
-
Gqrx
A free and open-source software defined radio receiver (SDR) powered by the GNU Radio and the Qt graphical toolkit.
-
Ghidra
A free and open-source reverse engineering tool developed by the National Security Agency (NSA) of the United States.