558
(page 2) 50 comments
sorted by: hot top controversial new old
[-] A_norny_mousse@feddit.org 9 points 5 days ago* (last edited 5 days ago)

I like how some sentences contain phrases that actually make sense:

Despite the jaggle of the chromus, it’s really multi-purpose.

Also me, writing a lot in bash, can totally relate to this:
[[]][[]][[]][[]]][[]()()()()()()()()(){{}{}{}|{}{|}{}{|}{ ////////////////!! !!!! !! //// !!!
Except there should be backslashes, single and double quotes in it too.
Here's a real world example of getting the value of an array member, with a counter:
x="${array[$((i+=2))]}"

kleptomitrons

I want some of those please.

load more comments (3 replies)
[-] Treczoks@lemmy.world 9 points 5 days ago

Yes, you are not wrong here.

What I regularly have to deal with is about as bad. Big project, and every upgrade replaces one key element. They have never heard of backwards compatibility. If they don't like a subset in their system, they replace it. Complete with different API calls, structures, and calling conventions. And they may document parts of it three versions later. If at all. Some documentation is basic Doxygen - just list the function parameters, and that's it. I've seen cases where the documentation of the rather critical parameter "flags" was just the word "flags". I've seen cases where the return value was documented only as "status". Not even with a notion whether 0==success and 0!=failure or vice versa.

And no, it is not a closed application. They have an "extension" folder for user-supplied extensions. The problem: If it is not a core extension that has been updated with the main project, the first thing after an upgrade is finding out where your formerly working extension critical to your project now fails, because they just happened to think that the call interface for the boogaloo object need a complete overhaul. Maybe it needed an overhaul, but then at least keep the older interface alive for at least a few versions after documenting the new interface and marking the old one as deprecated.

load more comments (1 replies)
[-] dohpaz42@lemmy.world 10 points 5 days ago

So basically Swift on macOS, except this made much more sense. 👍

[-] calcopiritus@lemmy.world 6 points 5 days ago

If you don't understand the "problem" part in the "what problem does this tool fix?" Then you probably don't need that tool. You should probably try the program they mentioned that didn't fix their specific problem. Since that program probably has way more users and a more entry-level documentation.

[-] RustyNova@lemmy.world 6 points 5 days ago

TBF, if your step by steps instructions works, it doesn't matter how complicated the command is.

[-] LucidNightmare@lemmy.dbzer0.com 5 points 5 days ago

When it comes to documentation, at least for myself when I'm learning new things, I like to look at it like a recipe book.

The book shouldn't contain just the ingredients and what the final product looks like. It needs to be more in depth than that. It needs to contain the ingredients that go into it, how much of those ingredients, the time to cook, what consistency to look for, prep time, etc.

There are plenty of people out there who have never cooked before, and a recipe book/instructions on how to cook a favorite dish is the perfect way to share your love of the craft and the dish that you made. Then, with your recipe as a guideline, people could change it to suit their tastes, and so on and so on.

That's just how I look at it. I wish I could interpret developer instructions and write up a more user friendly documentation for them. I would love to be able to give back to the community in some more meaningful way than just barely knowing what the developer is providing and using it and making a mess of it my first few tries until I learn from my mistakes.

[-] Semi_Hemi_Demigod@lemmy.world 5 points 5 days ago

I structure my tutorial docs (I write a lot of them for work) like the O’Reilly cookbook series for this reason.

The problem you’re trying to solve is at the top. Next comes a list of prerequisites for the instructions. Then clear, step-by-step instructions with no more than one command or action for each one, highlighting anything that’s different depending on environment.

Then at the bottom I’ll sometimes add a discussion of why each command does what it does, and finally a list of resources for whatever programs or systems the instructions are about.

load more comments (2 replies)
[-] Evotech@lemmy.world 4 points 5 days ago

These days I pretty much just give the code to the LLM and it spits out documentation

Is it prefect? No. But it takes me literally 10 minutes and it's 90% there

In being slightly facetious here, I do spend some time on it to make it appropriate. But it sure does a good job imo

[-] LucidNightmare@lemmy.dbzer0.com 5 points 5 days ago

This is one of those things where I'm actually okay with AI use. I understand a lot of the FOSS community devs don't have a lot of time for such matters, so if this gets it at the very least 90% there, I would consider it a win! (human review being a big bonus, of course!) :-]

[-] pinball_wizard@lemmy.zip 4 points 5 days ago
[-] kehet@sopuli.xyz 4 points 5 days ago

I'm going to steal some of these words and use them in my future projects, and no one can stop me from doing that

[-] merc@sh.itjust.works 4 points 5 days ago

If it's all gobbledygook to you, then you weren't the target audience.

Most developers are writing for developers who have approximately the same skill level and knowledge. The vast majority of tutorials out there are definitely not aimed at beginners. They're aimed at peers who know most of the same stuff, but want to broaden their horizons a little.

Now, if it were 95% easy to follow, and then there was one step that was only a few words long and made no sense at all, that would be the typical badly written tutorial. There are way too many tutorials that have a "rest of the owl" problem at some stage. I was trying to figure out how to do something today and I must have skimmed through 30 tutorials aimed at people roughly my skill level before I finally found one that explained the missing bit. That missing bit turned out to be pretty easy, but almost every thing I read just assumed people knew how to do that part, and focused in on all the wrong things.

As for actual tutorials for beginners, the biggest problem isn't that they're badly written. The biggest problem is that they don't exist. But, to be fair, they're actually really hard to write. Explaining things requires that you really understand them well. But, when you understand them well, it can be hard to put yourself in the shoes of someone who knows so little they don't even know what questions to ask. Most computerey things are complicated enough that by the time you feel confident enough to write a tutorial, you've forgotten what it was like to be a beginner.

[-] Kushan@lemmy.world 5 points 5 days ago

Most developers are writing for developers who have approximately the same skill level and knowledge

I think you're correct about this, but I also think that's part of the problem.

On the one hand you can have technical tutorials for technical people, but to your point assuming the audience has the same skill level and knowledge is actually a mistake - no two people share the same same life, so while it's reasonable to assume a certain level of knowledge, you still need to consider that there may be gaps - small gaps but gaps all the same and that it's worth being explicit about things to avoid ambiguity. A common pitfall I see in a lot of tutorials or guides is not being explicit about file paths ("just add this to the config folder" - which folder? Where?), or not correctly steering the user towards the relevant documentation about configuration values while still expecting them to insert some config file specific to their system, stuff like that.

The other end of the spectrum - the beginner, to your point might not be the target audience but a lot of people don't realise that those folks exist. The absolute classic example I see of this is Linux for the Everyman - Lemmy is very big on promoting Linux and moving folks away from Windows/MacOS but there's a bit of a disconnect because a lot of tutorials exist that base level of knowledge that a complete beginner doesn't have. So they're both not the target audience but expected to learn that stuff - and of course it doesn't work and they stick to what they do know.

All this is to say, writing tutorials is a skill in itself and part of that skill is knowing who your target audience really is and knowing where your knowledge is his experience from working at something for so long or a basic level of understanding you expect a user to have.

load more comments (3 replies)
load more comments (5 replies)
[-] HugeNerd@lemmy.ca 1 points 4 days ago

I feel that way about pretty much anything these days. The sheer volume of options and the complexity of everything is simply exhausting. Even finding food for my cat is overwhelming.

load more comments
view more: ‹ prev next ›
this post was submitted on 25 Sep 2025
558 points (95.6% liked)

Programmer Humor

26629 readers
3470 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS