this post was submitted on 25 Sep 2025
558 points (95.9% liked)

Programmer Humor

26673 readers
1655 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
you are viewing a single comment's thread
view the rest of the comments
[–] Aceticon@lemmy.dbzer0.com 20 points 1 week ago* (last edited 1 week ago) (15 children)

The more advanced the level of knowledge on something the more foundation knowledge somebody has to have to even begin to understand things at that level.

It would be pretty insane to in a tutorial for something at a higher level of expertise, include all the foundational knowledge to get to that level of expertise so that an absolute beginner can understand what's going on.

Imagine if you were trying to explain something Mathematical that required using Integrals and you started by "There this symbol, '1' which represents a single item, and if you bring another single item, this is calling addition - for which we use the symbol '+' and the count of entities when you have one single entity and 'added' another single entity is represented by the symbol '2'. There is also the concept of equality, which means two matematical things represent the same and for which the symbol we use is '=' - writting this with Mathematical symbols, '1 + 1 = 2'" and built the explanation up from there all the way to Integrals before you could even start to explain what you wanted to explain in the first place.

That said, people can put it in "recipe" format - a set of steps to be blindly followed without understanding - but even there you have some minimal foundational knowlegde required - consider a cooking recipe: have you ever seen any that explains how does one weight ingredients or what is "boiling" or "baking"?

So even IT "recipes" especially designed so that those with a much lower level of expertise than the one required to actually understand what's going on have some foundational knowledge required to actually execute the steps of the recipe.

Last but not least I get the impression that most people who go to the trouble of writting about how to do something prefere to do explanations rather than recipes, because there's some enjoyment in teaching about something to others, which you get when you explain it but seldom from merely providing a list of steps for others to blindly follow without understanding.

So, if one wants to do something way above the level of expertise one has, look for "recipe" style things rather than explanations - the foundational expertise required to execute recipes is way lower than the one required to undertand explanations - and expect that there are fewer recipes out there than explanations. Further, if you don't understand what's in a recipe then your expertise is below even the base level of that recipe (for example, if somebody writes "enter so and so in the command prompt" and you have no fucking clue what a "command prompt" is, you don't meet the base requirements to even blindly follow the recipe), so either seek recipes with an even lower base level or try and learn those base elements.

Further, don't even try and understand the recipe if your expertise level is well below what you're trying to achieve: sorry but you're not going to get IT's "Integrals" stuff if your expertise is at the level of understanding "multiplication".

[–] SmartmanApps@programming.dev 4 points 1 week ago (2 children)

It would be pretty insane to in a tutorial for something at a higher level of expertise, include all the foundational knowledge to get to that level of expertise

You don't need to include it all. You just need to mention it as pre-requisite knowledge, and link to resources about it for those who don't have that knowledge. See Creating MAUI UI's in C#

I get the impression that most people who go to the trouble of writting about how to do something prefere to do explanations rather than recipes

Good documentation includes both. i.e. step-by-step guide, with explanations. See above.

so either seek recipes with an even lower base level

All documentation should cater to all levels. See above.

[–] Aceticon@lemmy.dbzer0.com 8 points 1 week ago* (last edited 1 week ago) (1 children)

For "all documentation" to "cater to all levels" it would have to explain to people "how do you use a keyboard" and everything from there upwards, because there are people at that level hence it's part of "all levels".

I mean the your own example of good documentation starts with an intro of "goals" saying:

"Visual Studio (VS) does not (currently) provide a blank .NET Multi-platform Application User Interface (MAUI) template which is in C# only. In this post we shall cover how to modify your new MAUI solution to get rid of the XAML, as well as cover how to do in C# code the things which are currently done in XAML (such as binding). We shall also briefly touch on some of the advantages of doing this."

For 99% of people almost all that is about as understandable as Greek (expect for Greek people, for whom it's about as understandable as Chinese).

I mean, how many people out there in the whole World (non-IT people as illustrated in the actual article linked by the OP) do you think know what the hell is "Visual Studio", ".Net", "Multi-platform Application User Interface", "template", "C#", "XAML", "binding" (in this context).

I mean, if IT knowledge was a scale of 1 to 10 with 10 the greatest, you're basically thinking it's "catering to all levels" when an explanation for something that is level 8 knowledge (advanced programming) has a baseline required level of 7 (programming). I mean, throw this at somebody that "knows how to use Excel" which is maybe level 4 and they'll be totally lost, much less somebody who only knows how to check their e-mail using a browser without even properly understanding the concept of "browser (like my father) which is maybe level 2 (he can actually use a mouse and keyboard, otherwise I would've said level 1).

I think you're so way beyond the average person in your expertise in this domain that you don't even begin to suspect just how little of our domain the average person knows compared to an mere programmer.

[–] SmartmanApps@programming.dev -3 points 1 week ago* (last edited 1 week ago) (1 children)

it would have to explain to people “how do you use a keyboard”

No it wouldn't. You just link to resources about pre-requisite knowledge.

and everything from there upwards

Nope. Exact same thing applies to all pre-requisite knowledge.

For 99% of people almost all that is about as understandable as Greek

Now scroll down to the pre-requisite knowledge which has links to things explaining ALL of that.

how many people out there in the whole World (non-IT people as illustrated in the actual article linked by the OP) do you think know what the hell is “Visual Studio”, “.Net”, “Multi-platform Application User Interface”, “template”, “C#”, “XAML”, “binding” (in this context)

Exact same number as there is people capable of clicking on the provided links about them in the pre-requisite knowledge section.

which is maybe level 4 and they’ll be totally lost,

...until they read the links in the pre-requisite knowledge, and then they will understand all of it.

I think you’re so way beyond the average person in your expertise in this domain

says person who didn't even scroll past the introductory paragraph! 😂 You think people try to learn things by reading only the introductory paragraph?? 😂

you don’t even begin to suspect just how little of our domain the average person knows compared to an mere programmer

And yet, weirdly, if you keep reading you'll find it caters to people who know nothing about it 😂

[–] AwakenedAce@lemmy.blahaj.zone 4 points 1 week ago (2 children)

Cool but nobody's about to link to prerequisite information like typing on a keyboard. Same for math, a book focusing on integration isn't going to say "read this book for the basics of addition btw".

And why should one even cater to that? If a person is interested enough they can just.. look up the things they don't understand, that's not exactly hard

[–] SmartmanApps@programming.dev 2 points 6 days ago* (last edited 6 days ago)

Cool but nobody’s about to link to prerequisite information like typing on a keyboard.

they say to someone who does indeed link to all pre-requisite knowledge. 😂 You know some Tech people do indeed recommend doing a touch-typing course, right?

Same for math, a book focusing on integration isn’t going to say “read this book for the basics of addition btw”

I'm a Maths teacher. You'll find that Maths textbooks do indeed run through any pre-requisites for the topic. e.g. "We discussed back in Chapter 2...".

And why should one even cater to that?

Because it's useless to a large chunk of your audience if you don't.

If a person is interested enough they can just… look up the things they don’t understand,

No they just can't, not when no information at all has been given on what this is so that you have something to search for. See Microsoft doco where they use TLA's, don't tell you what the TLA is short for, don't link to any information about the TLA, and searching for "TLA" (since they've not told you what TLA is short for) fails to bring up any information about this thing they are talking about. Now the tutorial is completely useless to you because you have no idea what they're talking about and can't find anything about what they're talking about. "Draw the rest of the owl"

that’s not exactly hard

It's very hard when you have no search keywords at all to work with.

[–] Trail@lemmy.world 1 points 1 week ago

No, you're not supposed to follow years of computer science courses in a university. A good tutotial will provide all prerequisite knowledge for you. Including high school.

[–] lmmarsano@lemmynsfw.com 4 points 1 week ago (1 children)

I think your tutorial depends too much on your editor UI. It reminds me of those tutorials (often written by Microsoft) where the IDE has changed enough to break the tutorial. This made the tutorial completely useless, because none of them would explain what I actually needed: the magic thing their IDE did in terms of essentials (text files, basic commands), so I could reproduce the effect.

This is different in the unix world, which favors tool-agnostic approaches in terms of text files & basic commands. Even as tooling & technology changes, I can usually look up the meaning of the text & those commands to update them.

That's the most important I think: not the answer itself, but where the answer comes from, so I can go back there when I need to.

[–] SmartmanApps@programming.dev 1 points 6 days ago (1 children)

I think your tutorial depends too much on your editor UI

You mean the UI which is specified in the pre-requisites, that UI? 😂 It's not a bug, it's a feature - no bloat from going through everything twice (once for VS, once for VS Code). That's why it's in the pre-requisites.

It reminds me of those tutorials (often written by Microsoft) where the IDE has changed enough to break the tutorial.

You know I needed to write this because Microsoft hasn't written a tutorial for this topic, at all, right? That does remind me though, MAUI have changed the parameters for Grids - I better check that part of my tutorial is still valid.

[–] lmmarsano@lemmynsfw.com 1 points 6 days ago (1 children)

It’s not a bug, it’s a feature

It's a bad one: if I'm unable to get that version of your IDE, the tutorial becomes useless. If it had stuck to programming essentials like the source code & configuration files, then it'd have enduring value as the reader could understand without unnecessary concealment of basic information dependent on an IDE.

no bloat from going through everything twice (once for VS, once for VS Code)

Not implied: the tutorial would properly focus on the programming without IDE complications as it shows the files generated & dependencies linked. (eg, "I did this in my IDE: here's what it did".) The reader could in principle use any text editor. It's not an IDE tutorial.

Microsoft hasn’t written a tutorial for this topic, at all, right?

And you made another Microsoft-grade tutorial: that's not a compliment.

[–] SmartmanApps@programming.dev 1 points 6 days ago

if I’m unable to get that version of your IDE, the tutorial becomes useless.

No it doesn't. Clicking on the link gives you the latest version, which obviously is above the minimum version.

without unnecessary concealment of basic information dependent on an IDE

Haven't concealed anything - it's there in the pre-requisites

“I did this in my IDE: here’s what it did”

I have many screenshots showing exactly that.

The reader could in principle use any text editor

No they can't. Several times I cover the Intellisense options which make it easy. This isn't available in a text editor, hence the pre-requisite of using Visual Studio if you want to follow this blog.

It’s not an IDE tutorial

It's not meant to be. It covers what you need to know to do what I have done in the blog.

And you made another Microsoft-grade tutorial

Nope! They don't include pre-requisites at all, never mind links to them, never mind step-by-step processes with screenshots, etc.

load more comments (12 replies)