Wednesday, July 22, 2009

Linux into the CS Curriculum: Part 1

This will be a series of articles advocating the integration of Linux into the CS curriculum along with ways in which to do that.

Linux is quite a popular operating system and in my opinion it should be given a place throughout the CS curriculum from introductory courses to advanced level courses. All throughout my Computer Science career I have learnt quite a lot through this operating system.

I advocate this idea of integrating it into the CS curriculum because it is remarkably complete, with servers of all types, programming tools, databases and the like, and the source code for same, routinely included in Linux distribution. Moreover it provides a steep learning curve to those looking for a challenge, some of the brightest CS students.

Most operating systems hide details behind a GUI shield. Linux being transparent offers a view into the workings of an operating system that can be of use in all CS areas. Want to know about processes? Just type ps -ax and all processes show up. Devices? The /dev directory gives info about them. Want to see real operation of TCP/IP? Type netstat -r and see the routing tables, or netstat -p to see what sockets are open.

Thanks to the determination and vigilance of its creator Linus Torvalds, Linux remains a free operating system. So in line with this spirit many developers have produced a bunch of no-cost and high-quality software for Linux platform including compilers compilers (gcc, kaffe, Forte, Jikes), web servers (apache), and databases (postgresql, mySql). This is not shareware or trialware, but genuinely free software that is bundled with
most Linux distributions. Of course, you can find commercial software — vendors are always interested in making money — but the software that comes with Linux is of extremely high caliber.

Linux is vastly different from the Mac OS or Windows; and just as with programming languages, studying another OS offers insights into one’s preferred OS.

For all the above reasons, Linux deserves to have a major presence in the CS curriculum.

No comments:

Post a Comment