Composer adds even more tooling around the fundamental problem that PHP does not have modules.
And it does not do away with the problem that you have to preemptively wrap everything in classes and add a LongUniqueStringToHopefullyAvoidCollisions via the "namespace" and "use" keywords to all your classes to hopefully avoid name clashes in the future.
PHP not having modules is a non-issue. Proof: It's done fine for several decades without it. If you're running into namespace collisions in your codebase frequently enough to demand a language change to help get your shit together I don't even know what to tell you.
It is not a non-issue. You can run into naming collisions by just using two different composer dependencies where each dependency depends on the same library but different major versions.
That's just not true. It's not JS. Composer will install exactly one version of every package. If your dependencies have incompatible dependencies themselves, then Composer will refuse to install the package. And this fact has led to PHP packages actually being maintained and kept compatible with each other. Of course, sometimes you run into dependency issues, but it's worth it because you'll always have quite clean, flat and small vendor directory. Compared to the node_modules horror it's great for maintenance.
This can definitely be an issue and it was when Guzzle released a new major version every month.
Also when working with projects that are 10+ years and lines of codes a million you will run into this. Sure you can always fork and move the library to another namespace, but that is extra work.
Modules are vastly superior to namespaces, with modules it is the caller that decides the symbol, with namespaces it is the callee.
Another problem with namespaces in PHP is that you can’t put anything into it, like a variable, it is not like namespace in C++. Namespace in PHP is just name added to the class or function name, kind of fake. Don’t get me wrong, it was a pragmatic solution to a real problem and it worked for what it tried to solve, make it easier to share code.
Modules could be elegantly solved in PHP by reusing the internal concept for a class (how it is with enums and interfaces)
Modules would also make it easier to unit test code, because you will not need to worry about a symbol already have been loaded and can’t get unloaded.
With that said I don’t think it the most important feature to focus on, there are others that give more bang for the buck, like string templating and operator overloading.
Yes, because functions can’t be autoloaded and you can’t put variables and constants inside a namespace. But it isn’t hilarious, it is because of legacy.
Now there are proposals to fix function autoloading but it won’t fix variables and constants.
Thats why PHP code looks like Java. EVERYTHING is wrapped in a class, because of the shitty packaging PHP currently has. Namespaces are weak and can be inconsistent. Also the stdlib has no namespaces? Wtf?
You're pointing a finger at the wrong villain. Laravel's your culprit not core PHP. I have no idea what mind-altering substances that crowd got into when they decided to objectify everything all the time, but it isn't a hallmark of either the language or good coding practices and the result is so hard to debug it requires it's own toolchain. Fun Fact: Drupal's core team threw a big chunk of it's community developers overboard switching to this bullshit. Net result: they bricked the project's credibility listening to the wrong people and lost a bunch of market share and mindspace because of it. A shame too, the project could have credibly challenged Wordpress if they'd gone another way.
We dont need yet another adhoc dependency. All the PSRs out there are just a big ball of mud. We have incrementing numbers each years, and today there is something like PSR-12. Its a joke.
I love projects like this, but I really wish instead of converting text resources to web sites that these projects would produce epub outputs. It's great for distribution, offline reading, and scaling to different display sizes, aspect ratios, and resolutions.
I wonder if there will be a time when textbooks will be created in digital-first format, instead of being mere replicas of what print books are. It doesn’t have to be static text and images on A4 pages.
I'm familiar with those tools, but they don't preserve the formatting of the source document (when PDF) and certain types of embedded resources don't transfer properly.
Some PDF documents don't contain the source text as digitized text, either. It's just a bundle of scanned images.
Only if they exist as poor conversions. Properly formatted epub documents are worth their weight in effort.
Epub documents _are_ HTML files in a zip archive - I'd argue that if a web site is a proper presentation of the source material, an epub is even better.
Additionally, PDF documents _are_ worse for any kind of document technical or otherwise. PDF documents are primarily Postscript instructions without any relation or hierarchy to the included elements. Epub documents/HTML provide semantic relationships and hints to the content.
I think that what previous poster is pointing is that technical documents as epub are often difficult where they're no textual contents. Images may be the easiest case. Things are a bit more clunky when code source are involved and it's weird with complex formulas.
A competent stylesheet will sidestep all those issues. Admittedly, I do wish MathML were in place to be used online and in epub documents as that would make the problem much more easily solvable.
Epub3 (not previous versions) does support MathML. The main concern is that most e-readers are not as capable as main browsers we use. Very few e-readers have good support of Epub3 features, and maths rendering is limited when available.
For codes, `pre` tag should be enough, stylesheet just adding some enlightenment. What I'm pointing is that many source code are more than 80 columns wide and that often make you scroll like with PDF. Physical readers are best for content that use aspect-ratio of pocket paper books and as far I can remember coding paper books are more (at least twice) wider and may even suffer that problem (they're often hacks I dislike to split lines.)
To short, Epub per se is not the limiting factor. Vendors must update their hard and soft (even then, things will improve only when everybody has upgraded.) Authors also must take more care to technical contents for that media (some of them convert formulas and codes to image, oooch…)
EPUB works fine for documents that mostly consist of easily reflowable text. For documents with lots of equations, diagrams, tables/charts, footnotes, etc. I would much rather have a PDF.
The reef is being dominated by a few species without lasting power to stay through turbulent ocean activity based on the report. This may not work out of the long term, and it's too soon to tell.
This has nothing to do with what's fair - you can't "both sides" something we have direct and increasing evidence of.
This isn't caused by some Jewish space lasers, experimental military weaponry, or whatever additional conspiracy you're implying.
They are not really identical and forked from the same base project, they may have similar features.
Acode is foss,built using cordova and JS tech,has its own plugin system.
Squircle is also foss and built using kotlin.
Vscode for android is just code server inside web view wrapper or browser and embedded git.
I can't speak for the other ones as they are proprietary.
That was brought up in a lot of discussions as something the users would be willing to do, but leadership so far has not been interested in engaging with those suggestions.
The lack of regulated net neutrality is still something to be concerned about if you care about accessing sites and services at will without additional costs, limitations, or outright blocks.
The only reason a large effect hasn't been noticed is the protections offered at some state levels that enforce neutrality in practice nationwide (assuming you're in the United States).
Unfortunately microsoft gated ability to run linux GUI apps to windows 11. While this feature was under insider program it worked on windows 10 but for release they decided to only keep it available in win11.
That's an indicator that your root level certs are not being maintained or updated. That risk is worse than just a few certificate authorities not being recognized.