Thread: Windows Versus Linux : Whats the "Reality"

  1. #16
    Ticked and off
    Join Date
    Oct 2011
    Location
    La-la land
    Posts
    1,728
    Quote Originally Posted by Elysia View Post
    Most linux software have problems with spaces in names
    Eh? That's quite the opposite to my own experience.

    I know of a few widespread Perl scripts that mangle file names in Linux (for example, the rename script cannot handle newlines in file names), and bugs are common in shell scripts written by new users, but other than those, I haven't had any issues in years.

    There are very few rules in Linux for filename components: must not be empty, must end with ASCII NUL (\0, code 0), and must not contain an ASCII slash (/, code 47). Length limits vary from filesystem to filesystem; aside from FAT (8.3 names), I haven't hit the limits in ages.

    If you set LC_ALL=C LANG=C and double-quote your variable expressions, even Bash handles them all -- yes, including newlines -- correctly, without any problems. If a Bash script neglects to set the locale, then Bash will try and check that the file name is valid in the current locale, which is not useful; it'll barf if the name is not representable in the current charset.

    Most compiled programs have zero issues. I don't even remember when I saw filename problems.

    (Well, I do, but that's because I had a filesystem full of file names using different character sets. They work just fine -- the kernel does not care -- but many tools assume file names use the character set defined in the current locale, and when the exact file name is not representable in the current character set, they just skip it. The solution is to use the C locale as above, and use heuristics to guess the character set used for each file name.)

    Anyway, claiming that most Linux software does not handle spaces in filenames is utter crock.

  2. #17
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    If you say so... my experience with typical cross-platform programs is those are the ones that have issues with spaces. Mingw and Qt, for example.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  3. #18
    Ticked and off
    Join Date
    Oct 2011
    Location
    La-la land
    Posts
    1,728
    Quote Originally Posted by Elysia View Post
    If you say so... my experience with typical cross-platform programs is those are the ones that have issues with spaces. Mingw and Qt, for example.
    All GNU tools I have work fine with spaces in file and directory names, so Mingw must do something idiotic in Windows. I haven't encountered any issues with such names in Qt in Linux, either.

    Ah, found it: It's known "feature" in Mingw and MSYS. It affects not only Mingw itself, but all programs compiled by Mingw. Yuck. Looking at related bugs, it does not look like the developers are in any hurry to fix the behaviour, either.

    I do have heard about lots of open source programs having all sorts of filename issues in Windows, not limited to spaces. It's got nothing to do with Linux per se either, but something to do with case-insensitive file names, and there being short and long names, and lazy programmers just not taking those into consideration, and not bothering to quote variables in shell scripts and Makefiles, and not bothering to read the documentation in the first place. This, for example, is a pretty good summary one should follow.

  4. #19
    spaghetticode
    Guest
    I am aware of the fact that this is already a week old, but since this is one of 'my' topics I'd like to add my 2 cents. Sorry if anyone feels bothered.

    First of all I have to state that I don't really resent Microsoft or Windows as an OS. I have been a Linux user for more than 10 years now, it began as a mere curiosity, continued as a love for the ideas of free and open source software and nowadays it's mostly a question of me being used to the 'Linux way of doing stuff'. I took a peek at Windows 7 and Windows 10 and I found that those are good operating systems at first sight.

    But personally, I have worked with Linux way too long to get used to the 'Windows workflow'. I just forgot how to do the things I do with Windows. Anyhow, I am pretty happy with my Linux machine, so there's no reason to switch anyway.

    That said, I'd like to add some things to what has been discussed so far.

    Quote Originally Posted by TheGuy Nextdoor View Post
    Question 1 :Why do people always advise to learn Linux and not windows.
    To be honest, I don't see that 'people always advise' such thing. There are very good reasons for Linux, technically as well as ideologic. Still, operating systems are tools, and each OS has its purpose and its reason for existing.

    Regarding programming, personally, I find it much easier to get a working tool chain with Linux. After all, it has always been a project of (programming) enthusiasts, which of course led to a very specific focus.

    Quote Originally Posted by TheGuy Nextdoor View Post
    Questions 2 : Why people always advise budding programmers to learn and deep dive in Linux kernel source code. Windows programmers do equally fine without windows source code.
    Again, I have never come across anyone 'budding' anyone else to 'dive into' kernel source code. However, there certainly is more interest in learning about the internals of Linux than there is on the Windows side. That's probably because open source is a whole different culture and philosophy. The whole thing is about sharing knowledge, being open for anyone to contribute, add, change, or just study. Being a Windows developer is, overall, much more of a profession with an 'let's earn some money by selling a product' attitude, whereas Linux developers tend to put more emphasis on the aspect of creating and sharing technology.

    Quote Originally Posted by TheGuy Nextdoor View Post
    [*]Linux is secure and used on most of the servers
    That statement sounds a little too simple. I'd rather say: Linux provides much stronger tools for security. Still it depends to a great extend on how you use those tools. Put the wrong person in front of a Linux machine and suddenly Windows is a whole lot more secure.
    Last edited by spaghetticode; 08-24-2015 at 04:44 AM. Reason: typo

  5. #20
    Registered User FourAngels's Avatar
    Join Date
    Aug 2015
    Location
    Canada
    Posts
    130
    Linux might not be as overloaded with bloat as Windows and that is the real battle. You would think that this would have all changed by now due to better hardware. Linux is more selective about everything that is going on under the hood and in the background. It offers more freedom but is more work and does not have the end user support, so it is not good for everything. Neither has it perfect so the user must use both or suffer. Now there are tablets and other handhelds. You have to be on the same side as your OS.

  6. #21
    spaghetticode
    Guest
    Quote Originally Posted by FourAngels View Post
    It offers more freedom but is more work
    I strongly doubt that. All my Linux machines in the past few years have been installed, equipped with software, and used. It's been even less work than with Windows, because I found all the software I needed in the distribution's repositories. That Linux means more work or is less userfriendly may have held true in the mid 1990ies, but that's long ago. It's just a meaningless phrase that won't die out, for whatever reason.

    Quote Originally Posted by FourAngels View Post
    and does not have the end user support,
    Of course it does. You have to pay for it, true. But you pay for Windows support too by buying a license.

  7. #22
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by spaghetticode View Post
    That Linux means more work or is less userfriendly may have held true in the mid 1990ies, but that's long ago. It's just a meaningless phrase that won't die out, for whatever reason.
    I dunno, maybe it's just me, but whenever I have to change a setting, I always have to hit the command line to change it. The important settings can just NOT be found in the settings/control panel in the dists.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  8. #23
    Unregistered User Yarin's Avatar
    Join Date
    Jul 2007
    Posts
    2,158
    Quote Originally Posted by Elysia View Post
    I dunno, maybe it's just me, but whenever I have to change a setting, I always have to hit the command line to change it. The important settings can just NOT be found in the settings/control panel in the dists.
    That depends entirely on the distro and WM, for instance, in XMonad you have to change everything from the configuration code. In Enlightenment you have to change everything through the GUI.

    The great thing about Linux is that you can choose the stream that floats your boat. You have no choice with Windows. Enjoy the desktop you didn't ask for, and while you're at it sign this EULA that gives us all your data.
    Last edited by Yarin; 09-01-2015 at 08:48 AM.

  9. #24
    spaghetticode
    Guest
    Quote Originally Posted by Elysia View Post
    The important settings can just NOT be found in the settings/control panel in the dists.
    Though generally agreeing with Yarin that the extense to which you can configure your system via GUI depends on your desktop environment - there *may* be *some* settings you can't access graphically *even* under KDE. But then again, these are very likely some kind of settings that will hardly be possible to change in Windows too, if possible at all. So even if it's an issue, it's certainly no argument in favour of Windows meaning less work.

  10. #25
    Registered User MutantJohn's Avatar
    Join Date
    Feb 2013
    Posts
    2,665
    I don't get how a GUI is supposed to be more simple than a CLI. If you look online, there's still tutorials on how to use a GUI. Arch was simple perfection of CLI package installation. It had the biggest repositories and installing things had never been more simple.

  11. #26
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by MutantJohn View Post
    I don't get how a GUI is supposed to be more simple than a CLI.
    Because some of us have an easier time remembering how to interact with a GUI than remember the command line to do stuff.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  12. #27
    Registered User MutantJohn's Avatar
    Join Date
    Feb 2013
    Posts
    2,665
    But you then have to remember the GUI layout. You have to remember, I need this from this menu but then I'll need this from that other menu screen. Smartphones are the worst culprit of this. You're expected to navigate them using some strange hieroglyphics.

    You're not exactly solving one problem for another because more often than not, the user still has to remember something. I think combining a GUI with a CLI might actually make a better interface for the user. Like, if I'm typing the cp command in Linux (copy), it'd be cool if there was a display that showed me the directory contents as I was typing and partially completing paths. That'd be a neat ass interface.

  13. #28
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Sure, you have to remember something, but some find it easier to remember click here and here instead of remembering the exact text to type. I guess it just have to do with memory. Some are visual learners. They find it easier to remember where to click in a GUI where you're presented with the information before your eyes.

    For your information, I fall into this group too, which is why I dislike Linux (but Android is another matter).
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  14. #29
    Registered User FourAngels's Avatar
    Join Date
    Aug 2015
    Location
    Canada
    Posts
    130
    I have not used Linux for ages but I am doing okay with Ubuntu. I remembered the basic CLI commands of the bash shell, and the nice thing was that I could install Qt creator with just two super user commands. I had to install the documentation separately, so i needed to make the run file executable, but it is easy to find everything out on the Internet. Actually my only problem is that if I accidentally hit the cursor pad on my laptop, it throws the mouse pointer into disarray, just need to be careful when I type. If I can get some project version control happening here by next week, I'll be happy on Linux and looking forward to lots of c and c++.

    There are books on using all kinds of Linux utilities and it is really the best hobby option that there is but not everyone is on the same side. Some people hate Linux. They would not want to use a CLI.

    Oh, you can get your content from your devices to work on Linux? but no iTunes.

  15. #30
    spaghetticode
    Guest
    Quote Originally Posted by FourAngels View Post
    Actually my only problem is that if I accidentally hit the cursor pad on my laptop, it throws the mouse pointer into disarray,
    OT: Since I don't like Ubuntu I am not used to or aware of the possibilities of Unity, but KDE actually has a setting to avoid that. If enabled, it just turns the cursor pad off when typing on the keyboard. Yes, you guessed right: I <3 KDE. :-)

    Quote Originally Posted by FourAngels View Post
    Some people hate Linux. They would not want to use a CLI.
    I certainly don't want to convince people to use Linux; as said before, OSs are tools after all. But sometimes I feel the need to set certain things straight about Linux, and in fact, you can totally use a Linux system in a productive way without ever touching the CLI. People who state otherwise may not have used a Linux system lately or are CLI fanatics.

    I'm totally fine with people preferring Windows, but it just doesn't hold true anymore that Linux is unusable or too complicated for an 'average user' (for whatever that next meaningless phrase is supposed to describe).
    Last edited by spaghetticode; 09-02-2015 at 04:29 AM. Reason: typos

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Replies: 2
    Last Post: 12-08-2014, 08:12 PM
  2. Replies: 10
    Last Post: 08-09-2012, 12:48 PM
  3. I am confused by "Linux thread" and "NPTL"
    By meili100 in forum Linux Programming
    Replies: 6
    Last Post: 03-27-2008, 12:14 PM
  4. "itoa"-"_itoa" , "inp"-"_inp", Why some functions have "
    By L.O.K. in forum Windows Programming
    Replies: 5
    Last Post: 12-08-2002, 08:25 AM
  5. "CWnd"-"HWnd","CBitmap"-"HBitmap"...., What is mean by "
    By L.O.K. in forum Windows Programming
    Replies: 2
    Last Post: 12-04-2002, 07:59 AM

Tags for this Thread