Tools I Use for Creation
Introduction
Over the course of my life, whenever I've seen an instance of something I really like, one of the first things I've tried to find out is the set of tools the creator used to bring it into being. It's usually surprisingly easy to find out — the people making the finest things are refreshingly open about the process.1 Using good tooling rather than the most beginner friendly setup sometimes (often) comes with a steeper initial learning curve, but the eventual payoff is usually commensurate to the effort.
This post is an inventory of all the essential things I used to make everything on this website.
Stationery
Pens
- Pilot Frixion Ball (black): for general writing, erasibility is a huge plus
- Pilot Parallel Calligraphy pen: for calligraphy, various nib sizes
Paper
- Strathmore 300 Series Art paper: for calligraphy and sketching
- Strathmore Black Artagain paper: for geometric sketches using metallic ink
- Graph pad: for all live class/meeting notes and diagrammatic sketches
Notebook
- KAMI notebook (21x13cm) with linen cover & copper cut Eucalyptus fibre paper
I doubt a full litany of stationery is necessary, but I find a series of back-and-forth movements between analogue and digital drafting helpful for certain projects. The pen and the cursor think differently.
Hardware
Laptop
- MacBook Pro (16-inch, 2019)
- 2.3 GHz 8-Core Intel Core i9
- 32 GB RAM, 1 TB SSD
This is my main machine for everything. I use compute clusters for heavy duty computation when necessary for research, but most day-to-day tasks are well within the capabilities of this laptop.
Tablet
- iPad Pro (11-inch, 2025)
- M5
- 12 GB RAM, 512 GB SSD
I long considered tablets a frivolous bourgeois indulgence, but investing in one recently has been worth it. I wanted to separate some 'passive' screen time (mostly reading) from 'active' (mostly writing). I also thought I should learn to sketch digitally. The higher quality display has already helped me spot some flaws in visuals that I missed entirely on my laptop's more forgiving screen. Blind bards aside, the resolution of one's perception imposes limits on the quality of production.
Core Software
- Visual Studio Code: for most code, including this website. Clean aesthetic, intuitive usage. A lot of source code editors get the job done, but I like this one.
- TeXShop: writing and typesetting using LaTeX (PDF production). I default to TeXShop mostly out of longstanding habit, but LaTeX is a typesetting language. Separates form and content, enables programmatic precision and absolute control.
- Arc Browser: surfing the Internet. Beautifully designed, implements separation between 'spaces' well. Switched from Chrome recently when I met some young AI titans who swore by Arc.
- Apple Notes: lists, diary, ideas, planning, quick drafts, and so on (habitually capturing ideas at the moment of their inception is extremely useful). The idle maintenance of lists during a creative summer helps ensure there's no famine in the winter.
- Adobe Illustrator: illustration, design, and layout. Inkscape is a free alternative.
- Blender: occasional 3D modelling
I have other software for specific tasks, but these are the main applications used to create the things featured on this site. I think learning how to learn, and navigating the underlying logic of different systems, makes it easier to pick up new tools as needed. There is a type of simplicity or division of labour I try to adhere to, where each application has a clear purpose.
This helps stave off decision fatigue (I exaggerate, but imagine the long-term depressing effect of being frozen on each occasion you try to make something, confronted with a bewildering cacophony of potentiality, like those moments at a diner with menus longer than the Encyclopaedia Britannica) and minimises distractions.
Libraries, Packages, Extensions, Utilities
- Plotly for interactive Python plotting
- xcolor for LaTeX colouring
- Zotero for reference management (although I still end up doing a lot of it 'by hand')
- git + GitHub for version control
- Astro for web development; Cloudflare Pages for deployment
Thanks to my aforementioned curiosity about the how, over the past year I tinkered with:
- Manim: a Python package for the creation of mathematical videos (developed by 3Blue1Brown)
- NodeBox: node-based application for generative design (used by Nicholas Rougeax)
- RawGraphs: tool for generating raw SVG elements for data visualisation (Federica Fragapane)
- TouchDesigner: another node-based tool, often used for live music visuals
General Tips
- Use the bookmark bar while browsing the internet. Sort into folders. Keep track of the best content, guides, resources, and so on. I wish I'd started this earlier. Might make a separate post about some of my favourites.
- Similarly, use the 'Collections' or 'Save' option on social media for the content worth returning to. Fill your feed with artists and curators of beautiful/interesting things. Try to fight the algorithm, no matter how futile it sometimes seems.
- Avoid templates, copy/pasting, and AI generation (unless the only real concern is speed & execution). They're all useful crutches, but stifle learning and development. I used LaTeX templates for all homework submissions high school onwards, but didn't truly learn much till I started designing documents from scratch this year. 9 years of stagnation.
- Develop some familiarity with the underlying languages of everything. The syntax and the semantics. For example, there are systems and standards that govern the encoding and representation of all digital content. Fonts. Typefaces. Characters, strings. Unicode. Pixels. File formats for images: JPEG, PNG. SVG. Raster vs. Vector. RGB vs CMYK. It's all worth being curious about, and useful to understand at least the basics of.
Conclusion
This is a snapshot of what I'm using at the moment. Still figuring things out, but capturing the specifics of square one for future reference. All core software (other than Adobe Illustrator) free. The key thing I'm practicing at the moment is to organise the blank canvas better and to pay careful attention to all the little things. Learning how to create my own VSCode extensions for specific needs. Automation chains. Building and polishing the LaTeX templates for the different kinds of documents I produce. Pagination while planning an essay or article. Thinking in terms of layers while making Illustrations. Considering the mesh and the textures while 3D modelling. Designing classes for code (only just started this! programming in academia is usually very ad hoc). Modularity and reusability everywhere. Some interesting things happen by transferring the flavour of all these architectural principles across domains. Crucially, once base system fluency is established, meta-systems become possible.
In essence, the unifying theme is to become familiar with the decomposition of the whole into constituent elements as well as the emergence of the whole from the parts. I suspect my childhood fondness for modular origami helped nurture this mode of thought. This webpage (my first stab at designing a blog, so please don't consider it a good illustrative example) has content (HTML), style (CSS), and behaviour (Javascript). Each of those is further segmented into parts. Each part is mapped to corresponding parts from the other layers for cohesion. A book has content (words, images), layout (fonts, margins, spacing), and structure (chapters, sections, narrative architectonics). In general, not to be too repetitive, but it's all a matter of content, style, and structure. Form-matter intersectionality. Nothing we haven't known for millennia: the Vitruvian principles of architecture are firmitas, utilitas, and venustas. Firmness (durability), utility (convenience), and delight (beauty).
All creation is fundamentally a movement from a vision in the mind to an external representation that can trigger an instantiation of that vision in another mind. Please don't get too caught up in the stifling degree of order I seem to outline — the river of ideas comes from the glacier of insanity, and the fields of existence were repeatedly flooded with chaos before I got around to building some dams and canals.
We each have our own ideal processes and modes of thought, and this was hopefully a helpful overview of some general lessons I've learnt while trying to develop mine.