Software & systems
Python and browser development, databases, APIs and local services. Attention to error handling, testability and further development.
- Python
- JavaScript
- HTML / CSS
- SQL / SQLite
- Git
- Flask
Data & machine learning
Computer vision, deep learning, signal processing and experiment evaluation. The available data is considered alongside the choice of method.
- PyTorch
- OpenCV
- NumPy
- Pandas
- CNNs / Transformers
- OCR
Devices & robotics
Microcontrollers, sensors, data acquisition and telemetry. Robotics experience includes simulation and research work involving imitation learning.
- ESP32 / ESP8266
- Raspberry Pi
- MQTT
- Sensors
- MuJoCo
- Isaac Sim
Geometry & prototyping
Parametric geometry, browser-based 3D interfaces, photogrammetry and 3D printing. A digital model and a physical trial are kept clearly distinguished.
- Three.js
- OpenCascade
- Manifold
- WebAssembly
- STL / GLB
- Photogrammetry
Photography & image editing
Event and sports photography, image selection and editing. An assignment can also include RAW processing and delivery through an online gallery.
- Event photography
- Sports photography
- RAW processing
- Online galleries
Approach
An experiment can be small.
The evidence should be clear.
Choose the tool for the task. Test uncertain assumptions, distinguish implemented from planned work and document the limits. The aim is to base the next decision on observations.
- 01
Understand the task
What needs to happen, for whom and under which constraints? Define the first useful piece of work.
- 02
Test what matters
Try the uncertain part early. Agree on the evidence needed to decide what comes next.
- 03
Build and hand over
Bring together the implementation, tests and documentation so the result can be used and developed further.