Just curious, what machines do people code on?
I’m asking because when you used to code it was on a very specific machine, same keyboard, screen, cpu, etc. Now with the Arduboy you could be coding on almost anything. Myself, I actually use an old Microsoft Tablet, not overly proud of it, but it is versatile. Sometimes use a pretty sweet hyperx keyboard with it.
Do people use any obscure old machines, or mainly overclocked beasts? Anyway, love to hear what you use.
I usually dev on my old gaming machine a i7700k win 10 machine, but I’ve also used the emulator (when the code compiling still worked) on a laptop.
I wish compiling could scale multithreaded that’s all I gotta say about that
Mac Mini M1. I like that it is pretty quick to compile.
I’m coding on my tower gaming/video/general use PC. So Ryzen 3700X, complete overkill for this use but enough of a powerhouse for other tasks.
I’d love to be able to get a dev environment on my work laptop - I see quite a bit of downtime some weeks - but from IT it ain’t gonna happen!
VS Code and the Ardens Player running as an emulator on each build so I don’t have to flash my little ArduboyFX (I… don’t know how to use the full Ardens software. Profiling? Decompiling?).
I code in vscode with PlatformIO and my Rust for Arduboy library.
But maybe I will switch to RustRover
Currently I code on a base M1 Macbook Air but I’m going to save up my money when I release my game on Itch and then I’m going to try to get the Surface Laptop Studio since MacOS depreciated OpenGL a while ago unfortunately and I think it’d be easier to create sprites and stuff with a touchscreen, especially because I suck at creating digital art.
If your work laptop runs Windows you could setup a portable dev environment making use of Portable Apps (its a free and open source program that distributes portable versions of popular programs including Chrome). With a little finagling you can modify the global environment variables that tells programs where the user’s home directory is and where app data goes so they point to the flash drive. Usually by having a batch script detect the drive letter of the flash drive, change the environment variables (which only effects this process and any processes spawned from the batch file), then launch whatever program.
I did this at my old job with a 256G flash drive and had a full dev environment setup. I could run ArduinoIDE, MinGW, Qt, Blender, Aseprite, and many other programs for a full-featured dev environment in my pocket.
Since nothing actually gets installed and nothing on the host system is modified there usually isn’t any issues. Though, admittedly it probably falls under the don’t ask don’t tell category.
One possible point of ‘leakage’ might be the registry. Unless ‘Portable Apps’ covers that?
It doesn’t cover the registry instead all the apps in its app store (they call it a store but its more of a repository since its all free) are portable versions of said software that have been modified to not make any changes outside their own folder.
From their site:
Portable App Guidelines (permalink)
- A portable app works from any device (USB flash drive, portable hard drive, cloud drive, memory card, etc)
- A portable app works as you move computers and your drive letter changes
- A portable app is self-contained in a single directory with sub-directories and files within
- A portable app’s features continue working as you move computers
- A portable app doesn’t leave files or folders behind except those automatically generated by Windows
- A portable app doesn’t leave registry entries behind except those automatically generated by Windows
- A portable app is optimized for use on removable drives and within synced cloud folders
- A portable app doesn’t require additional software on the PC
- A portable app doesn’t interfere with software installed on the PC
I’ve used it personally and with some clever batch scripting to change environment variables any app that doesn’t mess with the registry can theoretically be made portable. I had Aseprite, Kate, GoDot, and others not in their system working with a simple batch script.
Here’s what I used for Kate for example:
%CD:~0,2% takes the first two characters of the current path (which is the folder the batch script is in if double-clicked from a file browser). This makes it so it will auto-detect the drive letter the flash drive got mounted under. Afterward, it just overrides the two environment variables that programs use to determine where to store their data.
start is used to launch Kate without keeping the batch window open but preserving the changed variables (which only effect this batch file and any processes spawned from it).
By ‘covers’ I meant ‘has a way to prevent the registry being written to’.
So, effectively the answer is (mostly) “yes” as per:
More info than I needed, but interesting nonetheless.
%~d0 should also work because
%0 holds the script’s path and
~d extracts the drive part of a script parameter.
(Though it would only work if the batch script were on the same drive as the portable profile, which I presume is the case here.)
That substring trick is nice to know though, I hadn’t come across that before.
I use the same gaming & general purpose desktop I’ve had for the last decade or so.
i7 4770k (not overclocked), GTX 770, 16GB RAM, an SSD and a HDD.
I mainly use VSCodium with the Arduino plugin, but sometimes I’ll use Notepad++ or Notepad for small, quick edits or writing short snippets, and I still keep the Arduino IDE around as a last resort.
I mainly test on device, but I think I’ll probably have to give Ardens a go for FX development because my actual FX unit is a Falcon prorotype and it has a few differences that mean it won’t work the standard upload tools and I’ve never found a good moment to rectify that. (When I get the time to actually sit down and think about making something for the FX that is.)
I code on this:
(I actually did when I was 9, in qbasic)
I use crostini or crouton on x86 based chromebooks. They are cheap and portable.
I’m coding on my 14 year old Fujitsu Siemens Esprimo P7935 using a Intel Core2 Quad CPU Q9550 @ 2.83GHz with 4 cores. 4GB RAM. Updated graphics with AMD Radeon HD 6570, Samsung Evo 850 512GB SSD and new PSU through the years.
Razer blackwidow stealth keyboard
34" Sony HD TV as monitor
Notepad++ as editor and Arduino IDE as development tools
I’d love to, but it’s a rather locked-down Macbook (video editor). Generally anything not whitelisted isn’t permitted to run/execute.
Not worth risking the fury of corporate IT! Hahaha
Ah yes, macs can be a little more tightened down on security. One option though is Chrome’s Remote Desktop.
I myself have recently upgraded my gaming system to an Acer Nitro 5 gaming laptop. That way I can dock it to my 27" curved monitor when at home, but easily take it on the go if needed.
Running a 27" iMac at home … many years old but has a 5K screen which still is better than nearly every new monitor I have seen. I am waiting for Apple to re-introduce the 27" Mac so I can upgrade.
VSStudio + online Ardens. Its all I need.
Hats off to anyone using notepad for coding. I get it but at the same time I don’t. There are so many free editors out there that are c++ aware.
I use notepad++ for coding outside of arduino, like when I’m working on libraries.
For me it’s mainly a matter of launch time.
Notepad++ and VSCodium take several seconds longer to boot, so if I’m only intending to write a small snippet I may as well just launch Notepad and have it done quicker. I can quite happily live without syntax highlighting or autocomplete or anything more exotic when it’s only a small amount of code.
I’d do it in the comment box if the tab key actually inserted tabs or spaces rather than tabbing through UI elements.
(Also, Notepad is still marginally easier than writing code with pencil and paper, which is what I have to do when I’m out and about or otherwise away from my computer.)
Presently I prefer Kate (KDE Advanced Text Editor) the most as the syntax highlighting rules can be customization using XML files with basic Perl-style regular expression matching and popping in/out of different contexts (like popping into a comment and thus highlighting everything differently). Plus, it doesn’t take forever to open either as it doesn’t have any IDE stuff just syntax highlighting, auto-indent, and code folding (all I really need and care about).