I did worry a bit about https://htmlforpeople.com/zero-to-internet-your-first-websit... - "Step 1. Create a folder on your computer" - because apparently a large number of people these days don't understand files and folders at all! https://www.theverge.com/22684730/students-file-folder-direc...
Not sure how best to approach that though. Having a whole chapter of the book explaining files and folders feels pretty redundant. Maybe there's something good you could link to?
He was using the mental model of files and folders -- that files exist and refer to stored bytes, and that there can be one or several copies of a file. There can be links to a file that take very little space relative to the file.
I had to tell him that I have no idea what sort of storage model these services expose, if any, and that the concept of a file system backed by a storage device is not the analogy that applications expose to their users these days.
He eventually understood, but I could feel his frustration -- that the mental model he had was really just chosen by a past moment in application design, and that what replaced it is nebulous and disempowering.
When i use google drive, the interface appears to be folder/file structure. Whether it is or is made to look that way is irrelevant, i suppose, as long as it works that way. I can also increase storage by downloading/deleting things so Im a bit flummoxed.
- Google Drive caches recent files and downloads other files on demand. Just like iCloud Drive, MS OneDrive, etc.
- Deleting files will free up space on your Google account.
- Clicking the "clear offline files" button will free up space on device.
All these offering are quite similar with just a few extra features here and there
It might look that way, but it doesn’t have the same features.
https://aws.amazon.com/compare/the-difference-between-block-...
For my Dad, we got him a “simple phone” – it basically does calls and texts, has big buttons in pretty much the style of old Nokia phones but chunkier. The screen is larger and higher resolution than those, so the text is nice and clear. It works really well for him in terms of being able to cope with it with his eyes and getting the job done.
> Every app has a cloud service
And that phone doesn't run apps at all… For things beyond calls and texts¹ he uses a laptop, largely keeping with the files/folders metaphor and no extra apps.
----
[1] managing his banking, certain shopping though he often instead asks one of us to do that as he is wary or falling into scam sites, facebook for more passively getting news on what family a-far is getting up to, his collection of digital photos (he used to take a lot), and such
If Google Photos is low on space, try deleting from Google Photos without causing it to delete from all other devices. Seems to require manually copying all those files to an untracked folder, then deleting from Google Photos.
Try managing which folders Google Photos syncs:
When it asks to add a newly found folder, the app doesn't give any way to find out where that folder is or what's in it, unless the folder's name only occurs once on the device.
Try removing folders from the app ("Whups, didn't mean to backup all the graphic assets of a random app that foolishly doesn't use 'nomedia'!"), where the folder name is not unique. It again gives nothing more than folder names and no indication of where they are or what's in them.
Try getting Google Photos to list where every file first came from, so you know where the originals are (for various reasons).
If the students are genuinely curious, there is nothing to stop them learning about pretty much any topic in CS - really. There are few university subjects where the entire syllabus is freely available online in almost every format imaginable the way CS often is, and very often the computer you already have works just fine to learn it on.
(Hurrey for Termux)
I was very lucky that my middle school (in a fairly low-income area) was given a grant by NASA that allowed them to supply all of us with laptops during the school year. I surely wouldn't be where I am today without it.
Network building, external proof of ability to work, and a place (and just as important - a time) to translate who you are into who you want to be.
These were always the reasons, the rest you learn on the job.
It's not that you have to learn everything on your own though, it's that if you enter a program without having some understanding of the basics, you're going to have to pay to take a bunch of remedial classes.
It'd be like going for a mathematics degree when the highest class you took in high school was algebra, where the normal degree students would be starting with Calc 3 or Differential Equations. You might be ok in the major or you might not, but you don't even know enough to start on the path at that point.
I'm a programmer now, but I don't think finishing the CS course would've helped much with that.
Your maths degree probably did as much as a CS degree would have done (expanding your ability to learn, analyse & problem solve, etc.) allowing you to learn the technical details of programming on your own. CS was essentially birthed from a branch or two of mathematics, after all!
People who want/need a programming course (which is perfectly valid, I don't mean to denigrate the position in the slightest) are probably not best served by a traditional CS degree.
--
[1] “hum-drum” sounds a bit too negative for what I was intending, but my brain isn't firing on all cylinders this morning and I can't think of a better term for what I was thinking there!
Lack of understanding coming into the courses causes issues, when I started we had to delay things because some students hadn't encountered matrixes and the maths around them.
So sure, they can teach these things but it adds to what they already are trying to teach. A lowered base means less of the advanced content can be taught.
It’s kinda shitty, but for a long time PC gaming as a gateway drug for young kids let universities just assume a fat pipeline of already-computer-savvy applicants.
But that's not what they are taught now. They are taught to use social media and cloud services, which is completely useless since they figured this out themselves already.
The education system here just keeps them early in a consumer mind state. It has absolutely no ambition and is just a race to the bottom.
I learned CS ~20 years ago and it was mostly the same. Half of the first year is people that are vaguely interested in computers, video games, or heard it was a good way to make money, and didn't really have any real skills going into it.
It is somewhat different now, because there are students that think they are good with technology but really have no idea how things work, they just think they know because they are slightly better than their peers at using phones and tablets.
That's like trying to learn a foreign language by picking reading War and Peace in that language, without ever having seen a single translation to that language, or having already read War and Peace in your own. There are a lot of steps you need to take before then.
I would also be pretty surprised if a biology undergrad had never touched a microscope, possibly with the exception of the most impoverished among us. I imagine most people have tried one at some point along the K-12 journey, and there are more introductory treatments of e.g. life science on the way as well.
Starting CS without having "seen or touched" a computer would be like a biology undergrad who wouldn't be able to tell you whether a dog or a tree is a plant or animal.
But so it goes when society moves forward.
Likewise the biology example seems strange; sure maybe people haven't used a microscope specifically (unlikely imo), but they very likely have used any number of other implements and taken at least one secondary school biology course
No but you'd presumably make them take some remedial classes that the mainstream students wouldn't be required to take. Or maybe not, I'm not sure how it works in biology, but in the harder STEM majors, you're generally expected to have some basic knowledge beyond what the 'easy' track at high school required for graduation.
I've seen younger generation only use Google Docs and streaming services (music/video) and not even understand what a "file" is, because everything is just on the internet.
Still Google Docs? Many people use docs.google.com daily, but they have never visited drive.google.com
What's even more confusing is that some apps save images directly to the "Gallery" which is separate from the "file and folder" view you get otherwise. So (as an inaccurate example), Fujifilm's app might download directly to your "Camera Roll" while GoPro's app might create a "GoPro" directory to dump photos/videos in, which offers more separation but doesn't appear in the "Photos" app by default.
Some apps even have toggles to switch between these two methods of saving files - though if I recall correctly, the non-Gallery/Camera Roll method (while desirable to many users) of saving images has technically been deprecated for a while.
You can read more here: https://developer.android.com/training/data-storage
But attempting to save an attachment (from Telegram, WhatsApp, Viber...) and then either open it or attach it from another program leaves me perplexed. I generally rely on "share with" to avoid this, but I am guessing not all apps register proper MIME types or detect them properly so the option I need doesn't show up every time.
I guess the fact that I mostly moved from DOS to Linux never really got me away from thinking about files and directories, and inconsistency in Android really bothers me.
Been there too. After some (maybe a lot) investigation I learned that this "inconsistency" in Android happens, because some apps use "private" directories which you (or other apps) aren't allowed to look at. Think of these as directories of user Linux users who turned off read access for others, i.e. "chmog og-r $HOME"
After finding apps like Solid Explorer and especially Termux, I learned to comprehend what's going on. But I still hate it that apps (and Android) prevent me from looking at my data the way I like to do it. For "security reasons" I not allowed to view things on my devices? Sheesh!
Nice apps like Markor or Diary (from Bill Farmer) store their data in user visible directories. As such apps exist, I tend to ignore those with limiting my access.
One thing I appreciate about iOS is there's a Files app/UI, and if your app wants to save some user-facing data, it can go into the Files app. From there it's a simplified Explorer/Finder type file browser. It's not perfect but its consistent to me.
I know incredibly competent web developers who don’t know what SSH is or how to use it. Boggles my mind, but I grew up with it so it’s what I’m used to.
I have issues with that. FF doesn't show the path in the list of downloads. There is a button to start a file manager, but I have no file managers installed, so button doesn't work. In some cases I didn't find the better way than to copy the link and to download again with wget.
The growing irrelevance of the filesystem for the average computer user isn't a ln "epidemic" any more than the obsolescence of the CLI for the average person; it's just additional progress towards adapting computers to be more human-friendly rather than the reverse. We didn't used to have cars with automatic transmissions, cruise control, or blinkers that turned off on their own once you've finished turning, and no one describes the evolution evolution of the way we drove cars from decades ago to the present in the same language as a public health emergency.
Over time, technology becoming simpler to use by parts of the interface getting pushed down into implementation details is a good thing for the vast majority of people in the long run, and it's important for those of us who are technical not to mistake the requirement of a certain feature for the ability to access it. I think the biggest concern with the dominance mobile computing isn't that users might not need to know about the filesystem but that users might not have control of their own devices in the long run if the ability to access the filesystem is removed. There's precedent in getting support from the non-technical public to care about technical details when they understand how it affects them (e.g. right to repair, the pushback against SOPA/PIPA, net neutrality), but I that we'll miss the window to influence things similarly here if we focus on the wrong thing.
It's crazy how well mobile's robust security model has protected the suddenly computing masses.
And here I am shaking my fist insisting these are “directories” not “folders”… ;)
Generally a folder is a directory-like thing that groups file-like things but not necessarily mapped to real on-disk directories and files - and more often than not, it is exposed via GUIs rather than command line applications. Of course that is just common use not anything inherent - after all on Linux it is common to expose stuff via the filesystem (sometimes in addition to VFSs) that still uses the terms directories instead of folders with the only difference for when one is used or the other to be if it is done via a command line application or a GUI application.
This sounds backwards to me, going by the real life counterparts for these terms. A directory is a list of pointers to items located anywhere (eg. a phone directory for a business may contain corporate and other remote numbers alongside local extensions), but a folder contains actual files that are physically located inside it; you can put references to remote items inside, but only by placing a physical representation/reference inside of it.
My first exposure to computers that had a file hierarchy used the term "folder". When I eventually encountered "directory" in computer usage, I was confused because I thought first of signage in malls.
It still "feels wrong", so I usually use "folder". (-:
I was always a little disappointed with how most web browsers choose to render HTML pages that had no explicit styling information. I'm not necessarily saying web browsers should have defaults as opinionated as simple.css, but the default page margins, padding, text styles, headings, etc that they picked aren't particularly attractive.
Opinionated web developers will override the defaults no matter what they are, but if the convention was to have more attractive defaults I wonder if that would have resulted in a larger share of personal websites and blogs created using plain HTML.
Though with "reader mode" becoming more popular I wonder if there's a place for a browser with more opinionated defaults.
[1]: https://meyerweb.com/eric/tools/css/reset/
As you point out, people who care will use some of the defaults and override others as they go along, but a small bit of effort goes a long way:
html, body {
margin: 0;
padding: 0;
}
body {
line-height: 1.6;
-webkit-font-smoothing: antialiased;
}
img, picture, video, canvas, svg {
display: block;
max-width: 100%;
}
input, button, textarea, select {
font: inherit;
}
p, h1, h2, h3 {
overflow-wrap: break-word;
}
https://www.cultofmac.com/news/files-app-makes-ipad-more-mac...
However, neither of them are typically used in mobile UX patterns.
Huh. I just opened my Files app on my iPhone 12 and went to On My iPhone (which was 2-3 more taps once arriving in the app). I don't see many of my files though, just a few. Some PDFs and a Spotify folder. But I don't see my pictures there? Or are pictures no longer stored as 'files'? Or do you mean that the app has allowed access only to some local user files? It's not all local files. And it's not all non-system local files. And it's not all user files. In fact it is missing > 99% of my user-space files (specifically ones created with default-OS applications on device, by the user).
And if I make a Note in the Notes app, will it show up as a file in the Files app? Probably not, I would guess. Because the note probably isn't really a file anyway. So pictures aren't files, and notes aren't files. What would a file be then? Are files only PDFs? That's the only thing that shows up for me. I guess PDFs are the only things that are files then!
Super confusing experience. I'm a mobile app developer by the way - on Android. Android sucks at this too of course. But the iOS Files app is much too limited to enable users to 'get' the concept of a file.
But it's pretty clear that the Files app is not meant - in any way - to help users understand computers, what files are, etc. It is obtuse and confusing as soon as the user wants to leave the iOS ecosystem (even to go use a Mac).
What she would do is airdrop photos from her iPhone to her iPad. Copy them from the gallery to the Files app. Move them in the files app to the hard drive. Then delete them from the gallery app, delete them from the Files app and the trash.
For some reason, deleting files in the Files app didn't free up space on the iPad. So she had to uninstall and reinstall the Files app to get the space back.
As a Linux user that grew up DOS, the whole thing just broke my mind. She was frustrated and I was frustrated I couldn't help her.
(a) apple doesn't show users all the files on their iPhone
(b) apple makes lots of money
There is no evidence that a causes b. It's possible showing the files would make them even more money. It's also possible showing the files would have no effect on how much money they make.
It may not go over well but I don't think this is some generational thing. Its just plain pure laziness that has become epidemic.
>Joshua Drossman, ..the laundry basket where you have everything kind of together, and you’re just kind of pulling out what you need at any given time,” he says, attempting to describe his mental model.
>I try to be organized, but there’s a certain point where there are so many files that it kind of just became a hot mess
Yeah.....need I say more? Other than gross. I think those statements prove my point better than I can.
Like most on HN I'm extremely computer savvy and I've yet to find a way to avoid dealing with file/folder models and I've tried. All other ways fall apart no matter how "advanced" they are. Maybe it will change with LLMs but so far there is no way for the computer to anticipate what you do/don't want and organize for you.
They will, however, write a long Facebook comment explaining what is wrong and explaining that they cannot edit a wiki.
I'm probably around the average age on HN, so I grew up with early Windows. Yet after years of trying and failing to get into different note-taking/productivity apps, I finally found inner peace by using Obsidian and embracing the exact millenial "laundry basket" approach the article talks about. Maybe 10% of my notes are in a folder, the other 90% all together in the root. Turns out what mattered was 1. the lowest possible entry barrier to writing a note and 2. speed.
(Note: I have nothing to do with this project thus far and have nothing to gain from saying this.)
Here's their basic html tutorial section: https://developer.mozilla.org/en-US/docs/Learn/HTML
No one is or has been stopping people from learning HTML.
The MDN tutorial is talking about img alt attributes before you even create a single .html file! That's how to put people off.
web.dev doesn't get as much love as MDN, but it totally should!
I'm very proud of my single file html document for reporting results.
Of course no JS!
I haven't got all the way through it, but seeing the contents drop-down made me feel at home.
I put document structure first so the content looks good with no styling and no class attributes. I use no divs, just the more sensible elements. Sections, Articles, Asides and Navs work for me. There should be headings at the start of these elements, optionally in a Header and optionally ending with a Footer. The main structure is Header - Main - Footer.
Really there should be a need to keep it simple, and that begins with the document structure. It is then possible with scoping to style the elements within a block without having to use any classes except for at the top of a block.
It infuriates me that we have gone the other way to make everything more and more complex. We have turned something everyone should be able to work with into an outsourced cottage industry. Nowadays the tool chain needed for frontend development is stupid and a true barrier to entry. Whenever you look under the hood there is nothing but bloat.
My approach requires strict adherence to a document structure, however, my HTML content is fully human readable and the content looks great without a stylesheet, albeit HTML 1.0 pre-Netscape looking.
Tim Berners Lee did not have class attributes in HTML 1.0 but he did want content sectioning. Now that there is CSS grid it is easy to style up a structured document. However, 'sea of divs' HTML requires 'display: contents' to massage the simplest of form to fit into a grid.
I feel that a guide is needed for experienced frontend developers that are still churning out 'sea of div' content. In the Mozilla guide for 'div' it says that it is the element of last resort. I never need the 'div' because there is always something better.
The CSS compilers are also redundant when working with scoping and structured content. Sadly my IDE is out of date so I have to put the scoping in at the end as it does not recognise @scope. Time to upgrade...
Anyway, brilliant guide, in the right direction and of great interest to me and my peculiar way of writing super neat content and styling.
The text is very well written, straightforward, welcoming, well structured. It seems easy and enjoyable to read.
I believe that putting html in non professional hands is a good goal.
Some feedback:
- About <meta charset="utf-8">, it seems to be introduced quite late. People comfortable with English but wanting to write their website in their own language might be surprised. Or even people with accents in their names (you are putting your name in the title, people will probably try this). You also say that it's for special characters like emojis, but you should probably say it's essential for most languages that are not purely ASCII (event English with words like cliché). Maybe you could introduce that earlier and say that it's there for historical reasons and that without it, you may have issues with characters. To be checked but it might be better to put it before <title>.
- body, head, html tags are mostly useless, except for html because of the lang attribute (accessibility + some browsers incorrectly offering to translate)
- vscode is a bit unfortunate because of the telemetry part, and seems quite heavy and complex for the task. On Windows, notepad++ is a great option. On Linux, any default text editor that's already installed will do. There's always codium, which is code without the bad parts. The intended target doesn't know about the bad parts, so they are installing spyware without knowing.
I didn't know about the aria current page feature, I'll start using this.
A main complication here is that people don't even know about character encodings, so you can't reasonably expect them to save index.html in UTF-8 in the first place. (For example Windows notepad would use the active code page by default.) I agree that it should be featured prominently if that saving issue can be also addressed.
Step 1 starts with:
> Pick a location on your computer and create a folder. Call it my-site or something similar.
You've already lost the vast majority of people right here. There are a shockingly large number of people out there that use computers EVERY day that won't know how to do this.
> There are a shockingly large number of people out there that use computers EVERY day that won't know how to do this.
That's very hard to believe. Even my mom, who doesn't use computers at all, would know what folders and files mean.
The people who don't know what files and folders are - can't immediately be beneficiaries of this guide, right? They have a lot more fundamentals to cover before anything like this.
I worked over the phone tech support for a few years about 20 years ago, and it really opened my eyes to how far the gap is between the tech literate and everyday computer users.
I think this guide is terrific, for what it's worth. I just also think there's a lot more people out there that this guide SHOULD help, that it won't, because of that fundamental gap.
He got confused a few years ago because "how can you have a folder inside a folder? Only files get put in folders".
Of course, he would not read this book.
If someone can't figure out how to make a folder but wants to write HTML, they have a problem this book should t be obligated to solve.
"What do I need?
You need a computer with internet access. I wrote this book in a generic way so that it would be applicable for people using macOS, Windows, or Linux. If I point you toward software to install, it will be free (or have a usable free tier) and will be cross-platform (or I will offer platform alternatives)." https://htmlforpeople.com/intro/#what-do-i-need%3F
Are you sure it's this bad, though, or are you not giving people the benefit of the doubt? How can it be this way? Is it due to people using cloud apps for everything?
In the past tech education felt useless because teachers were so far behind, maybe it’s time to revisit now because now the younger generation is far behind.
Next time I'll refer the to this site and ask them to give it half an hour and see what they can create in that time. I know that so many would get hooked if they just get that first taste of "wow, i just published something on the actual web!"
@blakewatson: Any plans to add i18n to the site and accepting pull requests for translations?
People don't want to be typists either, they want to be creators.
1. Use Notepad/TextEdit to create a plain text index.html.
2. Deploy index.html to Neocities or similar.
3. Add content with headings and images.
And only then going back to:
4. Make it proper HTML with <head> and <body>.
5. Upgrade Notepad/TextEdit to Visual Studio Code.
<!DOCTYPE html>
<title>Foo</title>
Fun fact: you do not need to close most tags in a valid HTML5 document.
This is valid:
<!DOCTYPE html>
<title>Foo</title>
<p>paragraph
<p>second
<ul>
<li>item
</ul>
<table>
<tr><td>hi!
</table>
I think you'd really only want a TITLE tag so that it appears as a tab name. Anything else is really optional for people and you'd only really need BR, A, and IMG
<textarea onkeyup='results.innerHTML=this.value'></textarea>
<div id=results></div>
localStorage.setItem('text',results.innerHTML=this.value)
I’ve recently decided to start adding to my website with just hand-written HTML, and slowly migrating the back catalogue. I love its directness, its ability for ad-hoc changes to a page and its robustness. After trying almost every system for publishing on the web under the sun; I’ve concluded HTML is the right tool for the job, even if it means a little extra work up front.
As a retired developer I’m happy to tinker with Rust or SQL or something embedded when the mood strikes, but when I want to write, I just want to write - and HTML kind of lets me do that. I think if more people saw HTML as a document to author rather than just a build target then we’d have a lot simpler systems. This mindset has resulted/allowed for a huge dumbing down of average computer/web users and huge headaches for developers. I can’t think who all the complexity we’ve brought into the world serves 99% of the time.
This resource might be one of the things that nudges us back on track.
Even though I’ve been working as a full-stack for quite a few years now I’ve been hooked while reading just imagining and remembering how magical building my first few websites used to be. I’m hoping this will get some more people to realize how easy it is to build your own webpage and how much fun it can be building your own little place on the internet.
People want to share their thoughts, stories, and photos. In my opinion, we need better tools to allow people to create their own sites without needing to code.
This can be applied to all topics. Knowing the basics of everything is better than knowing nothing.
I teach a one semester high school Web Design class and currently use a mixture of lessons from these two for learning the basics of making pages by hand with HTML and CSS:
https://internetingishard.netlify.app/
https://www.washington.edu/accesscomputing/webd2/student/ind...
This looks very promising and could supplant or at the very least supplement those.
https://paste.dbohdan.com/internetingishard.netlify.app.1728...
I think that if you want to lower the contrast of a dark-on-light page—well, first, don't lower it too much [1], but second, it is better to make the background darker than the text lighter. Avoid thin faded text.
Here is a minimal edit to the page:
https://paste.dbohdan.com/internetingishard.netlify.app-edit...
This is #333 on an #f9f9f9 background (without the gradient to simplify things and with no change to the headings). I find it more pleasant to read.
However, I did become quite lazy and would never have continued maintaining it as raw HTML. I discovered PHP which gave me superpowers, but it is quite a paradigm shift. I wish I knew about static site generators sooner.
I even x-ed it at https://xcancel.com/brajeshwar/status/1812149514632925525
I absolutely agree with this, in both directions - the tools we have kind of suck if the web WAS meant for professionals, but also that I remember learning HTML from tutorials in 1995, and back then there wasn't much of a difference between a good website or a great website except that a good website used a table based layout and didn't have prev/next navigation.
Here's my user test:
https://news.pub/?try=https://www.youtube.com/embed/j_A2egms...
And, in any case, explaining what HTML stands for does not get anyone closer to understanding what it is.
I think it's a feature that this book doesn't throw technical jargon at the reader before they've even created anything useful yet.
Kudos to the author(s) for the site. I'll have to add it to my arsenal as a "next step" for folks who want something more custom than WP/Ghost on PikaPods w/ a theme, or who just really want to be totally independent.
Show someone basic HTML and most people will eventually look at their page and think, “this is neat, but how to I make this title red and change the background?” This is when to introduce the very basics of CSS.
If someone has a goal the learning process is easier and more exciting, because it’s relevant and allows them to learn something to give them a result they already want. Learning to learn is hard.
I agree you can pretty much get there with plain HTML academically and in concept work, but this is not a helpful (or exciting) perspective for someone who is likely to be tasked with building non-trivial sites for others. A little bit of color and movement can go a long way in keeping the apprentice's attention.
For someone looking to be a web developer, I can see where some would need a faster ramp up to hold their interest, but they should also still know that it can be this simple. I saw a video not long ago where someone asked a bunch of people who just finished a web dev bootcamp to make a basic HTML file and put it on the web, much like what this tutorial does in the first couple steps. Most of them couldn’t do it. If someone can make a page using React, but can’t make a simple HTML page, I think that’s a problem. It leads to a lot of overly complex solutions, because they were never taught how simple it can really be.
Even for technical folks, their area of expertise may fall outside of the web, but they still want a web page to share information. The basics are perfect and often used. Dennis Ritchie’s page was a perfect example of that. A lot of people from this era have similar sites.
Remember, the goal isn't to make everyone a competent developer, just enabling everyone to participate without going through a corporation for basic web services.
<BODY BGCOLOR="#FF00FF">
<FONT COLOR="#FF0000">
<H1>My First Heading</H1>
</FONT>
https://werbach.com/barebones/barebones.htmlI don't need to read farther than this, I'm never going to recommend this over freecodecamp. Let alone that a lot of people are usually on mobile during learning time, it just makes it too scary, too easy to mess up, too hard to share what you are doing to get help.
I 100% believe online sandboxes are the way to teach coding to people who aren't already comfortable with technical problem solving.
One typo in your math or chemistry homework will quite likely give you the wrong final answer, but hopefully that wouldn't "put you off science" forever. Otherwise none of us would be here as I'm sure we have all made hundreds or more.
Are we not expecting students to be resilient and solve problems anymore? One of the Common Core standards that used to be on the classroom wall was "persevere in problem solving." I say it's great for students to make a few easy mistakes like forgetting a semicolon to get in the habit of reading error messages and troubleshooting while they are still straightforward to fix.
In this case, the single most important thing is *early successes*. Kids spend years learning about the number line and what is the difference between + and - before they ever do 2+2=4. Or if they learn 2+2=4 first, it's just some abstract syllables they were taught to parrot, and they probably don't understand.
For a new programmer, who is ALREADY SCARED OF PROGRAMMING, the single most important thing is early successes. If they can make something work on their first attempt, without realtime help from a friend fixing their mistakes, they are SO much more likely to have the needed self-confidence to keep learning.
For a concrete example, every time I teach regular expressions to people I say, `cat` is a regular expression! Let's search for `cat` in `catastrophe` and turn "regex" mode on! Congrats, you have now written and used your first ever regex!! And this goes over SO well. It's SO much better than trying to start out with a symbol, because I give them an initial win that they achieved and that they were able to do. And if they get stuck later, they can always go back to knowing that `cat` is a regular expression and search for `cat` in `catastrophe`. And if it doesn't work, there's a different problem.
In other words, not only is giving people an early success like this good motivation, it's also teaching them the negative control that they'll use for the rest of their programming careers, even if they don't know it.
"Make a file on your computer" is not useful by itself. It's not a negative control. It's not an early success. It can be learned later, once you have the other things.
> Imagine if Word documents were only ever created by “Word professionals.”
But they are! OP explain how to create websites using basic text editors, and nobody is able to create a Word document using simple text or binary editors, apart from maybe a handful of gurus in Richmond.
If you really want to democratize HTML, an HTML editor is what you need. Otherwise, your teaching site will not attract much more people than any other teaching site.
There was a time when it was easy. Even Javascript was easy. All of this stuff was made for people, but we've abstracted it away so only machines ever touch it and what used to be easy is now a dark art.
HTML is "made for people" because it's a text-based markup format intended to be edited by people when designing a web page, simple as. If it were made for machines it would be a binary bytecode format. It isn't because it's meant for human beings to read and write. And human beings are capable of reading it and writing it.
I don't know what to tell you. This is simple, straightforward fact, but you seem weirdly offended by the mere premise.
What would be the best way to add markup to English? It seems like an unexplored question. And if we were to explore it, we would find many alternatives, ranking much higher on the "for people" scale than HTML.
HTML is not a semantic markup of English, it's a semantic markup of digital text documents. Yes, you would want to use keyboard-convenient glyphs to express this markup because the keyboard is the primary means by which a human inputs text into a computer, which itself is the primary means by which HTML documents are viewed. Also because HTML operates primarily within the context of typography, in other words, because the data that HTML marks up also consists of keyboard convenient glyphs. It only makes sense to use text glyphs to describe the transformation of text glyphs within the context of a textual medium of communication.
Even Markdown is essentially the same thing. There's little real difference between surrounding a word in asterisks versus <strong> or <b> tags to denote bold text, other than aesthetics.
>And if we were to explore it, we would find many alternatives, ranking much higher on the "for people" scale than HTML.
Like what? Interpretive dance? Arcane gestures? Singing the markup into being?
People have been using written language for thousands of years, representing written language with type for centuries, and using keyboards as an interface for generating text since long before computers were invented. It all seems to work just fine for many people. I'm curious what you think would be better.
꜐expandꜘourꜛglyph꜅workꜝ Wikipedia has something closer to what I envision as what the dudes who done did CSS done thought. Someothing closer to arranging your magazine on the page for others to surf, and also link it with other pages. The soothing letters of English and their stradivarian font-signatures so carefully plucked and delicately labored on in the ethers of Apple headquarters, are bruised and battered by slashing and elbowing />
Uh, I don't think browsers have had the File toolbar for a long time, I just checked to make sure I'm not crazy and Firefox and Chrome on my system certainly don't.
You don't ask anybody to learn XML tags to edit a Word document in a plain text editor even though it's technically possible. Similarly, HTML is not "just another type", but one of the many poorly designed (especially so if CSS is added) document formats that no non-tech "anybody" should be exposed to
WYSIWYG is for anybody.
I don't know why people shouldn't be exposed to markup.
I also don't see how HTML is a poor format. It has its issues but fundamentally? Seems fine.
It's cool someone tries to make it reachable to more people.
Second, it's much more straightforward vs any tags (and remembering having to close them without any help in your plain text editor)
And is also much more discoverable in the intuitive interface with the full list of available styles right there with styled buttons so you don't need to think whether <u> is underline, underscore, or something else entirely.
That's the whole point of why this can't ever be for "everyone" - it requires too much knowledge that's not generally useful.
But yeah, with such a trivialization of the effort required, you'll never understand why people shouldn't be exposed to markup.
> It's cool someone tries to make it reachable to more people.
Not unless he misleads them
and
> trivialization of the effort required
I don't believe this is what's happening though.
Yes, that most people already know WYSIWYG has value, of course. And it takes effort to learn. But people can see for themselves if it's for them. Nobody is forcing anyone to do anything. Most likely, people even starting to read this are probably ones who are already a bit curious or interested in this.
This is for people would could be thinking "HTML is code, it's impossible for me" when really they can understand and like. This things tells them "look, it might not be as complicated as you might be thinking. Try and see for yourself".
I don't see the drawback of doing this actually. I don't see the harm. However, I see value in making people realize that computers are not magic and that they can leverage them in other ways, and putting such tools within their reach.
So yeah, maybe not anybody, but probably many more people than one could think (professional or not).
It's also easy to underestimate people (ourselves included) and to think code like HTML is too complicated to understand for most people. It's actually not. Most people would understand the basics quite easily and making them realize this is quite nice.
What do you have so special that you could learn HTML? Nothing, actually. And it is quite important to be aware of this.
So don't make misleading claims it is for anybody
People can see for themselves, but if they're not mislead they can see it earlier without wasting time. Do you see time waste as a drawback?
Life is a huge waste of time.
> So don't make misleading claims it is for anybody
Nothing is for literally anybody.