Installa Steam
Accedi
|
Lingua
简体中文 (cinese semplificato)
繁體中文 (cinese tradizionale)
日本語 (giapponese)
한국어 (coreano)
ไทย (tailandese)
Български (bulgaro)
Čeština (ceco)
Dansk (danese)
Deutsch (tedesco)
English (inglese)
Español - España (spagnolo - Spagna)
Español - Latinoamérica (spagnolo dell'America Latina)
Ελληνικά (greco)
Français (francese)
Indonesiano
Magyar (ungherese)
Nederlands (olandese)
Norsk (norvegese)
Polski (polacco)
Português (portoghese - Portogallo)
Português - Brasil (portoghese brasiliano)
Română (rumeno)
Русский (russo)
Suomi (finlandese)
Svenska (svedese)
Türkçe (turco)
Tiếng Việt (vietnamita)
Українська (ucraino)
Segnala un problema nella traduzione
Well, it has been said that "You get what you paid for."
Unfortunately, for-purchase productivity software, these days, is nearly always a chain meant to capture wallets forever... (SAAS) Pricing with these products usually puts them outside of anything short of "Professional Use Only" in my limited experience. (3d/art/etc) And, with "home use" sorts of products, it's little better. There, the only interest also seems to be of the "pay us for life" model.
I like the Blender example, here. It's a piece of very powerful software that was/is designed by committee. It was once so horribly designed, despite it's potential power, that even enthusiastic artists could not bear to use it. It was so unapproachable it became a meme, itself, about bad open-source projects. The various contributors, obviously skilled in their own right, were too busily humping and pumping out code while proudly smelling their own farts to examine the abomination they were creating.
Once they finally realized the oppressive, insulting, Frankenstein behemoth they had created, they went through a series of complete redesigns for the UI. It is now much more approachable and the UI isn't quite the completely unintuitive mess it used to be. (It is still sort of bad, in that respect, but I don't want to insult it lest the I attract the attention of BlenderBroForce, who will rush to tell me how dumb I am for criticizing it.)
IMO: What makes open-source productivity software "better" is more users giving feedback and more qualified professionals offering professional quality work to make it better. So, if you encounter a problem, report it and provide some ideas for work-arounds or actual code. Keep doing that and encourage others to do the same.
But if it's anything you have to include and or link against, it's literally unusable because of dependencies or crappy licensing.
These were some of the hard choices made by maintainers who are skilled enough to make these choices.
So I gave up. Now I'm parsing manually.
Seems you are not the only one with that opinion:
https://groups.google.com/g/openworm-discuss/c/Ab0MrGRCwoY
Not legal advice!!
I think it depends on whether you are integrating FOSS code directly into your work or have it as a FOSS blob, far removed enough from its dependencies.
But if you are doing this for a living, it could be a good idea to get a professional opinion about it. Or maybe just ask the creators, if they see your use as a derivative work. GPL isn't the law after all, but a contract between you and the creator of the original software.
To your point, though, zlib is one of the good OSS licenses. MIT is another one. ACTUAL "free as in freedom" licenses that don't restrict the people who want to use it. Way better than anything GNU has ever crapped out. Their garbage says it's permissive but it's anything but.
I'm actually using some works licensed with each of those.
Funny enough, I've had issues with XML parsing since forever, due to not wanting too many obscure 3rd-party libraries unless they are necessary. I have used libxml on occasion, though.
In the recent past, I've simply moved to JSON instead, which lets me use boost::json.
I've tried to use boost property trees for XML, but that's a pretty horrible library that never really worked for anything I've tried using it for, including its stated purpose... hence the move to JSON when they added the library.
Technically, I'd still prefer XML -- but, boost::json is so damn nice to use, and there's no boost::xml... sometimes, it's just better to use the tools that you have, if you have a choice :-)
Incidentally, I now have a simple HTML parser, that can parse most Steam pages I'm interested in (and the one that it fails on might be a bug, but I haven't looked into it yet since it's also the one page where a simple regex can do the job). It also fails on a lot of pages that I'm not interested in, because they often have messy tag structures and I didn't want to bother with that kind of stuff since Steam doesn't need it...
Next time XML comes up, I might just ditch libxml and roll my own parser. Which is almost the same as the HTML parser, just a bit simpler.
Field1: 7 ;This is field 1
Field2: True
Field3: Hello ;Just in case
It's easy AF to parse.
I really don't even mind parsing RIFF data by hand, honestly. It's a little more legwork but it's not really that bad. It's more intimidating since it's not human readable than actually complicated.
But for what I'm doing right now, parsing XML is unavoidable. I'm trying to alter some vector graphics and save a copy. SVGs, which of course the format is based on XML.
I'm actually flex-bisoning an XML parser. I wouldn't mind releasing it open source just so the world will have a decent damn open source parser, but I'd have to do more testing and debugging that way, when I really just need it to work for my particular use case.
Who knows, maybe when I actually finish my game and have the time to come back around and polish them, I might have a lot of tools ready to release to public domain. I've also put together a command line spell checker that will return an error code on spelling errors, which seems like a no brainer feature but I just couldn't find an existing spell checker that does it. It's surprisingly slow though, so I'd need to work on that too.