Using a graphics tablet as a programming tool (2018)
jeandavidmoisan.com
jeandavidmoisan.com
Regardless of the programming language, writing code as I do on paper, with the difference it is straight into the editor window.
No side panel, where I have to write one word after the other with pauses and correction, or that some apps (looking at you Pydroid) for whatever reason disable.
Straight like Apple's math demo, to make it more precise.
This is the kind of stuff I would like AI algorithms to improve, instead of taking people's work away.
I remember reading a tip more than a decade ago from a senior developer, that you should always have pen and paper next to your keyboard, to take notes, visualize problems, keep notes of where you are. Most of the thinking happens there.
When I'm working on bigger things alone, it helps me keep track or the bigger picture, how to keep separation of concern und understand where my abstractions started leaking.
Moving that pen and paper to digital unfortunately was never low-barrier for me. I thought about acquiring a reMarkable for that purpose, but it isn't perfect either.
I used excalidraw in the past, but it also does not integrate too well with my environment.
Now, with everyone being remote I would really love to have something that not only replaces my own scribbling and conceptualizing, but also serves as "whiteboard" for collaboration. I clearly clearly miss the whiteboard when discussing abstract things/ideas/problems with peers.
The app mentioned in the post seems a little abandoned unfortunately. Does someone out there use something similar?
Recently, Apple has made playgrounds more useful on iPads, so I can now save something that I’m working on, and play with it on the road.
My default issue tracking system is a sticky note pad on the desk. I write a brief description of the problem/feature, and stick it on the desk, to the left of the keyboard. When I am working on it, I move it above the keyboard. When I fix/implement it, I move it to the right. When I’m done testing, it goes in the trash. I use code and checkin comments for posterity. I’ll also use GitHub Issues. They allow me to enter bug reports from my phone or pad, and associate checkins with issues.
I'm still heavily leaning on the legal pad, but I've got a project in Claude to streamline this whole thing over time. It's recommended Microsoft OneNote which I completely wrote off because it seems like there must be a price for such a robust tool being free, but it is really amazing these days. Seems very smooth for mixing digital media with handwritten notes and diagrams, I'm really impressed with it. It's probably going to be where I move to from my legal pad system, since it's so similar but offers features that will help organize the notes and make them searchable, etc.
I always look at the new tools and services for these kind of things when they pop up so please share other personal systems as well!
(I'm still not sure what the price is for OneNote, but if anyone knows and it's bad, please say something)
Be careful what you do with your notes, if you care about longevity. Leave a notebook in the sun and you may find it blank. Throwing it in the freezer may bring back some text, but it will bring back stuff you erased, too.
It doesn't matter for throwaway stuff, but I've lost notes on older projects due to this.
no one asked, but frixion pens on a legal pad and taking photos with a quick iOS shortcut makes it very simple to win all around.
I've (mis)used a number of drawing apps for programming design, including Milton (as in the article), Foundry Mischief, AutoDesk Sketchbook Pro, WonderUnit Storyboarder, Blender, Leonardo, Krita and Xournal++.
Mischief, Sketchbook and Storyboarder are either discontinued or no longer under active development. Mischief had a really nice infinite canvas and some nice features for doing presentations across it. You can still get an old Windows version if you look in the... right places. But it's a dead end. Sketchbook has a lot of nice features, but seems like it's all but abandoned. It /is/ available on mobile. They used to have a nice blog where they featured a lot of great artists. Storyboarder is cross-platform and source is available, but packages can't seem to be downloaded any more.
The Blender grease pencil tool just gets better and better and works well with tablets. I've used it to do rough sketches and user-interface mockups. Colour selection was a bit clumsy last time I tried, but I think it's been improved since. I think you could say it has an "effectively infinite" canvas. Scriptable, 3D objects are first class.
Leonardo is Windows-only, but has pretty nice raster-based infinite canvas. Very responsive and quick. Very easy to do constrained lines and shapes, which can be useful for programming ideation. It's my current go-to, I'm not sure what I'm going to do when I switch to Linux once Win10 is unsupported. Maybe it will run on Wine...
Krita is really more of a traditional paint program, but I've still used it for notes and designs even though no infinite canvas. It has a "Comics Manager" bolt on that can be used as a sort of notebook. Scriptable.
Xournal++ is a bit of a strange beast. It's intended to be more of a "notebook" application. No infinite canvas, but as many "pages" as you like. It deals with LaTeX, PDF and also pressure-sensitive tablet sketching. It has voice recording and markup features. It's also cross-platform -- I've used on Windows and Linux, and if I can't take Leonardo with me it's probably going to be my new main app. Also -- nice to use when you want to sign a PDF with a "real" signature.
Not including things like GraphViz, PlantUML, etc. -- all the apps above are very responsive and support pressure-sensitive sketching, which I think is vital for ideation and exploration.
Not exactly infinite canvas, but pages can grow outward. Cross-platform and open source! And has some cool features which make working with handwritten text nice.
https://github.com/IndieSmiths/myappmaker-sdd
The current version just allows drawing to make labels and checkboxes --- nothing more (but if one wanted to mock up a design which just needed those elements, it's a start)
(I have time to kill at an airport later so I might try it)
The README says:
On 2021-02-27 a successful build for Linux can be done with these steps:
[... (omitted the actual steps) ...]
And if successful, you should have an executable called "Milton" that runs.
I did not make this work automatically with CMake, because I don't know CMake.
That doesn't look to have changed since 2022.There's an updated section in the README that gives steps for compilation under Linux.
I followed the steps and had a compiled and working version within a couple minutes (after a compile error and fixing by installing libgtk2.0-dev).
[0] https://github.com/serge-rgb/milton?tab=readme-ov-file#linux...
I’ve used Goodnotes for years, but it doesn’t have an infinite canvas unfortunately. Otherwise it’s an amazing app and nothing really comes close. I’ve been trying Apple Freeform as an alternative, but it’s truly terrible in comparison.
I've tried them all, including Concepts. Concepts was great but it requires subscription and it gets slower when you have a very large drawing. I tried large Goodnotes paper too, but it was a bit clunky.Nebo was good, but then I kind of stopped doing large notes.