Domain: uwaterloo.ca
Stories and comments across the archive that link to uwaterloo.ca.
Comments · 648
-
prof quotes from the univ of waterlooHere are the most recent profQUOTES from mathNEWS (the University of Waterloo Faculty of Mathematics Student Newspaper). They have new ones every issue; for more, check out Google's search results.
My favorite from this issue (courtesy of Prof. Vasiga):
"'Expected' is one of those words you can use at work. I expect to get this job done by Friday... that's not saying it's going to get done. I also expect to win the lottery, quit this job, and tell you all to piss off."
-
Re:Possible Cool Usesjust have to rep for a bit of uwaterloo controversy here...
every unix geek is rebelling at the possibility of a ms prescence on campus, but the one thing that made me think of this when i read your comment was the following.
"A new team of UW researchers intend to collaborate to develop a pen-based mathematics manipulation interface engine to enable Microsoft's Tablet PC to enter, manipulate, and interact with complex formulae."
this is quoted from the above link which was intended to clarify exactly what the ms funding would entail... everyone's up in arms, and the debate isnt over yet.
-
Re:P vs. NP and why should I care?
The FAQ has moved to here.
-
Windows XP for free...if you are a studentWindows is actually getting cheaper and cheaper...
For example, at the University of Waterloo, you can get a Windows XP CD for free if you are a student. I'm sorry, but I don't know how much Waterloo paid Microsoft for this... so maybe it isn't quite free. I actually got Windows XP from them. I'm mostly a Linux user, but they sucked me in with the free CD thing. Came with a unique activation ID and everything. How soon will it be before Microsoft starts giving away Windows XP to small businesses, home users, then big businesses. They can still make their main money from Office and other things. I think they're going to have to keep cutting costs, in order to match the cost of Linux.
Basically what I'm trying to say is that Microsoft fully realizes that Linux is a somewhat cheaper system to opearate, and this is one way that it is trying to change that. By giving it away free, they've reduced the cost of running Windows by a lot.
-
[OT] My professor
Er, your rant is rather mis-placed: my instructor was actually a professor of computer science, Stephen Mann. From the stories he told in class, he knows a lot about the history of CS, and was just not in the 'know' on this topic, because SETI is simply more popular than Distributed.net these days, and few people know that Distributed.net even exists - a sad thing.
-
Re:One Time Pad != Encryption
The definitive text on cryptography, The Handbook of Applied Cryptography, defines the OTP as a type of encryption...I know this is Slashdot but I don't think your arbitrary definitions help here.
Sending a CD worth of random data via a secure channel in advance and then sending an encrypted message with the knowledge that it will be unbreakable is sometimes worth prior thought. Sure, it may not be usefull for the masses who require this kind of security or don't know their going to communicate in the future but to claim that this cipher "isn't encryption" is bull.
-
Re:Who started this?
And of course, everything that a Microsoft PR flak says must be true ... Clegg states quite frankly that it was Waterloo who first proposed the idea of C# as a teaching language. So this initiative did not come from MS. :-)I have been corresponding with some Waterloo faculty (I am a UW alum) and learned that the University Administration sprang it on the departments as a surprise, without consulting with the curriculum committees. Computer Science (in the Math Faculty) was adroit enough to avoid getting caught in this meat grinder, but ECE (part of the Engineering Faculty) was not so lucky, and had this agreement announced on top of them.
So whether it came from Microsoft or not, it did not come from the faculty, and thus was fundamentally motivated by money.
Crispin, U.Waterloo BMath/CS class of 1988
----
Crispin Cowan, Ph.D.
Chief Scientist, WireX Communications, Inc.
Immunix: Security Hardened Linux Distribution
Available for purchase -
Re:Who started this?
And of course, everything that a Microsoft PR flak says must be true ... Clegg states quite frankly that it was Waterloo who first proposed the idea of C# as a teaching language. So this initiative did not come from MS. :-)I have been corresponding with some Waterloo faculty (I am a UW alum) and learned that the University Administration sprang it on the departments as a surprise, without consulting with the curriculum committees. Computer Science (in the Math Faculty) was adroit enough to avoid getting caught in this meat grinder, but ECE (part of the Engineering Faculty) was not so lucky, and had this agreement announced on top of them.
So whether it came from Microsoft or not, it did not come from the faculty, and thus was fundamentally motivated by money.
Crispin, U.Waterloo BMath/CS class of 1988
----
Crispin Cowan, Ph.D.
Chief Scientist, WireX Communications, Inc.
Immunix: Security Hardened Linux Distribution
Available for purchase -
Re:Who started this?
And of course, everything that a Microsoft PR flak says must be true ... Clegg states quite frankly that it was Waterloo who first proposed the idea of C# as a teaching language. So this initiative did not come from MS. :-)I have been corresponding with some Waterloo faculty (I am a UW alum) and learned that the University Administration sprang it on the departments as a surprise, without consulting with the curriculum committees. Computer Science (in the Math Faculty) was adroit enough to avoid getting caught in this meat grinder, but ECE (part of the Engineering Faculty) was not so lucky, and had this agreement announced on top of them.
So whether it came from Microsoft or not, it did not come from the faculty, and thus was fundamentally motivated by money.
Crispin, U.Waterloo BMath/CS class of 1988
----
Crispin Cowan, Ph.D.
Chief Scientist, WireX Communications, Inc.
Immunix: Security Hardened Linux Distribution
Available for purchase -
Re:Who started this?
And of course, everything that a Microsoft PR flak says must be true ... Clegg states quite frankly that it was Waterloo who first proposed the idea of C# as a teaching language. So this initiative did not come from MS. :-)I have been corresponding with some Waterloo faculty (I am a UW alum) and learned that the University Administration sprang it on the departments as a surprise, without consulting with the curriculum committees. Computer Science (in the Math Faculty) was adroit enough to avoid getting caught in this meat grinder, but ECE (part of the Engineering Faculty) was not so lucky, and had this agreement announced on top of them.
So whether it came from Microsoft or not, it did not come from the faculty, and thus was fundamentally motivated by money.
Crispin, U.Waterloo BMath/CS class of 1988
----
Crispin Cowan, Ph.D.
Chief Scientist, WireX Communications, Inc.
Immunix: Security Hardened Linux Distribution
Available for purchase -
Re:Heaven help us
-
Old digs in Toronto dry, but Waterloo high
Too bad: According to the map my old places on D'Arcy and Kensington Ave. would have been Wi-Dri.
Fortunately, my new digs are working on going wireless, and legally.
-
Here's a BETTER browsable architecture of Linux
Here is a much simpler and more informative archiecture model that is browsable from our research group. It requires a Java-enabled browser and some patience for the initial loading of the data.
See also the paper at the Intl Conf on Software Engineering that was written around it. -
Here's a BETTER browsable architecture of Linux
Here is a much simpler and more informative archiecture model that is browsable from our research group. It requires a Java-enabled browser and some patience for the initial loading of the data.
See also the paper at the Intl Conf on Software Engineering that was written around it. -
I've done a bit of both
First, note that not every distance degree screams "DISTANCE." I went to the University of Waterloo on-campus for one of my Bacholer's degrees, and am completing my second Bacholer's via UW's Distance Ed program. Degrees completed by UW's distance ed. program simply say "University of Waterloo".
Personally, I feel I learn more on-campus than through distance. On-campus learning allows a lot more room for discussion (with the prof and with other students) which I find very valuable. Plus, because on-campus classes require me to be in class at set times, I find it a lot easier to keep attending and keep up with the material.
Distance Ed is a lot more flexible, but this can be dangerous if you procrastinate. It's much harder to stay on top of all the material when it's completely up to you to do so. However, if you get through that, you can turn it into an advantage during interviews -- it's a great example of self-motivation, independant work, perserverance and organization.
-
Re:From what I've seen...
When I visited Waterloo to see their CompSci department, they basically told me that half of my classes would be mathematics, the other half would be computer science. Sure there were a few elective spots if you didn't choose one of the more particular options available.
For example: Honors CS - Bioinformatics (one of the more varied CS programs). I don't see any non science/math courses required. Sure you get 5 or 6 electives, but that's not really encouraging a diverse education. Similarly, U of T seems to only require one writing course for CS students. UVic requires one technical writing course and one English course.
Check out this from CMU for a comparison. All CS students are required to complete a non-CS minor. Also see UTD for another example.
As a senior in HS deciding where to go for college I am forced to make some generalizations to narrow down the field. My observation has been that a typical American school requires a broader education than a typical Canadian school (no offense to Canadians; heck, I'm originally from Canada).
So why is this a problem? I've read plenty of articles in Canadian news publications that complain about the loss of students to American programs and, later, American jobs. As a Canadian living in the US, I'm not likely to head back to Canada for an education. -
you get what you pay for...
Free tuition and housing. Sounds like a tasty deal!
Makes you wonder if there's an agenda. What kind of grads will this place really churn out? How does the college pay for its operations? There's some big bucks involved: A $400 million pledge from the FW Olin Foundation. (Not my intention to sound critical -- but if, say, Microsoft were to sponsor parts of a university program, it does raise eyebrows...)
I guess my question is, how will the market value (the holder of) a free degree? I scraped through countless crap jobs and jumped through inane scholarship hoops to pay my way through. Guess I feel a bit jealous. -
wrote a work report about this
I've put a copy of my work report up on my webspace. Take a look if you're interested; it provides a good comparison against Java, and shows why C# is, in my opinion, inferior: Every chance they had to do something right, they blew it. Sorry the link took so long to get up.
-
Re:Waterloo has the most recognised CS girls
Damn straight. And you can even get that slogan on a tank top.
-
Re:Someone else is going to say it anyway....
"It's already Bill's waterloo, and has been for years. MSFT has, for a long time, harvested the top CS and ENGG people from waterloo to work for them. This is a 'formalisation' of that relationship which has existed for a long time. It's pretty common knowledge when you get to the end of high school in Ontario, if you're a computers/engineering type person (like I was) that this is the case. All your upper CS/physical science teachers know about it through their former students who went to UW."
I agree, Microsoft has always had a strong presence at UW. When I was at UW during the mid 90's, I noticed a few rooms in the MC (Math and Computer) building labelled something to the effect of 'Microsoft OS Research' or the like. Also, UWaterloo has a huge co-op program and more than a few CS jobs posted each term were for Microsoft. Not to mention, there are more than a few Waterloo Alumni with high level MS job positions - it's only natural that Alumni support their own univeristy when hiring:
UW Alumni @ Microsft Committee: About US
http://www.watmsft.org/aboutus.aspx
Alumni at Microsoft join campaign (article in the middle of the page)
http://www.bulletin.uwaterloo.ca/2002/jun/19we.htm l
As for the courses in C#, well I'm sure Microsoft is doing what it can to build acceptance for it. The thing you have to keep in mind about programming courses at Uwaterloo though is that they're more concerned about teaching proper programming theory than the practicality of the language you're using. You can learn any programming language given time, but it's the programming practices that are more valuable in the long run. I took Civil Engineering for a while, and the language we had to use in that course was FORTRAN77/87. Not a very useful language these days, but it taught the basics about programming. I was more than a bit miffed when they switched over to teaching C in CivEng a couple years later though... -
Re:So?So as a pure math major, I can assume you're completely talking out of your ass here? How many CS courses have you taken? CS134? Maybe CS234 as well? Stick to real analysis, buddy.
As a CE major, let me tell you how completely ass-backwards wrong you are about the E&CE programming curriculum. Check out the E&CE course descriptions and look at the x5x series courses (i.e. 150, 250, 251, 354, etc.). Does it look like I've been taking "Intro to MFC" or "Advanced Web Programming"? If I wanted to do that shit, I would have gone to fucking DeVry. Let the CS majors keep doing their programming, math & arts electives and we'll keep doing our programming and hardware design.
-
Re:modern languages, antique methodologyI'd much rather take two semesters of a class that does something real (like tweak with linux, or write a C compiler) than one semester of something that won't be useful in the real world (tweaking NACHOS, or a COOL compiler).
Um... how about CS452, realtime programming (write a realtime OS), or CS444, compiler construction (our group wrote a C compiler)? And there are lots more decent fourth year courses where those came from. NACHOS is just used in a third year course to teach OS basics, and even so it's not a bad course.
How long does it take to learn a new programming language, and its syntax?
Hopefully not long, because few if any UW courses actually teach you a language, but rather theory and concepts (learning the language being used - Modula-3, C, C++, uC++, perl, matlab, 80x86 assembler, whatever - is up to you. Ditto for tools like make - go read the GNU make docs, for example, and quit whining.
czth
-
Re:modern languages, antique methodologyI'd much rather take two semesters of a class that does something real (like tweak with linux, or write a C compiler) than one semester of something that won't be useful in the real world (tweaking NACHOS, or a COOL compiler).
Um... how about CS452, realtime programming (write a realtime OS), or CS444, compiler construction (our group wrote a C compiler)? And there are lots more decent fourth year courses where those came from. NACHOS is just used in a third year course to teach OS basics, and even so it's not a bad course.
How long does it take to learn a new programming language, and its syntax?
Hopefully not long, because few if any UW courses actually teach you a language, but rather theory and concepts (learning the language being used - Modula-3, C, C++, uC++, perl, matlab, 80x86 assembler, whatever - is up to you. Ditto for tools like make - go read the GNU make docs, for example, and quit whining.
czth
-
Re:Welcome to the new feudalism.
I would like to point out one of the few universities where this isn't true. The University of Waterloo.
-
Glad to be a grad...@%!!*$#@! Didn't think I'd see the day that Waterloo would sell out. Sure, you say "It's just engineers, and they're none too bright anyway," but then think: "First they came for the engineers, but I wasn't an engineer, so I didn't care...." I don't think this crap will fly so well in the Math faculty (which is where the Computer Science Department - maybe by now the School of Computer Science - is). Definitely not making it mandatory; mathies will hang themselves from their pink ties first.
I'm glad to be out of there before this sad, sad day came.
Hm, interesting that the story's on UWstudent.org... I wonder how well it took the slashdotting. I have a UWstudent.org T-shirt around here someplace, back when Ryan, Paul, and Rob and some others started the site. Most of the founders of the site were on staff at Imprint (UW student paper), as was I. Nice to see them making headlines.
czth
-
Re:Rio 500
it is possible (only via the linux drivers, afaik) to send songs in both directions, i.e., send them to the player and get them back.
Don't tell the RIAA, but Riorio is a Windows program that'll let you transfer mp3's both ways. -
my other pickJesus, I had to pick between UW comp eng and UofT Engineering Science (to be nano option). Thankfully I chose UofT. I'd be much more fulfilled knowing that the learning I paid for isn't being influenced in such a manner as not to optimum.
I'm really surprised that UW went for this; I realize it's a lot of money, but UW has been known for being pretty active in the Open Source community.
It will be interesting to see how this develops, for not only UW, but other universities as well...
Hans
-
Let us not forget the grandaddy...WATFOR (ahh, the memories
...) and the grandchild WATCOM.
These days most everything MS does makes my skin crawl and things like this make me embarrassed to admit that I went to U of W.
But I can still distance myself from it and assert my manhood by saying that I was in Electrical Engineering at U of W. The Engineering mascot was a 6-foot steel pipe wrench known as the "Rigid Tool".
-
Re:Buying mandatory classes?
You forgot to include the students that spend 4 years getting semi-useless degrees (okay, I'm being generous with the "semi"), and then default on their government loans.
-
school of cs might not fallSee the minutes of the UW CS Curriculum Committee's Discussion of the Proposed Microsoft University of Waterloo proposal.
Vasiga saves the day!
:)
Well, I guess other ppl helped, too. -
Re:The Other UW and Microsoft
"I suspect University of Waterloo is has a pedagogical philosophy more along the lines of a community college and scimps on theory."
Not at all... Waterloo is VERY heavy on theory. It's not rated one of the top Canadian universities year after year for behaving like a community college. You learn theory in class, and you learn practical on your co-op terms... last time I heard, UW had the largest co-op program in the entire world. It's a pretty good mix, not to mention it helps you pay your own way.
Just don't venture into the psych building, or the 6th floor of the math building without a compass and a ball of string, or you'll never get out alive. -
Re:The Other UW and Microsoft
I suspect University of Waterloo is has a pedagogical philosophy more along the lines of a community college and scimps on theory.
Suspect again. U(W) has very rigorous theory requirements. See here for the Electrical & Computer Engineering degree requirements.
-
Not an "additional mandatory course"It looks the like "Microsoft is the anti-Christ" brigade is overhyping this as usual.
This is not a case of an "additional mandatory course on C#" being added to the curriculum. This is an instance where the language of instruction in one of the already mandatory courses, namely ECE 150, is being changed from C++ to C#.
This does not make the degree a "Microsoft degree," anymore than using Java in introductory courses (as UW's School of Computer Science does) makes a degree a "Sun degree."
-
Not an "additional mandatory course"It looks the like "Microsoft is the anti-Christ" brigade is overhyping this as usual.
This is not a case of an "additional mandatory course on C#" being added to the curriculum. This is an instance where the language of instruction in one of the already mandatory courses, namely ECE 150, is being changed from C++ to C#.
This does not make the degree a "Microsoft degree," anymore than using Java in introductory courses (as UW's School of Computer Science does) makes a degree a "Sun degree."
-
think this is a bad idea? tell the president!If you think this is a bad idea, let UW President David Johnston know:
- email president@uwaterloo.ca
- phone 519-888-4567, Ext. 2202
- fax 519-888-6337 -
think this is a bad idea? tell the president!If you think this is a bad idea, let UW President David Johnston know:
- email president@uwaterloo.ca
- phone 519-888-4567, Ext. 2202
- fax 519-888-6337 -
Re:Someone else is going to say it anyway....
UW has been having financial problems for some time now.. Here's one related article. Considering most Canadian universities seriously lack funding, I'm tempted to ask, 'How long before the others give in, too'?
-
No, not at all
Being a design engineer in the vehicle industry, I can deny with absolute certainty that IT might be overrated. Solid modelling (aka 3D CAD) is standard since mid-90's and other things like PDM is rapidly catching on. Even the smallest of our suppliers seems finally to have understood the need.
On the other hand, you have dynamic simulation, like MBS, opening a completely new field for the engineer: real dynamics instead of just kinematics!
So, the role of IT for the R&D departments in the industry can hardly be overrated! Anybody who is implying this is {insert your favorite noun here}. And since our IT decision makers are all having an engineering degree (or are supervised by ones who have), our budget for IT is steadily increasing (or at least constant on a high level), largely unaffected by the collapse of the .com bubble. -
Already Started
I have already started something that you have spoken of on my website. It has been a very interesting experiment so far...
Some things I've noticed are that creative bits of writing occur in bursts. That is, when one (usually new) person comes along and writes a whole bunch, everyone else builds on it and a good couple of pages are generated instantly.
This leads to lots of deadspace, though, but maybe I just haven't gotten creative people.
-
Re:Applied Cryptography
It is available for download, the full book, in PDF or Postscript, here. Please read the copyright notices and respect them.
-
Re:Not A Professor
It's bad enough that every numbskull who can code Visual Basic calls himself an "engineer"
Actually, in Canada, you can't call yourself an engineer with just an MCSE. -
Re:Computers are tools
-
slashdotted!
This paper analyzes the amount of source code in GNU/Linux, using Red Hat Linux 7.1 as a representative GNU/Linux distribution, and presents what I believe are interesting results.
In particular, it would cost over $1 billion ($1,000 million - a Gigabuck) to develop this GNU/Linux distribution by conventional proprietary means in the U.S. (in year 2000 U.S. dollars). Compare this to the $600 million estimate for Red Hat Linux version 6.2 (which had been released about one year earlier). Also, Red Hat Linux 7.1 includes over 30 million physical source lines of code (SLOC), compared to well over 17 million SLOC in version 6.2. Using the COCOMO cost model, this system is estimated to have required about 8,000 person-years of development time (as compared to 4,500 person-years to develop version 6.2). Thus, Red Hat Linux 7.1 represents over a 60% increase in size, effort, and traditional development costs over Red Hat Linux 6.2. This is due to an increased number of mature and maturing open source / free software programs available worldwide.
Many other interesting statistics emerge. The largest components (in order) were the Linux kernel (including device drivers), Mozilla (Netscape's open source web system including a web browser, email client, and HTML editor), the X Window system (the infrastructure for the graphical user interface), gcc (a compilation system), gdb (for debugging), basic binary tools, emacs (a text editor and far more), LAPACK (a large Fortran library for numerical linear algebra), the Gimp (a bitmapped graphics editor), and MySQL (a relational database system). The languages used, sorted by the most lines of code, were C (71% - was 81%), C++ (15% - was 8%), shell (including ksh), Lisp, assembly, Perl, Fortran, Python, tcl, Java, yacc/bison, expect, lex/flex, awk, Objective-C, Ada, C shell, Pascal, and sed.
The predominant software license is the GNU GPL. Slightly over half of the software is simply licensed using the GPL, and the software packages using the copylefting licenses (the GPL and LGPL), at least in part or as an alternative, accounted for 63% of the code. In all ways, the copylefting licenses (GPL and LGPL) are the dominant licenses in this GNU/Linux distribution. In contrast, only 0.2% of the software is public domain.
This paper is an update of my previous paper on estimating GNU/Linux's size, which measured Red Hat Linux 6.2 [Wheeler 2001]. Since Red Hat Linux 6.2 was released in March 2000, and Red Hat Linux 7.1 was released in April 2001, this paper shows what's changed over approximately one year. More information is available at http://www.dwheeler.com/sloc. 1. Introduction The GNU/Linux operating system has gone from an unknown to a powerful market force. Netcraft found that, of the systems running web servers on June 2001, GNU/Linux was now the second most popular operating system (with 29.6%, versus Windows' 49.6%) [Netcraft 2001]. Another survey, of primarily European and educational sites, found that GNU/Linux was used more than any other operating system (of the sites it surveyed) [Zoebelein 1999]. IDC found that 25% of all server operating systems purchased in 1999 were GNU/Linux, making it second only to Windows NT's 38% [Shankland 2000a].
There appear to be many reasons for this, and not simply because GNU/Linux can be obtained at no or low cost. For example, experiments suggest that GNU/Linux is highly reliable. A 1995 study of a set of individual components found that the GNU and GNU/Linux components had a significantly higher reliability than their proprietary Unix competitors (6% to 9% failure rate with GNU and Linux, versus an average 23% failure rate with the proprietary software using their measurement technique) [Miller 1995]. A ten-month experiment in 1999 by ZDnet found that, while Microsoft's Windows NT crashed every six weeks under a ``typical'' intranet load, using the same load and request set the GNU/Linux systems (from two different distributors) never crashed [Vaughan-Nichols 1999].
However, possibly the most important reason for GNU/Linux's popularity among many developers and users is that its source code is generally ``open source software'' and/or ``free software''. A program that is ``open source software'' or ``free software'' is essentially a program whose source code can be obtained, viewed, changed, and redistributed without royalties or other limitations of these actions. A more formal definition of ``open source software'' is available from the Open Source Initiative [OSI 1999], a more formal definition of ``free software'' (as the term is used in this paper) is available from the Free Software Foundation [FSF 2000], and other general information about these topics is available at Wheeler [2000a]. Quantitative rationales for using open source / free software is given in Wheeler [2000b]. The GNU/Linux operating system is actually a suite of components, including the Linux kernel on which it is based, and it is packaged, sold, and supported by a variety of distributors. The Linux kernel is ``open source software''/``free software'', and this is also true for all (or nearly all) other components of a typical GNU/Linux distribution. Open source software/free software frees users from being captives of a particular vendor, since it permits users to fix any problems immediately, tailor their system, and analyze their software in arbitrary ways.
Surprisingly, although anyone can analyze GNU/Linux for arbitrary properties, I have found little published analysis of the amount of source lines of code (SLOC) contained in a GNU/Linux distribution. Microsoft unintentionally published some analysis data in the documents usually called ``Halloween I'' and ``Halloween II'' [Halloween I] [Halloween II]. Another study focused on the Linux kernel and its growth over time is by Godfrey [2000]; this is an interesting study but it focuses solely on the Linux kernel (not the entire operating system). Paul G. Allen posted some results from running Scientific Toolworks, Inc.'s tools on the Linux kernel, but this analysis only considered C code (including headers) - ignoring the many other languages used in constructing the Linux kernel (e.g., assembly language), and only concentrating on the kernel. The Free Code Graphing Project at http://fcgp.sourceforge.net generates a graphical representation of a program (currently, the Linux kernel), but only of the C code. In a previous paper, I examined Red Hat Linux 6.2 and the numbers from the Halloween papers [Wheeler 2001].
This paper updates my previous paper, showing estimates of the size of one of today's GNU/Linux distributions, and it estimates how much it would cost to rebuild this typical GNU/Linux distribution using traditional software development techniques. Various definitions and assumptions are included, so that others can understand exactly what these numbers mean. I have intentionally written this paper so that you do not need to read the previous version of this paper first.
For my purposes, I have selected as my ``representative'' GNU/Linux distribution Red Hat Linux version 7.1. I believe this distribution is reasonably representative for several reasons:
- Red Hat Linux is the most popular Linux distribution sold in 1999 according to IDC [Shankland 2000b]. Red Hat sold 48% of all copies in 1999; the next largest distribution in market share sales was SuSE (a German distributor) at 15%. Not all GNU/Linux copies are ``sold'' in a way that this study would count, but the study at least shows that Red Hat's distribution is a popular one.
- Many distributions (such as Mandrake) are based on, or were originally developed from, a version of Red Hat Linux. This doesn't mean the other distributions are less capable, but it suggests that these other distributions are likely to have a similar set of components.
- All major general-purpose distributions support (at least) the kind of functionality supported by Red Hat Linux, if for no other reason than to compete with Red Hat.
- All distributors start with the same set of open source software projects from which to choose components to integrate. Therefore, other distributions are likely to choose the same components or similar kinds of components with often similar size for the same kind of functionality.
Different distributions and versions would produce different size figures, but I hope that this paper will be enlightening even though it doesn't try to evaluate ``all'' distributions. Note that some distributions (such as SuSE) may decide to add many more applications, but also note this would only create larger (not smaller) sizes and estimated levels of effort. At the time that I began this project, version 7.1 was the latest version of Red Hat Linux available, so I selected that version for analysis.
Note that Red Hat Linux 6.2 was released on March 2000, Red Hat Linux 7 was released on September 2000 (I have not counted its code), and Red Hat Linux 7.1 was released on April 2001. Thus, the differences between Red Hat Linux 7.1 and 6.2 show differences accrued over 13 months (approximately one year).
Clearly there is far more open source / free software available worldwide than is counted in this paper. However, the job of a distributor is to examine these various options and select software that they believe is both sufficiently mature and useful to their target market. Thus, examining a particular distribution results in a selective analysis of such software.
Section 2 briefly describes the approach used to estimate the ``size'' of this distribution (more details are in Appendix A). Section 3 discusses some of the results. Section 4 presents conclusions, followed by an appendix. GNU/Linux is often called simply ``Linux'', but technically Linux is only the name of the operating system kernel; to eliminate ambiguity this paper uses the term ``GNU/Linux'' as the general name for the whole system and ``Linux kernel'' for just this inner kernel. 2. Approach My basic approach was to:
- install the source code files in uncompressed format; this requires carefully selecting the source code to be analyzed.
- count the number of source lines of code (SLOC); this requires a careful definition of SLOC.
- use an estimation model to estimate the effort and cost of developing the same system in a proprietary manner; this requires an estimation model.
- determine the software licenses of each component and develop statistics based on these categories.
More detail on this approach is described in Appendix A. A few summary points are worth mentioning here, however. 2.1 Selecting Source Code
I included all software provided in the Red Hat distribution, but note that Red Hat no longer includes software packages that only apply to other CPU architectures (and thus packages not applying to the x86 family were excluded). I did not include ``old'' versions of software, or ``beta'' software where non-beta was available. I did include ``beta'' software where there was no alternative, because some developers don't remove the ``beta'' label even when it's widely used and perceived to be reliable.
I used md5 checksums to identify and ignore duplicate files, so if the same file contents appeared in more than one file, it was only counted once (as a tie-breaker, such files are assigned to the first build package it applies to in alphabetic order).
The code in makefiles and Red Hat Package Manager (RPM) specifications was not included. Various heuristics were used to detect automatically generated code, and any such code was also excluded from the count. A number of other heuristics were used to determine if a language was a source program file, and if so, what its language was.
Since different languages have different syntaxes, I could only measure the SLOC for the languages that my tool (sloccount) could detect and handle. The languages sloccount could detect and handle are Ada, Assembly, awk, Bourne shell and variants, C, C++, C shell, Expect, Fortran, Java, lex/flex, LISP/Scheme, Makefile, Objective-C, Pascal, Perl, Python, sed, SQL, TCL, and Yacc/bison. Other languages are not counted; these include XUL (used in Mozilla), Javascript (also in Mozilla), PHP, and Objective Caml (an OO dialect of ML). Also code embedded in data is not counted (e.g., code embedded in HTML files). Some systems use their own built-in languages; in general code in these languages is not counted.
-
Re:Clarity is everything -- MS=bad design
Here's your friendly
/. neighbourhood rhetoric wonk weighing in... I have to wonder what the semantics, grammar, and rhetoric of the Longhorn interface are going to be. In case you're wondering, the underlying ideational structures of the interface create its meaning, and make the difference between dumb and intelligent design, useful and frustrating, easy-to-learn and Adobe ;) and so on. So far I haven't been too impressed with much of anything MS, rhetoric-wise. Some pretty impressive people (not just weirdos like me) have also weighed in on the importance of this issue, like:
Terry Winograd
Joseph Goguen
Eben Moglen
Neil Randall
and a bunch of lesser lights including Neil Stephenson.
While I'm not against innovation, I have a hard time imagining that MS could actually come up with something more intelligent than these folks, all of whom, I notice, aren't working for MS. Even Neil Randall, who apparently took some money from MS to do a study works for the University of Waterloo (hi, Neil!).
Maybe I'm just a Jaded Cynic, but I have to wonder. -
Re:Clarity is everything -- MS=bad design
Here's your friendly
/. neighbourhood rhetoric wonk weighing in... I have to wonder what the semantics, grammar, and rhetoric of the Longhorn interface are going to be. In case you're wondering, the underlying ideational structures of the interface create its meaning, and make the difference between dumb and intelligent design, useful and frustrating, easy-to-learn and Adobe ;) and so on. So far I haven't been too impressed with much of anything MS, rhetoric-wise. Some pretty impressive people (not just weirdos like me) have also weighed in on the importance of this issue, like:
Terry Winograd
Joseph Goguen
Eben Moglen
Neil Randall
and a bunch of lesser lights including Neil Stephenson.
While I'm not against innovation, I have a hard time imagining that MS could actually come up with something more intelligent than these folks, all of whom, I notice, aren't working for MS. Even Neil Randall, who apparently took some money from MS to do a study works for the University of Waterloo (hi, Neil!).
Maybe I'm just a Jaded Cynic, but I have to wonder. -
Re:Clarity is everything -- MS=bad design
Here's your friendly
/. neighbourhood rhetoric wonk weighing in... I have to wonder what the semantics, grammar, and rhetoric of the Longhorn interface are going to be. In case you're wondering, the underlying ideational structures of the interface create its meaning, and make the difference between dumb and intelligent design, useful and frustrating, easy-to-learn and Adobe ;) and so on. So far I haven't been too impressed with much of anything MS, rhetoric-wise. Some pretty impressive people (not just weirdos like me) have also weighed in on the importance of this issue, like:
Terry Winograd
Joseph Goguen
Eben Moglen
Neil Randall
and a bunch of lesser lights including Neil Stephenson.
While I'm not against innovation, I have a hard time imagining that MS could actually come up with something more intelligent than these folks, all of whom, I notice, aren't working for MS. Even Neil Randall, who apparently took some money from MS to do a study works for the University of Waterloo (hi, Neil!).
Maybe I'm just a Jaded Cynic, but I have to wonder. -
Re:How about free books available online?
O'Reilly Open Books Project
Bruce Eckel's "Thinking in..." books
Data Structures and Algorithms books
MIT's Structure and Interpretation of Programming Languages
Numerical Recipes series
Handbook of Applied Cryptography
The Art of Assembly Language Programming
Object-Oriented System Development
GTK+/Gnome Application Development
GNU Autoconf, Automake, and Libtool
Effective Perl (partial)
Programming Pearls (partial) -
OT: iso-8859-7 characters in your signature
-Ãéñãéïò Ôóßñïò (you need iso-8859-7 and respecive font to view that correctly)
Use Unicode instead of iso-8859-7 in your signature and everyone with good software will see your text, with no need to write "you need iso-8859-7 and respecive font to view that correctly". The Greek characters starts from U+0391 (here's a PDF chart and Named and Numeric HTML Entities). The Greek characters are very important in Latin based languages for mathematic formulas, so they are usually installed by default in modern operating systems and they even have named HTML entities, so you can write α β γ δ Ψ Ω in your sig or comments and get . I don't know what software do you use, but I know that under Debian GNU/Linux which I use, the unicode Greek fonts are installed by default and Mozilla displays them also by default (as well as lots of characters from many exotic scripts). Hope it helps.
—
-
THIS WEEK : Homeland Defence
1. GW starts DoHD
2. UK politicians call for reform of intelligence agencies.
3. Austrailia increases surveillance.
4. New Zealand?
5. Canada? The UKUSA agreement countries. Well spank my arse and call me charlie. Could these be at all related? -
Pink Tie?
Are the U Waterloo mathies releasing a distro optimized for Maple? Why else would there be a Pink Tie Linux?