Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Hard disagree.

XML is great for systems to read and write, but utterly abhorrent for humans. It's not just having to close tags. It's content vs attribute confusion, namespacing noise (which are also muddled with attributes), and there's a squint factor incurred by the density of information.



Namespacing is the opposite of noise: it lets different domains coexist with no possible confusion about which is which.

But experience has taught me that trying to explain why XML is great and simple to read and write for humans, to someone who thinks differently, is useless. And so, I won't.

Yet, please accept that some people, like me, really liked it and didn't mind the little quirks in light of all it offered.


It makes sense that explaining why xml is great doesn’t work. Maybe you can convince someone who’s never worked with xml. But if someone has used xml and thinks it’s a bad format based on those experiences, you’ll need to bring _really_ good arguments to let them think it’s a good format anyway.

Just ask yourself: could a comment here convince you that xml is a bad format? If not, why would the opposite work?


Well yes, if it described a format as pleasant for humans as YAML, while not being ambigious and error-prone.


I disliked it intensely at first, but over time .. I now see the merit in it. I like XML, especially compared to everything else (that came after). It was possible to clearly define things.


On the same system? I can see that. One thing I've lamented about XML for years is that it's a pain when moving to different systems that have their own namespaces/DTDs.


On the other hand XML document with good schema is pleasure to write in any decent IDE.

It just autocompletes itself. I know JSON schema exist, but it never managed to just work that well.


i think that propper schema and autocompleate would save the day. even i would say make things easier. talking about XML


I’ve been using this for (schema + autocomplete) for at least 18(!) years.

Moreover I even got comments on xml attributes and elements, warnings if required element is missing or required count is not met.

You even got visual hierarchical collapsable UI for viewing/editing that XSD schema.

I repeat: 18 years of autocomplete, comments on hover, and validation for typos/count/order for XML in Visual Studio.


20-something years of web/app.config is the primary reason why I hate XML. Very, very closely followed by Java ("a DSL for turning XML into stacktraces") and its over complicated ecosystem of xml configurations.


I have worked with Java for over two decades, and your experience does not match mine.

At $work there are only two XML files in each project:

- logback.xml: configuring logging which is usually only done once or twice and is the same for each project.

- pom.xml: Maven config which is mostly autogenerated by IntelliJ when creating a new project. I only add a few lines for new dependencies.

In rare cases I may use some plugins to do specific build operations, but the actual XML is simple. Most of the time is spent on understanding the plugin itself, and not "fighting" XML. Moving this to YAML has no effect on my productivity

All other configuration is either done using YAML, properties or configuration in code (Spring Boot).

I see Spring still has options to use XML configurations, but I don't see any reasons why anyone would do that in 2023. The "new" standard in Spring is configuration by code, which I have done for the last 8 years.

The ecosystem for Java today can not be compared to what it was 10 years ago. If editing XML configurations is still a problem at your workplace, find a new job :-) Either you work with a legacy system that nobody wants to update to the new standards, or you have architects who are stuck.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: