5 ms·
Apart from all the other considerations and problems with various types of package management, consider this: "Update January 6th, 2021 A reader alerted me to
by roel_v 6y ago
Apart from all the other considerations and problems with various types of package management, consider this:
"Update January 6th, 2021 A reader alerted me to a bug with the current groundhog (version 1.1.0) where you cannot set the groundhog library to be a folder containing spaces in the name."
So we are talking about software here that somehow made it to version 1.1 *without anyone ever using a directory with spaces in it with it". This can be interpreted in two ways: either very few people have spaces in their paths, or very few people have actually ever even tried (not even really used, I'm only talking about the most basic trial use) this package. I'm not a betting man, but if I were, I know where I'd put my money...
- deleted 6y ago[deleted]
- bayindirh 6y agoAs I can see from the researchers in our cluster and my own academic research, most people still avoid spaces in paths and files like the plague. YMMV of course.
- roel_v 6y agoOf course, and so do I. But nobody ever even encountering the situation and/or bothering to report it, that's a whole different matter.
- bayindirh 6y agoMy guess is people are encountering the situation, working around it and calling a day. Maybe a little note here and there but, I don't think someone would report it due to a couple of reasons. First of all, I don't think people report this type of stuff because they don't know how to report it, and secondly think it doesn't need to support this use case anyway since space is a latecomer to naming and path game.
- dstick 6y agoIf my own hobby python projects are anything to go by, there aren’t even folders ;-) I have a friend who taught herself R for her research and it was basically one big procedural codebase.
- YeGoblynQueenne 6y agoBest way to know where every bit of code is: put it all in one source file. Sarcasm aside, I've worked with codebases like that- thousand-line java methods and classes and the like. The problem is that there's nothing that really forces modularity on a codebase. There isn't even any consensus, objective way to modularise code. Otherwise, a machine could do it and we wouldn't have this kind of problem. But, a machine cannot, and so we do.
- fjcp 6y agoAs a Linux user I can relate to that. I always avoid spaces in folders and filenames as they make it more annoying to manipulate them using command line tools. Years later I carried this habit to whatever OS I am using.
- kristaps 6y agoDon't remember the source and probably misquoting, but I like this truism: there's software that people complain about and software that nobody is using.
- st1x7 6y agoThe original quote is from Bjarne Stroustrup, the creator of C++. The quote also doesn't apply here. (You can't just use it to excuse any problem with software that you come across). The author of the article and the library in it just seems out of their depth in many ways.
- cat199 6y ago> there's software that people complain about and software that nobody is using. > The original quote is from Bjarne Stroustrup, the creator of C++ i find this ironic, given the 'popularity' (either way) of C++
- tpxl 6y agoCould also be that the package manager doesn't use spaces and most people use package managers? Ie maven will create a folder structure like "/home/user/.m2/repository/com/example/example.jar" which will never have spaces unless the username has spaces (Can linux usernames have spaces?).
- nerdponx 6y agoNo, the R package manager can tolerate spaces in filenames.
- roel_v 6y agoOn Unixy systems, spaces are uncommon because so little software can deal with them, so that people are trained from the very beginning to treat spaces like the plague. I do it too - I've been burned by treatment of spaces in shitty 0.x level software so many times (25+ years ago) that I now have an intuitive aversion of anything with spaces. Spaces in filenames are a reality though, especially on Windows (where the home directory itself used to have spaces in it, and also where many home directories on corporate networks are on network drives and start with \\), and any software that can't deal with those kinds of paths has just not been exposed to much (if any) real world use. That was the point I was trying to make - software that can't handle anything but the most bog-standard path names in its core configuration is 'hey guys look at what I hacked up yesterday evening' quality at best. (yes yes it is possible to imagine exceptions, like software that is decades old and ported across platforms; I'm talking about something new that is meant to solve a general problem).
- mattmanser 6y agoIt doesn't even seem to be on GitHub, in fact the source doesn't seem to be listed anywhere on the project website. Which in our world would scream 'complete amateur, avoid, avoid, avoid', but perhaps it's different in the R world.
- qwantim1 6y agoNo, I think you’re correct. Incomplete source is bad in any world. Unfortunately, it’s that world we live in for pretty much everything. Reproducibility? What if all of the source were to depend on part of a CPU instruction set that we stop using? How long must things be reproducible? We don’t even make lab equipment exactly like we used to with the experiments our current sciences are based on. However, I give a thumbs up to Groundhog for trying to do the right thing.
- corty 6y agoReproducibility down to CPU bit differences is a sign that you did something wrong. Usually calculation with insufficient precision and no thought given to the range of simulation error. Simulation must be treated like a measurement, there is a maximum precision for your instrument and you have to know and apply it. And even if you might disagree for the single-threaded case, most things running in parallel will eat that free lunch of bit-identical results due to timing differences.
- cowsandmilk 6y agoIs it not on GitHub at https://github.com/CredibilityLab/groundhog https://github.com/CredibilityLab/groundhog ?
- Hansi 6y agohttps://github.com/CredibilityLab/groundhog https://github.com/CredibilityLab/groundhog
- roel_v 6y agoWhile this specific project does have a github page, the R world is 'complete amateur, avoid avoid avoid'. It's not really a 'programming language' in the way software engineers would see it. It's more a loose collection of stats functionality that is tied together with text interfactes in a way that somewhat looks like programming to the uninitiated. I mean, batch scripting is technically 'programming', and Excel (even without VBA) is technically Turing complete, but neither of those would be considered 'programming' by software engineers, at least not under an intuitive understanding of what 'programming' is. (by that I mean, it's easy to be pedantic and argue that R and batch files and Excel files are 'programming' because of [xyz] where [xyz] will probably involve real 'definitions' and selection criteria etc; but despite those tools being useful, you can't do real software engineering in them, which you sometimes want/need).
- jcelerier 6y ago> This can be interpreted in two ways: either very few people have spaces in their paths it's been years since I've seen anyone doing that - a main reason, is that a very widely used dev tool, make, does not handle spaces in paths: http://savannah.gnu.org/bugs/?712 http://savannah.gnu.org/bugs/?712 thus leading to inertia in the whole ecosystem - if make does not support spaces in paths, why bother
- CJefferson 6y agoIf you start discarding software which has problems with a space in a directory name, you should start with libtool, at which point you can't build significant chunks of the Linux ecosystem. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=193163 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=193163 I hit this when trying to test libgmp (as an example of an important library you would lose). This means in practice you can't really build most software which uses configure scripts and libraries in a directory with a space -- this may well be what they are hitting.
- jbullock35 6y agoA further concern: the repository for this R package [1] doesn't include any test files. Am I right to think that we should be wary of R packages that don't have any unit tests? https://github.com/CredibilityLab/groundhog https://github.com/CredibilityLab/groundhog
- IshKebab 6y ago> So we are talking about software here that somehow made it to version 1.1 without anyone ever using a directory with spaces in it with it. This is extremely common, especially on Linux. Basically anything that uses things like Bash or CMake will almost certainly not work in directories containing spaces. Developers don't use paths containing spaces because it causes so many issues with badly written Bash scripts, and as a result they don't test their code with paths containing spaces. Bash and CMake and similar hacked together languages have very error-prone quoting rules that make it very easy to accidentally make something work with paths without spaces but fail on paths with spaces.
- Sebb767 6y ago> Developers don't use paths containing spaces because it causes so many issues with badly written Bash scripts, and as a result they don't test their code with paths containing spaces. It is also a PITA to use when typing in a shell, as you need two characters ( \ + space ) instead of one. So even though my scripts can handle them, I still avoid them if possible.
- benibela 6y agoSome programs also use URLs Today I wanted to send a screenshot by mail. Should be simple, but with not Gnome. I make the screenshot, Gnome creates a file "Screenshot from ...", but does not tell you where. Then I search it in the file explorer, find it, copy the path. Then I paste the path in the mail program, file:///....Screenshot%20from%20. Then the mail program: "File not found"