-
67 votes
-
What code editor / IDE do you use (2025)?
For a while now I have used VSCodium- which is just Microsoft's VSCode, but with as much of the telemetry stripped out (or rather, not built-in in the first place) as possible- but I've found...
For a while now I have used VSCodium- which is just Microsoft's VSCode, but with as much of the telemetry stripped out (or rather, not built-in in the first place) as possible- but I've found myself with a desire to move away from Electron-based apps for a number of reasons.
Primarily, I'm ideologically opposed to the trend in which everything is an Electron-based web app packaged as a "desktop application", but on a slightly more functional note, Electron seems to behave poorly in Wayland contexts, especially on Arm64 devices.
In terms of feature set, I'm not too interested in complexity. Something open-source, relatively clean / light-weight, capable of providing a project overview and a number of tabbed or vsplit / hsplit buffers. Something with comprehensive syntax highlighting and some form of language server interface. Something theme-able, and good to look at, with relatively intuitive or well-established keyboard shortcuts. I don't much care for integrated terminals, extensive debugging tooling, or any form of built-in AI assistant.
I have been trying out Micro, with a set of plugins which allow for a project overview, a language server, and a number of other QOL improvements, but it has a list of breaking issues that will likely not be solved for years given the speed at which pull-requests are addressed, if at all. Even so- it hits most of the marks that I find most important to me.
But I'm also interested in what other people use; what other programmers find matter to them. So what text editors, or IDEs do you swear by (and please don't suggest VIM- it's overwhelming ;])?
46 votes -
Does anyone use AppleScript on macOS?
I heavily utilize ChatGPT to generate .ics files to populate my Apple Calendar with various events, but I have been wanting to upgrade my time management and also use the Reminders app. I recently...
I heavily utilize ChatGPT to generate .ics files to populate my Apple Calendar with various events, but I have been wanting to upgrade my time management and also use the Reminders app.
I recently used ChatGPT to help me populate a Trello board with tasks associated with a project I am working on, but I was getting annoyed with having my workflow split across Apple Calendar and Trello. I exported my Trello board as a CSV and was trying to have ChatGPT turn it into a file I could import into Reminders, but as it turns out, this is not easy.
.ics files do contain syntax for reminders tasks with due dates that populate the Apple Calendar, but generating an .ics file with only reminders tasks and importing into Calendar doesn’t actually work. Calendar recognizes that the .ics contains Reminders tasks and opens Reminders to import the tasks, but Reminders returns an error because it doesn’t support import, it only supports export to Calendar.
I found that Reminders has a Reminders.scpt dictionary file within the .app package that details .applescript commands that can create new tasks, so I fell into the world of AppleScript. The issue with AppleScript is that it was created in the 80s and hasn’t been updated since 2013. It has no native CSV support and is pretty clunky.
AppleScript does have text file support, so I was able to have ChatGPT convert my CSV into a .txt that I could parse with AppleScript. This allowed me to automate the creation of tasks in the Reminders app from my Trello CSV, but it was annoying and I still feel like there must be a better way.
Does anyone here use AppleScript regularly and know its full capabilities?
Also, are there any good resources out there for learning more about AppleScript? The Apple documentation is very out of date and it seems like more of a legacy language than something Apple regularly maintains.
14 votes -
Glide is a keyboard-focused Firefox fork that is infinitely extensible with TypeScript
23 votes -
Musings on "Developer Mode"
Peruse this relevant meme. It depicts the magical transformation that occurs at the moment one taps the Android build number for the seventh and final time, as the arcane ritual transforms one...
Peruse this relevant meme. It depicts the magical transformation that occurs at the moment one taps the Android build number for the seventh and final time, as the arcane ritual transforms one from a chill dude in a business suit into that powerful, shadowy figure known only as "a developer".
It's a joke, obviously, but only half a joke. The "You are now a developer!" message that the developers at Google programmed your phone to display, when it grants you this set of powers that Google permitted them to program it to grant you, is doing something in the model of the world that its authors live in.
"Developer mode" isn't just for Android. The browser you are reading this in has a little panel you can open to inspect or adjust the content of the page. It's useful for things like composing humorous screenshots, deleting annoying ads, and downloading images and videos, but it's called the "Developer Tools", a set of tools defined not by what they do but by who they are intended or imagined to be doing it for. Discord has not only a "developer mode" that lets you get the permanent identifiers for messages, but also additional developer-exclusive functions that are activated by enabling the Electron developer tools and injecting code to set the
isDeveloperflag. Windows has a Developer Mode. ChatGPT ~got one for some reason~ has a popular jailbreak based around convincing it that it has one. This notion that a special class of people called "developers" exist, and that they must or should be afforded extra power in our society's digital spaces, is woven into the structure of the digital environment.Why is it like this? Big Tech doesn't give any power for free. Is it something their labor force of developers demands to be able to grant to their counterparts outside the company? Is it a Ballmer-Doctorow gambit of courting programmers as potential business customers by temporarily empowering them, before they start putting up the prices on the code signing certificates? Is it to distract and mollify hackers, to keep them from seizing similar powers in a more destabilizing way?
Is there any truth to the notion that "developers", independent of whether or not they are currently testing or programming something, are a class with different needs and rights from normal humans?
17 votes -
Where's the Shovelware?
54 votes -
Should C be mandatory learning for career developers?
The year is 2025. The C programming language is something like 50 years old now - a dinosaur within the fast-moving environment of software development. Dozens of new languages have cropped up...
The year is 2025. The C programming language is something like 50 years old now - a dinosaur within the fast-moving environment of software development. Dozens of new languages have cropped up through the years, with languages like Rust and Go as prime contenders for systems-level programming. Bootstrapping a project in C these days will often raise eyebrows or encourage people to dismiss you out of hand. Personally, I've barely touched the language since I graduated.
Now, with all that said: I still consider learning and understanding C to be key for having an integrated, in-depth understanding of how computers and programming really works. When I am getting a project up and running, I frequently end up running commands like "sudo apt install libopenssl-dev" without really giving it much thought about what's going on there. I know that it pulls some libraries onto my computer so that another program can use them, but without the requisite experience of building and compiliing a library then it's kind of difficult to understand what it's all about. I know that other languages will introduce this concept, but realistically everything is built to bind to C libraries.
System libraries are only one instance of my argument though. To take a more general view, I would say that learning C helps you better understand computers and programming. It might be a pain to consider stuff like memory allocation and pointers on a regular basis, but I also think that not understanding these subjects can open up avenues for a poorly formed understanding about how computers work. Adding new layers of abstraction does not make the foundation less relevant, and I think that learning C is the best avenue toward an in-depth understanding of how computers actually work. This sort of baseline understanding, even if the language isn't used on a regular basis, goes a long way to improving one's skills as a developer. It also gives people the skills to apply their skills in a wide variety of contexts.
I'm no expert, though: most of the programming I do is very high-level and abstracted from the machine (Python, Haskell, BASH). I'm sure there are plenty of folks here who are better qualified to chime in, so what do you think?
39 votes -
Finding cool custom vanity CA license plates
10 votes -
AI is creeping into the Linux kernel - and official policy is needed ASAP
29 votes -
Life before demos (or, Hobbyist Programming in the 1980s)
10 votes -
Using Rust backend to serve an SPA
6 votes -
What was your first programming language, what languages do you know now, and what tips do you have for those trying to learn any of those?
What was your first programming language, what other languages (if any) do you know now, and what tips do you have for those trying to learn any of those? Whether those tips are for beginners or...
What was your first programming language, what other languages (if any) do you know now, and what tips do you have for those trying to learn any of those? Whether those tips are for beginners or even advanced, to do with APIs, or if you've got a good library to share.
53 votes -
A programming language made for me
23 votes -
How Super Mario Bros. 2 builds levels
13 votes -
How does one get started programming an Android app?
It's been a long time since I've done any "serious" programming, but I have long held a desire to recreate an app that's been out of development for a decade, and I reckon I'd do fine if given the...
It's been a long time since I've done any "serious" programming, but I have long held a desire to recreate an app that's been out of development for a decade, and I reckon I'd do fine if given the right direction.
My "qualifications".
I've done "school project" level stuff in *many* different languages (VB6, Python, Java, C++, C#, PHP, Lisp, Prolog, R, to name a few) so I know my language-agnostic basics, and I've made a career out of quickly learning new tools and platforms and maintaining other people's work. The problem is all that experience is either "give a plain text file the right file extension" or building the project via a proprietary IDE, so getting started from scratch I'm totally lost. What IDE? What language? How does the .apk happen?Googling for this gives me either "no code" platforms, which is zero of the fun and basically what I do at work, or documentation that has skipped the first ten steps because it assumes you know the prerequisites already. Help?
20 votes -
NaN boxing or how to make the world dynamic (2020)
14 votes -
Breaking out of VRChat using a Unity bug (2024)
10 votes -
Amorphous Computing HomePage (2006)
5 votes -
On its 50th anniversary, Bill Gates has published the original source code of Altair Basic - the first commercial software released by 'Micro-Soft'
18 votes -
Paged out! issue 6
18 votes -
Life altering PostgreSQL patterns
35 votes -
Writing a Bash builtin in C to parse INI configs
8 votes -
Next.js and the corrupt middleware: the authorizing artifact
20 votes -
Reinventing notebooks as reusable Python programs
16 votes -
x86 assembler in Bash
15 votes -
How hard would it be to learn to code a Discord bot?
I've got a notion to put some of my extra energy into learning to code. I'm familiar with EXTREME basics - I did some coding in BASIC and Python when I was younger ("Hello world" type stuff, and...
I've got a notion to put some of my extra energy into learning to code. I'm familiar with EXTREME basics - I did some coding in BASIC and Python when I was younger ("Hello world" type stuff, and some futzing around with my Ti calculators programming capabilities) and while I had a pretty good knack for it I never developed it further.
I'd like to use this as a chance to create something useful for me - a discord bot for my server. We have a handful of bots doing a few odds and ends, and I'd like to try and work something out to consolidate things. That's getting a bit ahead of myself though - initial scope would be simple: have the bot do a simple task like counting +rep points, or something silly like telling a joke.
I don't really have any idea of where to start - what resources I need, what language to use, or really anything about how this all works. Any assistance at all would be welcome!
To be clear - I want to learn to code, and specifically I want to learn in a way where it is immediately applicable and useful in a context I care about.
20 votes -
Optimizing Brainfuck interpreter in the C preprocessor
4 votes -
Amber: a high-level programming language that compiles to Bash
11 votes -
Thoughts on naming things
12 votes -
Internationalization Puzzles
15 votes -
Bartosz Milewski - Understanding Attention in LLMs
6 votes -
Ba-Bash-ka: a native Clojure interpreter for scripting, designed to leverage Clojure in place of Bash
10 votes -
How core Git developers configure Git
21 votes -
TypeScript types can run DOOM
13 votes -
People named "Null" are being punished by computers in the weirdest ways
53 votes -
My LLM codegen workflow
9 votes -
How I analyzed 1,378 restaurants using Places API to find hotspots in my city
14 votes -
Funny output from Claude.ai: a codeblock in a question about an early rennaissance theological work
I asked Claude for references to some ideas the ai had output earlier about a 16th century cardinal (Sadoleto). It's response was, Let me analyze the letter, and then this: async function...
I asked Claude for references to some ideas the ai had output earlier about a 16th century cardinal (Sadoleto). It's response was, Let me analyze the letter, and then this:
async function searchForSadoletoLetter() { try { const files = ['sadoleto_letter.txt', 'sadoleto.txt', 'sadoleto_to_geneva.txt', 'letter_to_geneva.txt']; for (const filename of files) { try { const content = await window.fs.readFile(filename, { encoding: 'utf8' }); console.log(`Found file: ${filename}`); console.log("First 500 characters:"); console.log(content.substring(0, 500)); return content; } catch (err) { // File not found, try the next one } } console.log("Could not find any files containing Sadoleto's letter"); return null; } catch (err) { console.error("Error searching for files:", err); return null; } } const content = await searchForSadoletoLetter(); // Since we don't have the letter available as a file, let's search for published versions online console.log("The letter isn't available as a file. We would need to rely on scholarly knowledge about Sadoleto's letter to Geneva (1539)."); console.log("Sadoleto's letter was published in 'A Reformation Debate: Sadoleto's Letter to the Genevans and Calvin's Reply' (ed. John C. Olin).");This strikes me as odd? Did Claude write a script to generate its own response? Have coders put something like this in as a gaurdrail?
edit: details about earlier convo
15 votes -
"A calculator app? Anyone could make that."
54 votes -
Apple is killing Swift
41 votes -
NREVERSAL of Fortune -- The Thermodynamics of Garbage Collection
2 votes -
Writing toy code with ChatGPT is a blast
14 votes -
Game Programming Patterns - State
11 votes -
Introducing Clay - High performance UI layout in C
12 votes -
So you want to write Java in Neovim
4 votes -
AI-generated tools can make programming more fun
8 votes -
Phoenix LiveView 1.0.0 is here
12 votes -
AT Protocol (Bluesky): Call for Developer Projects
16 votes -
Good software development habits
22 votes -
Why I will always be angry about software engineering
34 votes