Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. Loving Linux

Loving Linux

Scheduled Pinned Locked Moved C / C++ / MFC
csharpcomlinuxquestiondiscussion
9 Posts 5 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R Offline
    R Offline
    Rafael Fernandez Lopez
    wrote on last edited by
    #1

    What do you think about Linux? Do you use Linux for programming? Have you ever heard about Mono project? .NET strategy is working now under Linux. What do you think about that? Thanks. :)


    Written by: Rafael Fernández López.

    Visit: http://www.maestroprogramador.com

    J H 2 Replies Last reply
    0
    • R Rafael Fernandez Lopez

      What do you think about Linux? Do you use Linux for programming? Have you ever heard about Mono project? .NET strategy is working now under Linux. What do you think about that? Thanks. :)


      Written by: Rafael Fernández López.

      Visit: http://www.maestroprogramador.com

      J Offline
      J Offline
      Jim Crafton
      wrote on last edited by
      #2

      Well since I am bored, and have already hit my productivity quotient for the day, I'll bite. I think that as a kernel Linux is fine. It has some nice features, scales well, is reasonably stable, and the new 2.6 version adds some nice performance improvments. So from a 10,000 foot view, it's OK, no better or worse than other kernels out there (well maybe a bit better, at least in terms of flexibility). However from a design standpoint, from a "lets try something new" standpoint, it's mind numbingly boring in a lot of ways. Linux carries on many unix traditions as if they were the be-all end-all of computer OS design, which is a shame, because IMHO, in 2004, many of the Unix design decisions are fairly lame. For example, security. Linux (and most Unices) security is *still* implemented as nothing more than a 32bit value that gets set. Win32 security mechanism (which is almost a direct copy of what's been used on VMS for the last 20 or so years) is infinitely more flexible, and far easier to admin in terms of understanding it, and making changes to the system. Another example is the insistence on *everything* being a character stream (or practically everything). That and an incomprehensible naming pattern that makes understnading what devices you have connected to the OS extremely difficult. Don't beleive me? Look in /dev and tell me what all that is? Linux the OS, i.e. all the userland stuff, like cp, ls, man, rm, cat, etc, is a dog, in my opinion. Most of the brain dead unix design decisions that were made in the 70's are *still* there in Linux! Keep in mind that the same group that whines, cries, and belittles MS for being un-innovative, has done *nothing* to bring linux forward using state of the art OS techniques and designs. From incomprehensible commands like cat, rm, ls (WTF is ls? please try explaining that to anyone not a programmer), awk, groff, sed, and on and on and one, ad nauseam. And if you thought the commands were weird how about getting help? Want help? type man! What's "man" you ask? Why isn't it "help" (this is what VMS uses)? Once you get used to terse 2-3 letter commands you have the joy of the linux file system to uncover. Want to find where something is executed from? Is it /usr/bin, /bin, /sbin, /usr/sbin, /usr/local/bin, etc etc. What's "bin"? What's "usr"? It's 2004, why can't we move forward and give human readable names to things. Keep in mind this is linux we are talking about - a freely available system that could be changed, but rarely is. Don't get m

      R N 2 Replies Last reply
      0
      • J Jim Crafton

        Well since I am bored, and have already hit my productivity quotient for the day, I'll bite. I think that as a kernel Linux is fine. It has some nice features, scales well, is reasonably stable, and the new 2.6 version adds some nice performance improvments. So from a 10,000 foot view, it's OK, no better or worse than other kernels out there (well maybe a bit better, at least in terms of flexibility). However from a design standpoint, from a "lets try something new" standpoint, it's mind numbingly boring in a lot of ways. Linux carries on many unix traditions as if they were the be-all end-all of computer OS design, which is a shame, because IMHO, in 2004, many of the Unix design decisions are fairly lame. For example, security. Linux (and most Unices) security is *still* implemented as nothing more than a 32bit value that gets set. Win32 security mechanism (which is almost a direct copy of what's been used on VMS for the last 20 or so years) is infinitely more flexible, and far easier to admin in terms of understanding it, and making changes to the system. Another example is the insistence on *everything* being a character stream (or practically everything). That and an incomprehensible naming pattern that makes understnading what devices you have connected to the OS extremely difficult. Don't beleive me? Look in /dev and tell me what all that is? Linux the OS, i.e. all the userland stuff, like cp, ls, man, rm, cat, etc, is a dog, in my opinion. Most of the brain dead unix design decisions that were made in the 70's are *still* there in Linux! Keep in mind that the same group that whines, cries, and belittles MS for being un-innovative, has done *nothing* to bring linux forward using state of the art OS techniques and designs. From incomprehensible commands like cat, rm, ls (WTF is ls? please try explaining that to anyone not a programmer), awk, groff, sed, and on and on and one, ad nauseam. And if you thought the commands were weird how about getting help? Want help? type man! What's "man" you ask? Why isn't it "help" (this is what VMS uses)? Once you get used to terse 2-3 letter commands you have the joy of the linux file system to uncover. Want to find where something is executed from? Is it /usr/bin, /bin, /sbin, /usr/sbin, /usr/local/bin, etc etc. What's "bin"? What's "usr"? It's 2004, why can't we move forward and give human readable names to things. Keep in mind this is linux we are talking about - a freely available system that could be changed, but rarely is. Don't get m

        R Offline
        R Offline
        Ryan Binns
        wrote on last edited by
        #3

        One of the best posts on Linux I have ever heard! It's a pity the rating system only goes up to 5 :( It deserves at least 10 times that...

        Ryan

        "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"

        J 1 Reply Last reply
        0
        • R Rafael Fernandez Lopez

          What do you think about Linux? Do you use Linux for programming? Have you ever heard about Mono project? .NET strategy is working now under Linux. What do you think about that? Thanks. :)


          Written by: Rafael Fernández López.

          Visit: http://www.maestroprogramador.com

          H Offline
          H Offline
          Henry miller
          wrote on last edited by
          #4

          I love it, use it as my day to day OS at home. Well I prefer freeBSD, but essentially everything applys, and I use both. Everything is a file, and lamost always a file containing only charicters. This makes it simple. Once you can deal with files you can deal with anything. Oh once in a while you have to set some strange options (IP address means nothing on a file for instance). The tools are powerful. Not easy to learn, but once you learn them easy to use and powerful. Tools like grep (searches for something in a file and can handle very complex searches) work because everything is a file of charicters. Everything is logical and simple. Critical programs for a minimal system are in /bin, the rest of the system programs are in /usr/bin, and programs you install go in /usr/local/bin. 3 places to search and it is all there. Remember, you cannot mistake easy to use with easy to learn. (Excpet when you are designing a kiosk where nobody uses it twice) Unix goes all the way: after a lot of training you can do some powerful things. Windows and the mac don't go nearly as far, and it makes powerful things hard to do. vi deserves all the criticism it gets for being hard to learn and a pain to work with. I keep coming back to it though because it just works. Fast, and powerful.

          J 1 Reply Last reply
          0
          • J Jim Crafton

            Well since I am bored, and have already hit my productivity quotient for the day, I'll bite. I think that as a kernel Linux is fine. It has some nice features, scales well, is reasonably stable, and the new 2.6 version adds some nice performance improvments. So from a 10,000 foot view, it's OK, no better or worse than other kernels out there (well maybe a bit better, at least in terms of flexibility). However from a design standpoint, from a "lets try something new" standpoint, it's mind numbingly boring in a lot of ways. Linux carries on many unix traditions as if they were the be-all end-all of computer OS design, which is a shame, because IMHO, in 2004, many of the Unix design decisions are fairly lame. For example, security. Linux (and most Unices) security is *still* implemented as nothing more than a 32bit value that gets set. Win32 security mechanism (which is almost a direct copy of what's been used on VMS for the last 20 or so years) is infinitely more flexible, and far easier to admin in terms of understanding it, and making changes to the system. Another example is the insistence on *everything* being a character stream (or practically everything). That and an incomprehensible naming pattern that makes understnading what devices you have connected to the OS extremely difficult. Don't beleive me? Look in /dev and tell me what all that is? Linux the OS, i.e. all the userland stuff, like cp, ls, man, rm, cat, etc, is a dog, in my opinion. Most of the brain dead unix design decisions that were made in the 70's are *still* there in Linux! Keep in mind that the same group that whines, cries, and belittles MS for being un-innovative, has done *nothing* to bring linux forward using state of the art OS techniques and designs. From incomprehensible commands like cat, rm, ls (WTF is ls? please try explaining that to anyone not a programmer), awk, groff, sed, and on and on and one, ad nauseam. And if you thought the commands were weird how about getting help? Want help? type man! What's "man" you ask? Why isn't it "help" (this is what VMS uses)? Once you get used to terse 2-3 letter commands you have the joy of the linux file system to uncover. Want to find where something is executed from? Is it /usr/bin, /bin, /sbin, /usr/sbin, /usr/local/bin, etc etc. What's "bin"? What's "usr"? It's 2004, why can't we move forward and give human readable names to things. Keep in mind this is linux we are talking about - a freely available system that could be changed, but rarely is. Don't get m

            N Offline
            N Offline
            Neville Franks
            wrote on last edited by
            #5

            Excellent post Jim. 10 from me as well. Having said that I have to report that I think you need to get VCF going on Linux, as painfull as that will be.:( It seems that there is this unstoppable train moving towards Linux. Stuffed if I know what is going to happen to commercial software developers like me when that happens, suffice to say we'll need to change careers or retire, as it is hard to see anyone paying for Linux software. Neville Franks, Author of ED for Windows www.getsoft.com and coming soon: Surfulater www.surfulater.com

            J 1 Reply Last reply
            0
            • N Neville Franks

              Excellent post Jim. 10 from me as well. Having said that I have to report that I think you need to get VCF going on Linux, as painfull as that will be.:( It seems that there is this unstoppable train moving towards Linux. Stuffed if I know what is going to happen to commercial software developers like me when that happens, suffice to say we'll need to change careers or retire, as it is hard to see anyone paying for Linux software. Neville Franks, Author of ED for Windows www.getsoft.com and coming soon: Surfulater www.surfulater.com

              J Offline
              J Offline
              Jim Crafton
              wrote on last edited by
              #6

              Thanks! Well the hardware's a tad more expensive, but, IMHO well worth it, so instead of linux, encourage everyone you know to consider OSX - at least they have a community that appreciates the full range of software, from free to commerical. ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned

              1 Reply Last reply
              0
              • R Ryan Binns

                One of the best posts on Linux I have ever heard! It's a pity the rating system only goes up to 5 :( It deserves at least 10 times that...

                Ryan

                "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"

                J Offline
                J Offline
                Jim Crafton
                wrote on last edited by
                #7

                Thanks! ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned

                1 Reply Last reply
                0
                • H Henry miller

                  I love it, use it as my day to day OS at home. Well I prefer freeBSD, but essentially everything applys, and I use both. Everything is a file, and lamost always a file containing only charicters. This makes it simple. Once you can deal with files you can deal with anything. Oh once in a while you have to set some strange options (IP address means nothing on a file for instance). The tools are powerful. Not easy to learn, but once you learn them easy to use and powerful. Tools like grep (searches for something in a file and can handle very complex searches) work because everything is a file of charicters. Everything is logical and simple. Critical programs for a minimal system are in /bin, the rest of the system programs are in /usr/bin, and programs you install go in /usr/local/bin. 3 places to search and it is all there. Remember, you cannot mistake easy to use with easy to learn. (Excpet when you are designing a kiosk where nobody uses it twice) Unix goes all the way: after a lot of training you can do some powerful things. Windows and the mac don't go nearly as far, and it makes powerful things hard to do. vi deserves all the criticism it gets for being hard to learn and a pain to work with. I keep coming back to it though because it just works. Fast, and powerful.

                  J Offline
                  J Offline
                  Jim Crafton
                  wrote on last edited by
                  #8

                  /bin, /usr/bin, and /usr/local/bin, may be the layout on *your* system or distro, but it is by no means standard. There's /sbin, /usr/sbin, /usr/ucb (solaris looks for compilers there, beleive it or not), and I beleive other variations as well. The home directory, while frequently branched of off /home as a root, is not always done this way, for example solaris defaults to /export/home. Logical and simple would be to do what Apple does, or Win32 does - ONE directory (/Applications or /Program Files) for everything. The reason for having the multiple places to look was an easy hack solution to prevent people from running certain apps by just altering their $PATH. Of course if unix used real ACL's as a standard for file/process/etc permissions you wouldn't need any of that and you could just lock people down by group or user access, just like you can with Win32. Remember, you cannot mistake easy to use with easy to learn. This is just utter and complete bullshit, something all of us developers spout off about to justify writing shitty sloppy programs that are difficult to deal with. The fact of the matter is that Unix/Linux took dozens and dozens of sloppy, short sighted shortcuts in the way they implemented things, refusals to accept and enforce any sort of well thought out standards, and have stagnated as a result. Note that I am not saying that Win32 or Mac are the end all be all of standards either. But, and it's an important but, they DO have a standard, and they do a pretty good job of enforcing it. Windows and Macs, especially Macs, since they are BSD based under the hood now, and it's readily available, can be set up to do just as many difficult/powerful things as unix. And frequently where the "power" comes in is not from Unix per se, it's from the integrated high peformance hardware that it sits on. What windows lacks is a really powerful native commandline line like unix that lets you easily script all sorts of crazy stuff. And it lacks some of the unix style comand line programs like sed and grep. However all of these have been ported over to windows and work just fine using cygwin, so it makes it a moot point to a certain degree. If people *really* want to see fast, powerful, and well thought out, take a look at OpenVMS. It's been a complete eye-opener to see some of the stuff that it can do that unix, osx, and Win32 STILL don't do as well. ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(

                  H 1 Reply Last reply
                  0
                  • J Jim Crafton

                    /bin, /usr/bin, and /usr/local/bin, may be the layout on *your* system or distro, but it is by no means standard. There's /sbin, /usr/sbin, /usr/ucb (solaris looks for compilers there, beleive it or not), and I beleive other variations as well. The home directory, while frequently branched of off /home as a root, is not always done this way, for example solaris defaults to /export/home. Logical and simple would be to do what Apple does, or Win32 does - ONE directory (/Applications or /Program Files) for everything. The reason for having the multiple places to look was an easy hack solution to prevent people from running certain apps by just altering their $PATH. Of course if unix used real ACL's as a standard for file/process/etc permissions you wouldn't need any of that and you could just lock people down by group or user access, just like you can with Win32. Remember, you cannot mistake easy to use with easy to learn. This is just utter and complete bullshit, something all of us developers spout off about to justify writing shitty sloppy programs that are difficult to deal with. The fact of the matter is that Unix/Linux took dozens and dozens of sloppy, short sighted shortcuts in the way they implemented things, refusals to accept and enforce any sort of well thought out standards, and have stagnated as a result. Note that I am not saying that Win32 or Mac are the end all be all of standards either. But, and it's an important but, they DO have a standard, and they do a pretty good job of enforcing it. Windows and Macs, especially Macs, since they are BSD based under the hood now, and it's readily available, can be set up to do just as many difficult/powerful things as unix. And frequently where the "power" comes in is not from Unix per se, it's from the integrated high peformance hardware that it sits on. What windows lacks is a really powerful native commandline line like unix that lets you easily script all sorts of crazy stuff. And it lacks some of the unix style comand line programs like sed and grep. However all of these have been ported over to windows and work just fine using cygwin, so it makes it a moot point to a certain degree. If people *really* want to see fast, powerful, and well thought out, take a look at OpenVMS. It's been a complete eye-opener to see some of the stuff that it can do that unix, osx, and Win32 STILL don't do as well. ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(

                    H Offline
                    H Offline
                    Henry miller
                    wrote on last edited by
                    #9

                    I agree that unix is not the be all end all. I've never used VMS (or any mainframe OS), but I trust those who tell me there are advantages. However they are also able to see the disadvantages of those systems, one of which is losing some amount of power because not everything is a (normally text) file. Its a matter of trade offs. Unix ignored some things known about OS design when they designed it, but they also did a number of things right that windows ignored. sbin is for system utilites that most users won't need, and often down have rights to call anyway. (If you need to be an admin to run some program why make is avaiable to the user?) I don't consider it fair to count that. And solaris does their own thing in most ways. There is a linux standards project that has standardised directory layouts, and most distributions follow it at least somewhat. However all of this is just standard practice. I have a windows machine at work with a "c:\program files", and "d:\program files". I have seen linux distributions where all programs were in some form of /programs. With the standard unix layouts I can type "foo", and run a program that was just installed, while with windows I (or someone) has to adjust the path because programs are not installed in "program files" they are each installed in their own "program files\name" directory. Of course this has other advantages, so the only fair thing to say is it is different. I still stand by the easy to use is not easy to learn comment. However you are not appling it as it was ment. Before you can decide where your program fits you need use cases to figure out who your users are. AT&T once made a complex hard to learn system because their operators were expected to use it for years, so saving a few tenths of a second here and there would not only making up the time to learn the system, but also save a lot of money. (this was back when AT&T was the monopoly) Most of us cannot go to that extreem because our users are not using only our app all day, but we do need to consider more than just learnability.

                    1 Reply Last reply
                    0
                    Reply
                    • Reply as topic
                    Log in to reply
                    • Oldest to Newest
                    • Newest to Oldest
                    • Most Votes


                    • Login

                    • Don't have an account? Register

                    • Login or register to search.
                    • First post
                      Last post
                    0
                    • Categories
                    • Recent
                    • Tags
                    • Popular
                    • World
                    • Users
                    • Groups