48 ms·
All you may need is HTML
- networked 4y agoI like this design less than that of Fabien Sanglard's older pages like https://fabiensanglard.net/quake2/index.php https://fabiensanglard.net/quake2/index.php. It is more distinctive, but the text is harder to read. Justified monospace text also makes it harder to scan. I think the goal is to look kind of like a man page, but man pages have more varied indentation, which helps you scan their content.
- y3k 4y agoHTML + CSS for whitespacing & viewport width + SSI | Caddy's template That combo is more than enough for almost all the websites out there, I've 3 different sites like that and they are blazingly fast, everything served from a $4 VPS (serving about 20k views per week).
- Loic 4y agoSSI: Server Side Include[0], my first not so simple website was created with SSI, with all the pages as `.shtml`. These are memories. [0]: https://en.wikipedia.org/wiki/Server_Side_Includes https://en.wikipedia.org/wiki/Server_Side_Includes
- y3k 4y agoI never released a production website with SSI before, but I found it when I was searching for a more bare-metal approach to make websites; then I found Caddy's template engine and it's been more than enough for what I need.
- superkuh 4y agoThis is the way. It's great for templating with .html fragments, extremely easy to maintain and has almost no attack surface. I don't know what "Caddy's template" is but HTML/CSS + SSI for gluing the fragments together is what peak personal website performance looks like.
- y3k 4y agoSSI is supported by "old battle tested" servers like Apache or Nginx, there's a "new guy on the block" that I find quite promissing: Caddy[0] however it doesn't support SSI, instead they have some built-in template engine that is a bit more powerful than old SSI but can achieve the same result. [0]: caddyserver.com
- tannhaeuser 4y ago> Almost no attack surface I guess you mean because SSI is just a very limited mechanism as opposed to full blown Turing complete PHP or similar. But actually if the fragments/partials you include via SSI are user-posted content (comments) or syndicated content then of course SSI can't fence against <script> or other injections. In that case, you could use more sophisticated SGML mechanisms (other than SGML processing instructions as used by PHP or magic SGML comments as used by SSI) such as entity reference expansion that come with full type checking and context-dependent validity assessment for filtering all kind of injections (script elements, event handler attributes, image or link href injections or whatever). But you should at least use content-security-policy headers to block inline script.
- tolmasky 4y agoYou may not even need HTML. HTML is subject to different renderings on different browsers, confusing features that may not be supported on different browses, and may tempt you to use JavaScript (which can throw "errors" if written incorrectly). If you stick to text files, you'll never have to go to caniuse.com ever. Need styles? Just make a PDF and throw that online. During the "XML HTML" phase the web went through, I never had to worry about validating my PDFs through an XML validator. Then when everyone decided using "<b>" and "<font>" tags was bad and insisting we switch to using "font-weight" CSS in a completely unrelated part of the file, guess what I had to do? Nothing! My PDF keeps rendering exactly the same way through every silly "trend" and "update" on the web, and never misses a beat on Lighthouse in Chrome. Now if I could just convince all the browsers to implement .docx renderers out of the box, I'd really be set.
- kevincox 4y agoGood luck having your site be easy to read on both mobile and desktop with either of these approaches. text/plain may work if you use soft wrapping, but even then most desktop will need to resize their browser window to make it narrow enough to read comfortably.
- tolmasky 4y agoI love that you went with easiness to read and not "wait, how does anyone navigate on your site without links in plain text files?"
- kevincox 4y agoIf I can't read your site non-clickable links is not going to be an issue as I will never get that far!
- nonethewiser 4y agoBut the claim was it wouldn’t be easy on mobile. So it’s fine desktop and not necessarily unreadable on mobile.
- kevincox 4y ago> Originally this website's font-family simply requested monospace. This approach resulted in varying reading experience depending on the OS. Windows browsers got Consolas, Linux users got DejaVu Sans Mono, and macOS people got Courier. I find it so sad that our browsers have such bad default fonts that all websites feel the need to override them to get an acceptable look. It would be great if browsers had decent defaults for both the overall default as well as serf, sans-serif and monospace so that most websites who aren't worried about font branding can just stick with the default and users can get a good fond, or even their preferred font if they bothered to customize it.
- qbasic_forever 4y agoIn my experience the default fonts on Apple devices are far and away the best fonts, period. They're better than almost every custom font, especially for readability.
- kevincox 4y agoI don't have an Apple device to test but does that mean that the author's point about the default `monospace` font "Courier New, is not legible" is out of date or just a rare opinion?
- KerrAvon 4y agoI think Courier is the only one of the fonts listed above that’s not sans-serif. The retro typewriter effect is not probably not what he wants for displaying a lot of prose in a modern context. I don’t think it’s actually illegible.
- qbasic_forever 4y agoDepends on your use, in the screenplay world Courier is mandated as the required font and anything not written in it is immediately trashed.
- myfonj 4y agoProbably very subjective. I, for one, am still using Courier New as my main monospace font, especially for code, and actually prefer having typewriter-y "serifs". No other serif-y monospace I've found fitted. I don't mind Consolas, and I like what is author using now (DejaVu Sans Mono), but their stance about varying reading experience depending on the OS makes me really, really devastated, because it just reflects a sad state of IT literacy and general adoption of basic philosophy of the web, which was built on premise that how content looks like depends both on author and user (through user agent) and fact that generic font family looks ugly is in other words defaults are bad combined with users have a bad taste and set bad default values. As was said, we are supposed to express our preferences in (through) our (user) agent's preferences. Most probably your browser will use four distinct fonts on this page, *all* of them (and more) you can define in your browser's or operating system's settings: data:text/html,<p lang="ja">iii<code>iii</code><p lang="en">iii<code>iii</code> It's sad that it is not a general knowledge.
- patrickscoleman 4y agoRecently made my first blog/website and used NextJS. It’s been fun adding style and bloat at this stage since everything I do is for learning. But I wonder how many years go by before I opt for something more basic? He talks about the evolution of his blog in this post[1] and has a link to the web archive of an early version. [1] https://fabiensanglard.net/ilike/index.html https://fabiensanglard.net/ilike/index.html
- graypegg 4y agoIt’s nice to see a “You don’t need X” article that isn’t just annoying snark. This actually answers some questions people had, which feels like a much better reason to write something like this, rather than the usual rage-bait “you don’t need JS/CSS/Framework/Technology considered harmful” medium articles.
- jerf 4y agoThere's definitely a lot of websites out there that are just super dynamic and flashy and complicated in ways they don't need to be, and I mean that to the owner's detriment, not necessarily the reader's. How many hacked Wordpress sites didn't even need to be Wordpress in the first place? If you don't have comments on your site, you probably don't really need Wordpress, and even if you do a Disqus-like solution on a static site is probably still more secure. Which, again, I mean in terms of bothering the owner, not just the users. I think articles that are just all about how you're bothering your readers can be a bit tedious, but there are ways even the owners are hurt by the belief they need every whizbang thing, because they all have maintenance costs and general quirkiness costs associated with them too.
- Aissen 4y agoAs someone who uses a static site generator, I agree with most points. The most important thing in a blog/website is the content. Start writing, and publish.
- Xeoncross 4y agoAs I sit here several minutes into a build powered by gigabytes of modules and package artifacts that is converting a collection of components into react-native, then converting the 30-page react-native mobile application to HTML using react-native-web. Now wasn't that easy?
- Octokiddie 4y ago> THE PROBLEMS A GENERATOR SOLVES One problem not listed is source code syntax highlighting. If you provide source code listings in articles, then highlighting is a big help to readers. Generating it in HTML is not fun.
- zelphirkalt 4y agoPygments does this easily, depending on the source for generating HTML pages. It has been available for a long time. For more than a decade. Some blog generators use it, not only Python blog generators.
- cxr 4y agoAlternatively, you could specify the type of the source code so the user agent could handle the syntax highlighting—just like every other source code viewer ever written aside from those with idiosyncrasies related to the fact that they that belong to a special class called "Web browsers".
- slmjkdbtl 4y agoTbh <pre> + monospace font + padding already makes a lot of code snippets readable, you can also write a 10 line js function to generate highlight for only the comments (to make them lesser shade of gray), i think that solves a lot of readability with very minimal work. Also I think there's no shame in using highlight.js
- butterfly771 4y ago> All you may need is HTML All your blogs need is HTML.
- truculent 4y agoI sympathise with the main thrust of the post but, to nitpick, this is just plain wrong: > But mostly css appeals to our vanity and ego. Design isn't just about aesthetics. Good information design, clear visual hierarchy, accessibility, etc. all help with communication. The author's effective use of spacing, bold, and code tags show us that they know this intuitively, despite what they write.
- criticalstone 4y agoI agree, I get the idea that a blog doesn't have to be fancy, but a simple css theme with nice spacing and good font size goes a long way. The examples they show makes me click away instantly, because it is so damn hard to read.
- throwntoday 4y agoIn his examples the content is so niche the reader is probably willing to put up with no design to get the information.
- j45 4y agoAlso possible the typeface is compatible with the readers and the content they regularly consume. Hell, that typeface is something anyone is subjected too if you do anything long enough. The experience of getting to imagine how much thought goes into laying out text on a typewriter is something I think should be for everyone to try at least a few times.
- qup 4y agoAs a good example, his site is very readable (because of the limited width of lines), and the sites he linked to that were largely unstyled were very useful, but not very readable. It would be worth it to me, as a user, to use a browser plugin to add a few lines of CSS to those sites before I dove in.
- NoGravitas 4y ago
- lelandfe 4y agoAs always, I think the custom font hate is overstated. > Custom fonts are a waste of bandwidth Latin subsetted fonts are generally 10-30Kb, it's really not that much. For comparison, it's unlikely you'll see blog authors get up in arms over a single PNG. > they come with one of three evils called latency, FOUT, and FOIT A few milliseconds of a different font appearing is truly not much of an evil, but can be addressed by exactly what the author links in their footnote. Humorously, the author's own site is committing some sins here: both of two font files are >140kb, they don't have gzip on, and they have the fonts marked `font-display: block`. They could cut their CLS and LCP by almost 100% by addressing this: https://i.imgur.com/MOl32iS.png https://i.imgur.com/MOl32iS.png Of course, it's already very fast, by virtue of having no other resources loading. This would be dramatically worse if there were scripts that needed to get downloaded.
- theandrewbailey 4y ago> Latin subsetted fonts are generally 10-30Kb, it's really not that much. Agreed. Make your own custom font files with only the characters you use, or are likely to use. > A few milliseconds of a different font appearing is truly not much of an evil, but can be addressed by exactly what the author links in their footnote. Browsers will wait for about 3 seconds for custom fonts to load before showing a fallback font. > both of two font files are >140kb, they don't have gzip on woff2 format fonts are already compressed, so gzip won't do much.
- lelandfe 4y ago> Browsers will wait for about 3 seconds for custom fonts to load before showing a fallback font Depends on the `font-display` value on one's `@font-face`, which is where the author's choices of "latency, FOUT, and FOIT" comes from. For instance, Google Fonts uses `swap` by default, meaning the fallback shows right away: https://web.dev/font-best-practices/#choose-an-appropriate-font-display-strategy https://web.dev/font-best-practices/#choose-an-appropriate-f... (I also think Safari's `auto` font-display never shows fallbacks, but that may have changed) But if you use `optional`, browsers will attempt to get the custom font into the first paint: https://drafts.csswg.org/css-fonts-4/#valdef-font-face-font-display-optional https://drafts.csswg.org/css-fonts-4/#valdef-font-face-font-... That's often enough. You can go another step further and preload the font, which I generally recommend. This especially helps if the font is otherwise discovered late by the browser.
- PinguTS 4y agoA blog post, which tells me that I onbly need HTML no CSS with lots of points, the blogpost itself doesn't follow? Please, eat your own dog food first.
- janjones 4y ago> A host for your index.html files Hostgator $33/year plan. > A DNS pointing to the host Hostgator for an extra $12.95/year. Why not use Netlify or GitHub pages? They can host static files for free.
- y3k 4y ago100% agree, nowadays for static websites the only thing you need to pay is your domain, if that matters to you.
- bombcar 4y agoSome people like having access to the tech stack, which a small VPS gets you.
- Joeri 4y agoYeah that paid hosting + dns services combination is complete overkill when going for static html. I host a bunch of files and static html on my domain and I’ve moved it to github pages. The dns services bundled with the domain at gandi are enough to set it up on top of the free github pages, so my hosting is effectively free, and if I wanted I could still run a site generator. Static html gets even easier by using something like simplecss, because that gives a basic design with zero effort on top of semantic html. https://simplecss.org/ https://simplecss.org/
- kstrauser 4y agoI've been a huge fan of nearlyfreespeech.net over the years. Hosting some static pages there costs me about $20/year.
- shanebellone 4y ago"If you can stick to the same style long enough and also write articles for long enough, your style sheet can become your brand. But mostly css appeals to our vanity and ego." This is blatantly incorrect or a flagrant misrepresentation. CSS can certainly improve readability without adding design. Readability is a check list which stock HTML does not address. https://practicaltypography.com/ https://practicaltypography.com/
- ravagat 4y agoThe first sentence is true. The last sentence is false.
- Kon-Peki 4y agoCurious if I am going crazy... On the main blog page, it sure looks like some of the entries are not sorted properly. For example the 10 Feb 2020 ThinkPad review. Oh wait a second. Some of the dates are DD/MM/YYYY and some are MM/DD/YYYY!
- neoberg 4y agoI was wondering the same. Yeah it seems like date formats are inconsistent. Maybe they need some other stuff than HTML.
- mtrower 4y ago> Yeah it seems like date formats are inconsistent. Maybe they need some other stuff than HTML. If you need any sort of "stack" to fix the problem of "my dates are inconsistent", you're in serious trouble, my friend.
- fabiensanglard 4y agoThank for taking the time to report the issue. Fixed.
- alduin32 4y agoAlso : there is a background color specified, but other colors are not overriden, which causes the text to appear in a color very close to the background color on my browser (the default text, and background colors are user configurable).
- JasonFruit 4y agoI appreciate the nuance of 'may' in the title. We could do with more of that.
- SushiHippie 4y agoWeird, this website is blocked by infoblox in our coorporate network, because it is flagged as "malicious".
- Hirrolot 4y ago> Inevitably, you will want to do something the framework did not forecast and will come up with convoluted ways to do it anyway. I always find static site generators a kind of leaky abstraction. They eventually try to abstract nearly the whole functionality of the web stack, and the larger the SSG the more apparent it becomes. But, for obvious reasons, they just cannot abstract all the peculiarities of the web from you. I write posts in Markdown, use Pandoc to convert `.md` to `.html` and a simple Go script in 200-300 LoC [1] for my https://hirrolot.github.io/ https://hirrolot.github.io/. [1] https://github.com/Hirrolot/hirrolot.github.io/blob/master/gen.go https://github.com/Hirrolot/hirrolot.github.io/blob/master/g...
- CharlieDigital 4y ago> A host for your index.html files Hostgator $33/year plan. - Google Cloud Firebase Hosting - free; really good tooling to deploy, automatic CDN - AWS S3 + CloudFront - a bit more setup, but more or less free - Azure Static Web Apps - free No need to have any hosting plan. Firebase Hosting in particular is really easy to get started and connect a domain to it. The Firebase CLI tooling makes it dead simple to deploy updates as well.
- crabbone 4y agoIf you are OK with just having an IPv6 IP, you can live in a country like the Netherlands and simply use your home connection to serve your Web page. Almost like it was intended by forefathers...
- bandie91 4y agodo they get DNS names as well?
- crabbone 4y agoIf only... But, really, in my dream world, ISPs would also act as registrars for their clients, so, once you pay them you get some automatic domain name, or maybe can pay a bit extra for a permanent one that you can take to the next ISP you sing with.
- cannolicannon 4y ago> "This website used to be hosted by asmallorange. When I became dissatisfied, all I had to do was to open an account on hostgator, upload my html files, and change the DNS entry" At the risk of being pendantic, asmallorange and hostgator are owned by the same entity[0]. That said, I like the premise of just writing and producing content and not necessarily worrying about setting up tooling. I think devs, and "geeks" in general, tend to enjoy tinkering with tooling, but it can be daunting for the less tech savvy. I suppose that's why things like Wordpress.com exist. [0]: https://en.wikipedia.org/wiki/Endurance_International_Group https://en.wikipedia.org/wiki/Endurance_International_Group
- shanebellone 4y agoI self-host a minimal CMS that checks the post folder for an HTML file. I prefer the flexibility of laying each page out for the content it contains. The more I learn, the more features look like training wheels and training wheels like restraints.
- malfist 4y agoA small orange sure has changed. It used to be dirt cheap crappy shared hosting. Now it's expensive compared to just getting a full VPS nearly anywhere else. Their VPS offering is $55/month and is comparable to digital ocean's $18/month.
- sublinear 4y agoUnrelated, but this blog is difficult to read for a few reasons: bold black text highlighted with a gray background is too intense, line height is too small if they insist on using the highlighting, fully justified text for no reason. Also, the navbar at the top of the page might as well be invisible.
- ARandomerDude 4y ago> WHY YOU MAY NOT NEED CSS > The fluff does not really matter much. > WHY YOU MAY NOT NEED CUSTOM FONTS > Custom fonts are a waste of bandwidth and a visual annoyance Right-click -> View Page Source. Top of the page is a stylesheet that loads 2 fonts. Hard to take this article seriously.
- mikechalmers 4y agoTo be fair, the author uses the qualifier "may" and explains the desire for monospace and consistency. It's not like it's clickbait, the author makes a valid argument. Perhaps disregard sub-headings if it results in overlooking the nuance of the article's overall suggestions.
- LordDragonfang 4y agoExcept monospace fonts shouldn't be used for prose, so the author is actively making the reading experience worse for... aesthetics and vanity reasons? It's hard to respect the advice of a designer whose deviations from their own rules make the design worse. Almost any web-safe font[1] would have been a better choice. [1]https://www.awayback.com/index.php/2010/02/03/revised-font-stack/ https://www.awayback.com/index.php/2010/02/03/revised-font-s...
- mikechalmers 4y agoWho says they shouldn't be used for prose? Screenplays is one example off the top of my head that is ubiquitously monospace.
- LordDragonfang 4y agoMore evidence to my point, actually, since screenplays aren't prose.
- deleted 4y ago[deleted]
- steno132 4y agoCompare these two websites: http://www.columbia.edu/~fdc/sample.html http://www.columbia.edu/~fdc/sample.html https://www.columbia.edu https://www.columbia.edu Which one is: * Easier to navigate? * Nicer to to look at? We don't live in a HTML only world because no one wants to live in a HTML only world. Some techies might but 99% of ordinary people do not. No one wants to look at black and white text all day, with every website looking exactly the same. If this is what people wanted, then you'd see a lot more of these plain HTML websites. But you don't.
- mtrower 4y ago> * Easier to navigate? Resoundingly, the first. The second one is full of huge tiles that take up so much screen real estate, it's hard for me to scan over what is available. Crammed at the bottom are a ton of links, in no particular organization that was immediately apparent. The entire site is plastered with huge images everywhere, that don't really add to the content and just distract from whatever it was I was theoretically there for, and really don't help me understand the site at all. Also, the zoom effect on tiles keeps grabbing my attention when I was really just trying to move my mouse across them to get to something else that I'm now distracted from. > * Nicer to to look at? Depends on what you mean I guess; if you came to soak up pictures of smiling faces, I guess the second. But personally, I don't dislike the first. > We don't live in a HTML only world because no one wants to live in a HTML only world. Some techies might but 99% of ordinary people do not. I'm afraid this is a really awkward statement. There's no way to argue against it or really say anything to the contrary. You've framed it such that anyone who disagrees with you is "a techie" who in your definition does not represent any norm.
- mapierce2 4y agoCSS could also solve this website's problem of a visitor reading the page title as "FABIEN SANGLARD'S WEBSITE ABOUT EMAIL RSS DONATE" … I thought it was a website about email and RSS and donations for a second.
- mapierce2 4y agoThis is another post illuminating the new minimalist trend in website design. The old minimalism was about "elegance", but this new trend is more about utility: we don't need CSS, just content, so why bother! I don't like this utilitarian take. It's fun to design a website.
- nonethewiser 4y agoPretty sure it only comes from engineers. Not sure it’s a new trend. I appreciate it personally. I think most styling is about UX and not communicating information (although it can improve that). But I think it’s at least jaded and probably even a terrible idea to suggest websites should generally be implemented this way.
- manuelmoreale 4y agoI genuinely believe a site can be extremely minimal without sacrificing the visual component. But I also believe some people are pushing the visual part way too far to the point where sites are genuinely hard and frustrating to use.
- mapierce2 4y agoI agree, it's a response to websites being over-designed to the point of being less usable/accessible, but this feels like a dramatic over-correction.
- manuelmoreale 4y agoIt probably is. The hope is that after a swing in each direction we can land in some sort of middle ground.
- smm11 4y agoContent is King
- mmsimanga 4y agoI am a budding woodworker. Not very good at it. Spent too much money on tools I have never used. My most used creation is a tablet stand which is basically two pieces of wood with a hinge joining them. I wish someone had given me similar sort of advice as the OP about tools when starting out. You don't need as many as you think especially as an amateur with limited space. Feels like web development is the same. I get that big companies have resources and people to maintain the fancy CMSs and SSGs but someone like me who writes one post every two years perhaps plain old HTML is best.
- mtrower 4y agoYes, unfortunately it's easy to get caught up in your tools even for simple work. Go on YouTube and watch woodworking videos, you'll see shops full of 5 figures worth of tools, and probably get the idea that you need the same. And every damn tutorial and beginner blog post on web programming shows you how to set things up with this stack, or that stack, so many different stacks but always some stack. And so people feel that they must need a stack...
- TheRealPomax 4y agoIt sounds like someone forgot that CSS is not some independent technology from HTML, a webpage is "HTML+CSS", it's one thing. Sure, browsers injects a shitty default style if you just need to put some plain text data out there, but HTML just semantically marks up your data, CSS is what makes it easy to read and understand. If you proclaim that CSS is "for vanity", your stables must have an awfully big ladder for getting on your horse. Shall we take it one step further? Why even bother with HTML, semantic markup is just as much vanity as CSS: just put .txt files on the web. People can trivially copy-and-paste links to other files anyway, they copy-and-paste text all the time. Adding <a> elements is basically just browser candy. As long as the information's high quality, people will want to read it, right?
- H4ZB7 4y agonope, it's definitely just for vanity. it will be hard to explain that on a forum dedicated to people whose work revolves around upholding this myth, though. html not being readable without css is a bug or bad positioning. i would never design a document format that requires something as complex as css to be readable. anyway i find sites that use just plain default html readable. one big mistake people make is to let their browser take up a full widescreen monitor on such pages. the fact that the browser tries to be the OS discourages them from resizing it (windows+left on windows or gnome or the equivalent on windows is enough). its mostly the tables (iirc) that look like crap, even though they didn't have to
- fleddr 4y agoAh yes, the myth of rejecting nihilism. Just like my last restaurant visit where I ordered stale bread and water. Enough for survival, the rest is pure vanity.
- H4ZB7 4y agothat analogy is literally 100% invalid and you're a moron up his own ass for even suggesting it.
- TheRealPomax 4y ago
- crabbone 4y agoSome years ago I was interviewing for head of automation position, and in the process was asked how'd I go about making sure a Web admin interface (to a product that by and large doesn't need a Web interface, think, in the same category as Kubernetes) is well-tested. To which I responded that I'd not use any JavaScript. Ideally, XML with stylesheets. Very light-weight, renders extremely fast, and is extremely friendly to automation tools (doesn't even require a browser for most tests). For the kind of product this was intended for, and I still believe it to this day, it would've been perfect: nobody needs any CSS animations there or any kind of interaction beyond filling forms and submitting them. One of the interviewers was the head of the front-end department. He hadn't for a moment considered this to not be a joke, but pretended to answer this seriously by explaining that if they don't put a fashionable JavaScript framework into job description, they will not be able to hire front-end programmers. In reality, there are plenty of things on the Web that could, in principle, be just HTML or, as in my example, XML + stylesheet, but won't be for no reason other than to feed the echochamber of the job market. Nevermind that from the business side this makes user experience worse, costs more to host and to maintain, and yet...
- webdood90 4y agoyou can't get anything done if nobody wants to do the work
- ozim 4y agoI see you got downvoted but people don’t get that choice of technology based on who you can hire is a valid point. I remember a guy who wanted to make company documentation in LaTeX. Well yes it is great tool and we could put it in a git repo and render nice documents for the customers easily. Downside was 15-20 sales people who were not thrilled to use it and spend time learning how to use it.
- PaulHoule 4y agoI think a lot of devs are frustrated with the state of modern Javascript. As I speak I am waiting for "mvn install" to run for a system that has a Java back end and a Javascript front end which compiles both. I think the Java part would finish in about 20 seconds, the Javascript bit is more like 250 seconds. There would be 250 seconds of working instead of posting to HN if the system was "100% pure Java". (To be fair I am mostly depending on an incremental build and I'd say Java turns around in 2s, Javascript in about 20s. One of those breaks my chain of thought, the other doesn't.)
- nzealand 4y agoDoes anybody know of a buy once/own for life editor that has Dreamweaver's concept of templates? Dreamweaver lets you pull in header/ footer HTML from a template, then see the complete HTML in the editor.
- charcircuit 4y ago>Avoid external dependencies. Stuff like analytic engines can 404, 503, or become sluggish. Your pages response shouldn't rely on this request succeeding.
- tannhaeuser 4y agoYeah, the question isn't whether styling per se is needed, but whether CSS as a language doubling HTML's old presentational attributes, yet in a thousand ad-hoc, unchecked syntaxes and layout models ever made sense at all. The author criticizes generators, but apart from those terrible mysql CMSs there's also SGML, on which HTML (and XML) is based, lending HTML authoring affordances such as text macros, shared fragments, templating, custom shortform syntax a la markdown, stylesheets, pipelines, outline generators, link decorators, with full type checking etc. etc. HTML feels incomplete without. The Thief reference, though, I don't get - is the point that mission briefs and picked up letters are using Times New Roman? It's a terrible screen font at small sizes, and also HN could do with a modest style upgrade to improve touchable areas/distances and support for prefers-color-scheme if only to hide you're browsing the orange site ;)
- college_physics 4y ago> All you may need is HTML The opposite of a great truth is also a great truth: You may need more than HTML. The problem is (and I believe this is what the author tries to draw attention to) that people are fighting all sorts of half-backed stacks without necessarily having a fully justified reason for every incremental complication invovled. The web is obviously more than a "clean page of text" metaphor. How much more we don't even know yet. What would make this journey of discovery shorter is the simple golden rule that "computational complexity should be commensurate with the result"
- DeathArrow 4y agoI thought it is illegal to make websites without React on fronted and Node on backend.
- skrowl 4y ago[dead]
- savolai 4y agoThe bare html files this links to are very unergonomic for human eye motorics, due to long line length (characters per line). They are also basically illegible on mobile. Which begs the question: why is the mobile default stylesheet set up so that text is unreadable without css?
- PaulHoule 4y agoMy feelings are mixed about CSS. In many cases, a small amount of CSS can give you a lot of control over formatting in a way that is easy to maintain. Over the long term CSS has gotten much better in every respect but one. That one respect is insofar as there is a "CSS specification" it is this https://www.w3.org/TR/css-2022/ https://www.w3.org/TR/css-2022/ which itself refers to roughly 50 documents which furthermore has the mind-melting structure of "Document 17 replaces clauses 13.5 and 15.11.9 in Document 3". On top of that you need to refer to https://caniuse.com/ https://caniuse.com/ for browser variations and various cheat sheets https://css-tricks.com/snippets/css/complete-guide-grid/ https://css-tricks.com/snippets/css/complete-guide-grid/ which I'd usually advise against (you can consistently get the right answers if you look things up in the docs.) Maintaining other people's CSS is also a bear and even maintaining my own is pretty bad for side projects that I work on sporadically for a few years (I wind up introducing a class to solve this problem and another to solve that problem and don't have much of a master plan.) Then there are the various CSS frameworks which vary from useful to insane (the original Bootstrap which was about as easy to use as learning to paint with oils) and practices like BEM, which is the webs' answer to RAAI in C.
- Animats 4y agoAll you need is HTML if you have a tool which edits it properly. I'm still using Dreamweaver 8 for some old sites. I have to run it under Wine emulation now, but it still works. It still does a good job of layout. Is there a more modern round-trip HTML/CSS tool?
- mtrower 4y agoMostly, the idea is that you write it yourself. I suppose there are things such as Markdown converters if you require some level of abstraction. I thought Dreamweaver was great when I first encountered it. That lasted until I happened to look under the hood at the HTML it was generating. What a horrifying, bloated mess it made of everything... AFAIK there is no free lunch here; you learn to write it yourself, or you suffer it to be written poorly for you.
- DesiLurker 4y agoI was thinking about this the other day in reference to how slow reddit is compared to HN even though they are essentially achieving the same function. I get that there are images, video & volume of posts/users served difference but I'd bet if they made just a pain text version of it it would be order of magnitude faster and browsable.
- hk__2 4y ago> This approach resulted in varying reading experience depending on the OS. Windows browsers got Consolas, Linux users got DejaVu Sans Mono, and macOS people got Courier. Using a custom DejaVU makes the reading experience consistent. I don’t get this argument. As a reader, I’m used to the monospace font of my OS because it’s the one I see everywhere. I don’t care at all about the fonts users of other OSes see. This custom font makes _your_ experience consistent, not the readers’.
- newhotelowner 4y agoI have been writing some puppeteer/node js scripts to download invoices/statements and to scrap some data from different vendors/service providers. (ATT, Spectrum, Gas, electric, etc). Pretty much all the sites are now a days single page or with tons of JavaScript with a lot of xhr requests. Those xhr requests are huge too. Loading screens everywhere. Some of the loading screens are 5-7 seconds long. And I have no luck with banks sites. They put a lot of efforts to block access.
- hathawsh 4y agoHave you heard about the CFPB's move to require open banking? It seems like a step in the right direction. https://www.consumerfinance.gov/about-us/newsroom/cfpb-kicks-off-personal-financial-data-rights-rulemaking/ https://www.consumerfinance.gov/about-us/newsroom/cfpb-kicks... There are complications, naturally: https://news.bloomberglaw.com/banking-law/small-banks-urge-cfpb-to-phase-in-open-banking-tech-requirements https://news.bloomberglaw.com/banking-law/small-banks-urge-c...
- jksmith 4y agoAccording to the following website, the value of the product you're selling is inversely proportional to the effort (including website sugar) you need to put into selling it. https://www.berkshirehathaway.com/ https://www.berkshirehathaway.com/
- InnerGargoyle 4y agoman thats a nice observation..
- stevenjgarner 4y ago"Avoid anything requiring a database" ???
- homarp 4y agosee also https://news.ycombinator.com/item?id=34994614 https://news.ycombinator.com/item?id=34994614 (and maybe https://news.ycombinator.com/item?id=34996727 https://news.ycombinator.com/item?id=34996727 ?)
- roblh 4y agoHere's my weird opinion on html/css/general styling of websites: The biggest problem with CSS is it's one language that's trying to do two things. I think that layout (grid, flex, anything that changes the shape of the page) and style (font, color, text sizes, etc...) are two separate things, and CSS makes it incredibly tempting to try to do both of those at the same time, which inevitably causes trouble. Working on a website is easier when you can break those two things out into separate concepts. People love to praise/hate tailwind, but I think the best use for it is specifically for modifying layout. Layout changes deserve to be built right into the HTML itself because that's where you're looking when you need to reason about it, whereas style is more general and should be broken out into actual CSS rules to keep it more consistent across a site. Layout is much more directly tied to context than style is, at least as soon as you get into anything non-trivial. There really needs to be a better way to segment these two concepts. At least, that's my hot take as a semi-passable css user.
- hanniabu 4y agoI think you're right and I'd love for the html spec to expand to enable control the layout instead of css
- dgb23 4y agoI like this take! It confirms my issue with using tailwind. I like it! But as you mentioned “style” typically has a global, systematic, component based notion, and not a hierarchical one. A perfect example is typography AKA font style and color. Yes, it has a structural/hierarchical notion, but only on an abstract component level. Typography almost _always_ comes in aggregates. Font size, line height and more, even margins - they are very rarely orthogonal and composable. Designers typically take great care to fine tune these things as components. Ask a designer to disentangle then into tokens and you get a very weird look! On the structural level you want meaningful component classes to refer to them and maybe one or two modifier classes, if at all. Thankfully tailwind offers @apply, so you can still leverage some definitions where it makes sense.
- abathur 4y agoIt's both HTML and CSS, though. HTML is also bleeding over the boundary between layout and document. HTML was mean to _be_ the document. CSS was meant to be a language for styling and re-styling those documents. That makes sense in the logic of decades past. You might have a bunch of documents, and go re-style them all when you move. Or a company might do this when they change their logo or get acquired. But for a long time now almost every HTML document served on the web has long been a mix of design elements and one or more things that a human would call distinct documents, and CSS has kept up with styling those. With a true "document", it's pretty sane to expect that you can readily style and re-style the same document with different stylesheets for different contexts without needing to go fiddle content. With full complex designs implemented in HTML, the HTML and CSS for at least those parts tend to be very tightly coupled and very likely to get rewritten together. The fuzzy boundary between the content and the layout are a problem for both HTML and CSS. I picked at this problem in a post this fall: https://t-ravis.com/post/doc/what_color_is_your_markup/ https://t-ravis.com/post/doc/what_color_is_your_markup/
- oldstrangers 4y agoAll you may need is boiled chicken.
- butz 4y agoI wonder how far could I get by using only HTML for an enterprise application?
- divbzero 4y agoRemember that “All you may need is HTML” is a general guideline to keep things simple—a starting point rather than a hard rule. Even OP is using a PHP generator, 113 lines of CSS, and a web font to opine about the virtues of HTML.
- Julesman 4y agoI'm all for web design brutalism. It has a place in all this mess. But when it gets preachy and over-general it often becomes condescending and dismissive of entire fields of study and practice, whole categories of use, and entire groups of users.
- deleted 4y ago[deleted]
- alphabet9000 4y agoif you like 'html looking' sites (for lack of a better description; maybe "html 1.0-ish") i set up something that automatically collects links posted to HN that capture this feel if anyone is interested https://news.coffee/pala https://news.coffee/pala
- apatheticonion 4y agoFor blog sites I tend to use a hand written site generator that converts markdown to html, typescript to js and scss to css at compile time. This allows me to ship a static html site (S3 website) where the javascript functionality is limited to basic things, like toggling dark mode. To build an "API", I crawl the files at compile time and generate json files in an /api folder, allowing me to fetch blog post metadata for searches that are processed on the client. As icing on the cake, once the user has settled in, I use a service worker to pre-download/cache the all the posts in the blog site and allow for offline viewing. I have some tricks to avoid the annoyances of stuck sw caches. Leads to a great user experience and maintainers don't need to have a backend portal - just write markdown and commit it straight to GitHub. Easy enough to teach people to use Typora and SourceTree
- jppope 4y agonice setup. I'm going to have to look into the service worker approach. typora and github are my version of what you're talking about - which I love
- kim0 4y agoSounds very nice. Is this available for others to use?
- apatheticonion 4y agoI have only just started building it out, I built the first prototype for my personal blog site. (Not a plug, it's a WIP and I have only put a few toy articles up) You can see it in action here: https://davidalsh.com/posts/the-case-for-a-sandboxed-script-tag https://davidalsh.com/posts/the-case-for-a-sandboxed-script-... I'm making a few too many requests in the first iteration, no cache control headers, asset minification, etc Since then, I have been refining it for a contract that I am working on (introducing the SW) and I am keen to release it as an open source project - including a terraform script to deploy it to S3, setup Cloudfront and all that good stuff.
- jppope 4y agofyi for a super minimal setup... typora can export to html. you can just upload the resulting files
- graycat 4y agoTwo points in support of the KISS principle for UI (user interface) programming -- keep it simple ...: (1) With defaults, 3+ billion people already understand very well. (2) For anything not a default, on the first day, the programmer understands and maybe no one else. As I understand the history of UI programming, the HTML controls were built on, borrowed from, the controls in the IBM 3270 terminals heavily used in IBM's CICS (customer information control system) and originally designed for the user interface of airline reservation computing. I don't know much about UI programming because my most important background in computing was for applied math computing for US national security where didn't use check boxes, radio buttons, single line text boxes, multi-line text boxes, links, etc. But as a user of the Internet and for the UI programming for my startup, I followed KISS, i.e., used HTML defaults.
- sylware 4y agoHTML table as layout with navigation in mind: https://webaim.org/techniques/tables/ https://webaim.org/techniques/tables/
- nine_k 4y agoI understand the drive behind this. Having written my fair share of HTML by hand, I'd say that the purpose may be better served by Markdown, or Org, or even plaintext. HTML has too much unnecessary detail if you're into low-effort content-centric stuff and cleanliness. Learning HTML is fine, but learning HTML while avoiding CSS is not very useful, except as an esoteric hobby (like 6502 assembly, but much more complex). Using handwritten HTML if you're after content creation is unnecessary legwork. OTOH holding an unorthodox view on a widespread technology, of course, improves one's chances to suddenly appear on the HN front page :)
- schemescape 4y agoYeah, Markdown does 95% of what I need, requiring roughly 10% of the keystrokes needed for raw HTML. And you can always use HTML where needed.
- mtrower 4y ago> Learning HTML is fine, but learning HTML while avoiding CSS is not very useful, except as an esoteric hobby (like 6502 assembly, but much more complex). Using handwritten HTML if you're after content creation is unnecessary legwork. Idk man. Doesn't seem at all complicated to me until you start involving CSS. Assuming you're just after basic content. Slap a <title> in <head>, a few <section>s in body, <p> your content. Maybe an <aside> for some spice! <a>, <img> and <video> might be useful if you want some hyper/multimedia. The complications arrive when you want it to look like some designed page, regardless of user preferences, window/screen size, which browser, etc. Agree though that Markdown and Org are good and useful tools.
- charles_f 4y agoYes, amen! but... Writing in HTML sucks, and it's a distraction from your writing itself. Markdown or text are better on that account. And then pushing code through FTP ain't super fun, especially given that having a pipeline that runs Jekyll or Hugo is free on github and pretty much a copy-paste. From a consumption perspective, having some form of consistency across your blog is also pretty good, even if to satisfy your ego, especially if you get it for free. I would argue that setting up a bit of infra on top of it, which will probably take the better part of an hour if it's your first time, is a very good way of reducing the friction and making sure you actually write.
- mohitgangrade 4y agoAn even better way to do this is to host your site on Cloudflare Pages. It's completely free, and can be deployed from GitHub or you can upload a ZIP of the HTML pages of your site. It's served via a CDN, so it's always really quick to load. There's literally no cost to it for static sites. You could create a git repository for your HTML site. Then, edit the HTML using VS Code. Every time you push to your repository, your site will get updated almost instantly. All you have to pay for or worry about is domain name. If you use a web host like Hostgator, your site will get banned when it gets a lot of traffic. Cloudflare has no such limits whether you get 10 visitors a day or 10k a day...
- mclightning 4y agoJust so everyone is aware, the guy is not an expert in web development. Neither is he a frontend engineer. When this hit pieces some against an entire tech-stack, always check the author's job, past expereince. Our industry has not matured enough to split into expertise areas into solid titles, and grow respect for those titles just yet. As the author's title points it out very clearly as "Software Engineer". Try getting a Job in any sizeable company by building your entire experience with HTML and tell me how it goes.
- mtrower 4y ago> When this hit pieces some against an entire tech-stack, always check the author's job, past expereince. What is this, if not appeal to authority? > Try getting a Job in any sizeable company by building your entire experience with HTML and tell me how it goes. And this seems to be, "follow the crowd".
- mclightning 4y ago>What is this, if not appeal to authority? It is extraordinary claims, require extraordinary evidence, or experience/proven competence. >And this seems to be, "follow the crowd". And this seem to be, reactionary.
- mtrower 4y ago> It is extraordinary claims, require extraordinary evidence, or experience/proven competence. But they don't. All they require is for you to evaluate the claims, on their own merits, without examining the speaker for their credentials. Evaluating a claim based on the credentials of the speaker is quite exactly an appeal to authority. > And this seem to be, reactionary. I'm not sure what you mean by this, or how to take it, so I'll try again with more words. Nobody is claiming that the best way to get a job at a large company is to build an experience base consisting solely of pure HTML websites. Nobody is even claiming that this is a good way to get a job at such, or that it will work at all. This seems rather orthogonal to the claim that, depending on what you are building and what you are trying to accomplish, "All you may need is HTML".
- oliwarner 4y agoArticles written in 2023 should not be recommending Hostgator. Cloudflare Pages, Github Pages, Gitlab Pages, Netlify, etc, etc. It's all free at this level. Vastly distributed and they can all use CI/CD to build static-site-generator configurations for you, if you want that. It's not about the money. Hostgator has been a recurrently awful host over the past 21 years, cutting people off as soon as they get popular, downtime when they overoversell their service. They're a relic, alongside Dreamhost, Bluehost, GoDaddy; the type of host we just don't need any more. The rest of the article is right: you may not need anything more than HTML+CSS, but life is a lot easier if you don't have to build it yourself. I'll take Astro + Git + Cloudflare over "gen.php" + FTP + Hostgator any day.
- Russelfuture 4y agoYes. Yes. You can use HTML and write just fine. It's a markup language, like old runoff, which could be used to generate nice, fancy prospectus documents for a major gov. agency in a far northern country I worked in, when I was a wee child. A good markup language is all you need. It makes for better writing, because the writer focuses on content, not the pretty presentation, which should be done after the content is written. I am getting my nose rubbed in this truth - about the benefits of basic minimal website design. Most websites are useless. Mine is pretty useless. I write it to have a web-presence, promote my consulting business, and because I feel a need to write (maybe that is an illness? - not sure..). I find writing forces me to think better, and the investment side of our business, requires I think well, or we die quickly. It's a harsh world now. I found this Hackernews post, by researching how to update critical browser stuff, which has been borked for us, by our trading platform provider. Updating browser on Linux - and guess what? - lose all bookmarks, all customizations, everything. Arrrrgh!!! (happens EVERY update, of course). Simple is often better. And the Web (most of it) has become crap, mostly. Or dangerous, toxic vector for economic assault. Bloody awful, nasty and sad. So it goes. I am converting our crappy website from a provider (one.com) which bought our simplesite.com website builder thing, which worked pretty good. But the site had all this fancy stuff for menus and images and videos, and a truckload of .css stuff - sure, nice and fancy. But the conversion to the One.com builder stuff, does not work, of course. We cannot update (at all) our site from the data-description that one.com has in it's website-builder software. As of the forced conversion, we were complete off the air. Borked. SO, this is stupid. Complexity and fancy design - is mostly stupid, and it also creates contrived dependency (keeps customers locked, makes them be forced to open their wallets and send you cash - good for providers, bad for customers.) I got so pissed off, I decided to do it all ourselves. We built our site at AWS as an EC2 instance. Fucking website-building software is a scam, mostly. The original poster is right. All you really need is HTML (AND some stuff to render videos and audio and maybe code to get paid for stuff, maybe...). Most of the .css stuff is fluff. And people are getting REAL tired of being dusted with fluff. OP is right. Our old website is https://www.gemesyscanada.com https://www.gemesyscanada.com It was a mess - a long bunch of stuff, posted over the years, research-logs, blogs, notes, etc. But now that it is a One.com, we cannot update it. The websitebuilder software gets to 90%, and then hangs - and we do not even get any error messages telling us what the problem is. Arrrgh. We are building a simpler version - using AWS-EC2 - we have one free EC2 instance which I am experimenting with: http://35.182.107.190 http://35.182.107.190 and that is it. We have not even got a domain set up yet - it's all hacking & testing for now. But it looks like we can go this route. The whole thing is an exercise in vanity and ego. It really is, honestly. But why not? It is what our tiny little business does, and it is what I am. I've been doing AI since I went to Dr. Geoff Hinton's classes, and got a copy of Xerion working on a P/C running Linux - back in the 1990's. One must not hide one's light under a bushel, right? So, we need a website. And a bad one, that looks goofy, and is honest, is better than a really fancy one, full of obfuscation, deception, dis-information and old-fashioned lies. (Kinda like - oh - just about most things now?) All you may need is HTML. Yup. Mostly true. - M. Langdon, Director, Owner, Floor-cleaner, Barn-builder, Portfolio Manager GEMESYS Ltd.