Closed Thread
Results 1 to 6 of 6

Thread: You should know Linux

  1. #1
    Kernel is offline RSS Feed Bot
    Join Date
    Sep 2006
    Posts
    2,105
    Rep Power
    34

    You should know Linux

    Its hard to get everyone to agree on what core competencies developers should have. I've long believed that knowledge of C is fundamental to becoming a great developer. Actually, C in general, memory management, pointer arithmetic, and basic hardware (interupts, scheduling, ...) more specifically. Up until recently, when someone asked me what they should learn to be a better programmers, I'd always suggest C. As someone else put it "Not 'getting' algebra is not acceptable for a mathematician, as not 'getting' pointers is not acceptable for programmers. Too fundamental."

    I'm now feeling pretty comfortable in including Linux as a must-know skills. I'd go as far as saying that for certain type of work, like web development, knowing Linux is more important than knowing C.

    I'm not arguing that you need to move your development to Linux, I'm saying that you need to be comfortable enough with Linux to be able to leverage it. Linux is the platform of choice for a massive list of tools that you should have in your toolbox. Not having access to those tools puts you and your company at a disadvantage. It isn't just about having access to programs either, its about having knowledge about alternative ways to do things. I speak to a lot of ASP.NET developers who don't know what in-memory distributed caching is or who don't understand non-relational persistence options. This ignorance is a major liability which will be hard to address as long as developer remain uncertain and fearful of Linux.

    The other nice thing about Linux is that its dead easy to setup and configure. The documentation no longer solely consists of cryptic man pages, and the community is broader than ever. If you can't get LAMP installed, then you either picked an uncommon distro, or you haven't tried very hard.

    If you are really serious about diving in, I offer you some choices. First, convert an old PC to a linux server. An single core P4 with 1gb of RAM is more than enough to run a linux server. You can also get a Mac, since Mac OS X is based on BSD (close enough to Linux for our purposes), and has great documentation for developers to install, configure and learn all types of useful things. You can get a nettop. I'm currently running an ASRock 330 (non-ION or blu-ray - unless you need/want them), which has a dual core Atom 330 + 4gb of ram (added afterwards by me). Finally, you can rent an unmanaged VPS. Probably the most popular provider, due to its performance, price, and the fact that you have full root access, is Linode - however there's plenty of choice.

    Which option you pick should largely be based on your needs. If you'll want something that you can actually use to host something, then a VPS is clearly the way to go. Otherwise, reuse an old machine if you can, or pick between a cheap low-end dedicated nettop or a more expensive (but also more useful) mac.

    As for distributions, I'd recommend Ubuntu - in large part because of the excellent documentation and community (though CentOS is a commone server of choice in production). You can pick the Desktop or Server edition. I picked the server since I only ever SSH into the machine and have no need for a GUI.




    More...

  2. CODECALL Circuit advertisement
    Join Date
    Always
    Posts
    Many

     
  3. #2
    Join Date
    Jul 2006
    Posts
    16,486
    Blog Entries
    75
    Rep Power
    143

    Re: You should know Linux

    Let's not forget that Linux looks better than Windows and behaves better, as well.
    Programming is a branch of mathematics.
    My CodeCall Blog | My Personal Blog

  4. #3
    Davide's Avatar
    Davide is offline Programming God
    Join Date
    Dec 2009
    Location
    Manchester, UK
    Posts
    507
    Blog Entries
    8
    Rep Power
    11

    Re: You should know Linux

    Quote Originally Posted by WingedPanther View Post
    Let's not forget that Linux looks better than Windows and behaves better, as well.
    I can agree that it behaves better, but for the looks... well i love Windows 7, and Linux is just to hard to be made to look good (thousands of themes, none of them can make it look like a professional OS, only something made in a garage). No offence, i like Linux, i was a Linux freak myself last year when i got hold of Ubuntu and replaced XP.

    But still, i have software Windows/Mac - only, virtualization is annoying and resource eating, and again, gnome looks ugly (for me ) and KDE... heh... i have to censor 20 lines of my post to cover all i want to say about it.

    But, except for that, it is very good, stable and fast, and i still like it, not as much as Windows, but i do.
    Are you a newbie programmer trying to learn C#? Check out my small tutorial: Visual C# Programming Basics

  5. #4
    Davide's Avatar
    Davide is offline Programming God
    Join Date
    Dec 2009
    Location
    Manchester, UK
    Posts
    507
    Blog Entries
    8
    Rep Power
    11

    Re: You should know Linux

    I totally agree with you, but let's not generalize: Linux means all distro's not only Ubuntu. Ubuntu is the best because it can be used by regular people, and for regular users (internet and office users), it's a better choice than windows.

    Unfortunately, there are not a lot of platforms that let you port your app, and making your app only for Linux is not a good way to make your self known as a developer. Microsoft was smart, they made the .NET Framework. Imagine how easy it is to make something in C++/C#/VB now. But... Windows-only.

    We should all thank Sun Microsystems for Java. Java is brilliant, it works on all platforms all you can complain about it is that instead of compiling to .exe/.app or to a Linux app it compiles to .jar, making it... well, annoying. But, you can make your app work on all computers, and that's great.

    Only a very good developer can develop for all platforms without help, but he would have to know native C++, and he would need to have a lot of time.
    Are you a newbie programmer trying to learn C#? Check out my small tutorial: Visual C# Programming Basics

  6. #5
    Join Date
    Jul 2006
    Posts
    16,486
    Blog Entries
    75
    Rep Power
    143

    Re: You should know Linux

    Huh. I find Ubuntu 9.04 looks every bit as professional as Windows XP... perhaps I missed something? That just Gnome.
    Programming is a branch of mathematics.
    My CodeCall Blog | My Personal Blog

  7. #6
    Davide's Avatar
    Davide is offline Programming God
    Join Date
    Dec 2009
    Location
    Manchester, UK
    Posts
    507
    Blog Entries
    8
    Rep Power
    11

    Re: You should know Linux

    Quote Originally Posted by WingedPanther View Post
    Huh. I find Ubuntu 9.04 looks every bit as professional as Windows XP... perhaps I missed something? That just Gnome.
    Yup, it looks nice and decent, but remember, XP was made in 2002.
    Are you a newbie programmer trying to learn C#? Check out my small tutorial: Visual C# Programming Basics

Closed Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. ds and linux
    By jaytal in forum Linux Applications
    Replies: 9
    Last Post: 01-29-2010, 01:53 PM
  2. Linux Security, The Ultimate Linux Security Gateway
    By Tor in forum Linux Tutorials, Guides and Tips
    Replies: 2
    Last Post: 12-21-2008, 03:51 PM
  3. Linux CBT Nuggets: Linux+
    By Tor in forum Linux/Unix General
    Replies: 1
    Last Post: 06-27-2008, 05:35 AM
  4. How to do with linux.?
    By Patrick in forum Computer Software/OS
    Replies: 0
    Last Post: 10-13-2007, 08:46 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts