Yawn. This is old old old. Go look at here to find out the Australian Bureau of Statistics response.
Every properly designed survey has a defined set of coding rules used to code and therefore analyse the responses. If you want to see trends over time, then you try not to change the coding rules significantly from census to census, so the current definitions might simply reflect historical attitudes about religion in Australia.
Having been on a cross-pacific split project before, I would strongly advise that you avoid this if at all possible.
To properly imaging how it's going to end up, think of working with a team of people, each of which you've never seen, and with whom you speak on the phone for no more than 30 minutes a week.
If you cannot avoid the split project, then you must allow for:
Really, really detailed specifications. The people in another timezone cannot yell over the partition to clarify ambiguities in the spec.
Have frequent visits between sites for personnel. People need to get to know the rest of the team personally, otherwise an US and THEM attitude will definately exist.
You will need excellent change control, especially branching and merging. I personally have used ClearCase on a project such as this and I can tell you that it was a godsend, although it was hugely expensive in terms of purchase and maintenance cost.
Make sure everyone really knows how to use the change control system!
Absolutely rigourous release procedure from one site to the other.
Daily teleconferences to review status and resolve issues.
Do not attempt to compress delivery cycles too small. If it's less than a month, it's probably not going to work.
Each "side" of the ocean must be able to work as an independent team. That is, it must have a designated technical lead who is permitted to make all technical decisions. It also must have a project manager for that part.
There are a whole bunch of other issues that are involved. In my case, the project was interesting, but the management and resolution of technical issues was an absolute nightmare.
In the past, I've done a fair bit of undergrad CS course marking. It never ceased to amaze me that:
a) students copied from other students in the same tutorial class (who would most likely get marked by the same person), and
b) students copied their answers from the dumbest possible fellow student (so many times you'd detect copying because two students attempted the assignment in exactly the same completely stupid and incorrect manner.)
Sure, you should do the best that you can to produce a reasonable estimate - a good idea here is to produce *three*, a low, expected and high estimate, which will at least show how uncertain you are with your estimate.
Now, your boss may well choose to publish the lowest one - that's his/her call - but you should always immediately notify him/her as soon as you know of anything that causes any of the three estimates to change. Don't wait until the next project meeting, it's your job to keep your boss informed of changes that may affect the project, and to do it in a timely fashion.
I am not a real engineer, just software, so what I'm about to propose may not be correct, but I'm going to do it anyway:-)
I think part of the problem is that in real world engineering, there are known physical limits to what can be done, known upper bounds for materials performance, and known lower bounds for environmental factors. This allows engineers to design using models that are less complex than the systems they are building - "If it's 5mm steel then it has a safety margin of 2". In a software system, it's hard to reduce the complexity down, and still fully describe the system. You can't "beef up a beam" in software - it is either correct, or not correct.
The point that you make regarding accreditation is true. By and large it has happened since the consequence of failure for most systems is low in the eyes of the general public. The probability of killing someone with a malfunctioning general purpose application is so close to zero to be not worth mentioning. Faulty real engineering can kill people. This makes the cost of software failure low, so the risk to the company is minimal, which therefore means nothing is done about it, since the cost of fixing it is higher than the risk cost multiplied by the probability of that risk occurring. I believe that the only way this will change would be through regulation, and no country is going to do that for fear of destroying its software industry by spiralling employment/training costs.
If you read the article, you would notice that the information provided was a legal opinion, and from the article, it is not clear that this information came from the Attorney General, or his legal advisor. Any legal person can give legal opinion, whether their opinion is upheld by the courts is another thing entirely.
Assuming the advice *did* actually originate from the Attorney General, as the Attorney General is a QC, then one would assume that he is probably more qualified to give legal opinion on Australian Law than anyone else on Slashdot:-)
As for "the Attorney General passing new laws", this law was passed in the same way any other law - i.e. through both houses etc, etc. As such, the Australian legistature suffers from the same problems all other legislatures do when attempting to extend media laws to the Internet.
Just in case anyone didn't know, the new Digital Agenda Act comes into force today in Australia.
And the US is so much better, with the DMCA and UCITA....
This "liberal arts" thing must be some artifact of how the US education/employment system works. Obviously I don't understand it properly - maybe the concept of undergraduate/graduate is different, or the course structure is different?
On the other hand, I have noticed that Australian technical degrees (engineering, comp sci, etc.) seem to be highly specialized compared to their equivalent US degrees. For example, I did a CS degree, during which I did only math, physics, and comp sci subjects - there were no english, history or other humanities-type subjects required. I think this might happen because Australian Universities don't have a common first year for everyone (you specialize right from the start).
In Australia, a liberal arts undergraduate degree will do squat to get you a software engineering job *as a first job*.
I do, however, agree that after the first few years, no employer will be particularly interested in what your degree was. At that point it'll all be based on prior experience, which can be a problem if you get pigeonholed in your first few years of employment.
I might be seeing a skewed view, since I'm in Brisbane, not Sydney or Melbourne, but I see no wireless data of any real significance in Australia. At this time, the only viable wireless data choice is 9600 baud over GSM.
For those who are interested, here is how I see the Australian data situation:
Australia has two mobile network technologies (GSM and CDMA) and two major telcos (Telstra and Optus - there are a bunch of smaller ones as well.) WAP is currently only supported on GSM, and there are few WAP phones available (I have tried most of them, and they are all crap.) There are no analog phone networks remaining. Digital phone coverage is mostly pretty good. In home data, DSL only started rolling out in August of this year, and the Cable network is not expanding (although this could have changed recently.) Cheap cable charges are around AUS$70 per month with some form of bandwidth or usage cap. DSL was supposed to be around AUS$100 per month, but that might change depending on the current bunfight between Telstra and the ACCC.
I don't think too much should be read into the deployments of 802.11. Universities are putting in 802.11 networks to avoid cabling costs. Small companies will most likely do the same. They're all doing it to run their existing applications on laptops. In the long term, this is the same business model as for current networks - I buy equipment and deploy for my private network. I'd expect it to be dominated by the incumbents (Cisco et al).
This gets to my big issue with Wireless.... What's the application? Okay, so I've got a data pipe that goes with me... what do I want to do with it? Now, once I find an application, where's the money in it for a provider? Until I see an application that both really meets a consumer problem/desire *and* has a believable revenue model I don't feel that wireless is going anywhere. This is true regardless of the market.
I was at CTIA recently in Santa Clara, and it seemed to me that the US wireless "boom" has been fed by companies giving roving salesmen PDAs and using wireless data networks to access their E-mail from these PDAs. Of course, people attending CTIA are again a biased sample! For at least the Bay area, there would be sufficient size in this market to support some providers. I don't see such a critical mass forming in Australia, or if it does, it'll be in Sydney only.
For those of you thinking about the preferential voting system proposed by McReynolds, you should first look outside the U.S. to other countries that have implemented such systems.
In Australia, preferential voting is used, and we still have what is called "two-party preferred" effects - there are only really two parties that matter, and it is difficult for minority parties to have a voice in government.
There has been an argument that the voting system should revert to "first past the post" (i.e. primary vote only, no preferences), or perhaps use a system such as the Hare-Clarke proportional voting system, although such systems also have their own problems.
I know the original article was US-centric, however I just thought I'd put some non-US perspective in here. Note that this is a generalization, which will not necessarily apply to all Australian Universities, or courses within these Universities. Also note that this information dates from the late 1980's - early 1990's - perhaps someone can enlighten me on the changes that have happened in the last few years.
It is my understanding that US universities require all students to do a common first year, and have a component of the liberal arts in all degrees (If I'm wrong, I'd be really interested to hear more about what it's really like.)
Australian Universities do not in general have a common first year - you do your course-specific subjects from the beginning. For example, in my degree, which was a BSc in Computer Science, I studied Maths, Physics, and Computing subjects (programming languages, complexity theory etc.) That's it. No humanities of any kind.
Some courses, such as engineering, have a common first year for the course, but such common years specialize in background for the course, and do not contain anything not pertaining to the course itself.
I think that at the time, had there been non-CS subject requirements in my degree, I would have hated it, and tried to avoid them. Maybe it would have been good for me, but it's hard to say.
If your interested in nuts and bolts of Distributed Operating Systems, you should read Andrew S. Tanenbaum's Distributed Operating Systems. While some of the content is getting a bit dated now, the basic design tenets expressed in this book are still true.
Matter of fact, anyone designing or implementing a large system using multiple machines and lots of IPC should read this book too. In particular, the four basic rules listed in the introduction (pg 35 from memory) covering global data, time etc should be memorized by anyone working on any distributed or network application (including OSes)
I believe that Linux would probably be too complex for use in an introductory-style OS course. Perhaps we are missing the point here - OSes used in teaching courses should be a) simple, b) easy to modify and c) allow investigation a selection of concepts, without having to know it all at once. They are not for contributing to Open Source success.
In my undergrad OS course we used some funky custom-built thing on PDP-11/03's (Oooo... those front-panel switches:-). When I left University, they were using Minix. Perhaps something else has come up since then, but I can't convince myself that it is Linux.
You should also remember that at the time the C++ mapping was defined: - STL was not completely standardized - STL was not available for all platforms - ANSI C++ compilers were not available on all platforms - C++ Exceptions were not supported by all C++ compilers
The above reasons more than anything else are why the C++ mapping is so clunky. Now that it's being used commercially, the probability that it'll be changed to "clean" it up is just about nil.
There is, however, an effort happening to come up with another C++ mapping which uses STL containers, strings, etc.
Yawn. This is old old old. Go look at here to find out the Australian Bureau of Statistics response.
Every properly designed survey has a defined set of coding rules used to code and therefore analyse the responses. If you want to see trends over time, then you try not to change the coding rules significantly from census to census, so the current definitions might simply reflect historical attitudes about religion in Australia.
To properly imaging how it's going to end up, think of working with a team of people, each of which you've never seen, and with whom you speak on the phone for no more than 30 minutes a week.
If you cannot avoid the split project, then you must allow for:
There are a whole bunch of other issues that are involved. In my case, the project was interesting, but the management and resolution of technical issues was an absolute nightmare.
In the past, I've done a fair bit of undergrad CS course marking. It never ceased to amaze me that:
a) students copied from other students in the same tutorial class (who would most likely get marked by the same person), and
b) students copied their answers from the dumbest possible fellow student (so many times you'd detect copying because two students attempted the assignment in exactly the same completely stupid and incorrect manner.)
This brings up a critical point.
Sure, you should do the best that you can to produce a reasonable estimate - a good idea here is to produce *three*, a low, expected and high estimate, which will at least show how uncertain you are with your estimate.
Now, your boss may well choose to publish the lowest one - that's his/her call - but you should always immediately notify him/her as soon as you know of anything that causes any of the three estimates to change. Don't wait until the next project meeting, it's your job to keep your boss informed of changes that may affect the project, and to do it in a timely fashion.
I am not a real engineer, just software, so what I'm about to propose may not be correct, but I'm going to do it anyway :-)
I think part of the problem is that in real world engineering, there are known physical limits to what can be done, known upper bounds for materials performance, and known lower bounds for environmental factors. This allows engineers to design using models that are less complex than the systems they are building - "If it's 5mm steel then it has a safety margin of 2". In a software system, it's hard to reduce the complexity down, and still fully describe the system. You can't "beef up a beam" in software - it is either correct, or not correct.
The point that you make regarding accreditation is true. By and large it has happened since the consequence of failure for most systems is low in the eyes of the general public. The probability of killing someone with a malfunctioning general purpose application is so close to zero to be not worth mentioning. Faulty real engineering can kill people. This makes the cost of software failure low, so the risk to the company is minimal, which therefore means nothing is done about it, since the cost of fixing it is higher than the risk cost multiplied by the probability of that risk occurring. I believe that the only way this will change would be through regulation, and no country is going to do that for fear of destroying its software industry by spiralling employment/training costs.
If you read the article, you would notice that the information provided was a legal opinion, and from the article, it is not clear that this information came from the Attorney General, or his legal advisor. Any legal person can give legal opinion, whether their opinion is upheld by the courts is another thing entirely.
:-)
Assuming the advice *did* actually originate from the Attorney General, as the Attorney General is a QC, then one would assume that he is probably more qualified to give legal opinion on Australian Law than anyone else on Slashdot
As for "the Attorney General passing new laws", this law was passed in the same way any other law - i.e. through both houses etc, etc. As such, the Australian legistature suffers from the same problems all other legislatures do when attempting to extend media laws to the Internet.
Just in case anyone didn't know, the new Digital Agenda Act comes into force today in Australia.
And the US is so much better, with the DMCA and UCITA....
This "liberal arts" thing must be some artifact of how the US education/employment system works. Obviously I don't understand it properly - maybe the concept of undergraduate/graduate is different, or the course structure is different?
On the other hand, I have noticed that Australian technical degrees (engineering, comp sci, etc.) seem to be highly specialized compared to their equivalent US degrees. For example, I did a CS degree, during which I did only math, physics, and comp sci subjects - there were no english, history or other humanities-type subjects required. I think this might happen because Australian Universities don't have a common first year for everyone (you specialize right from the start).
In Australia, a liberal arts undergraduate degree will do squat to get you a software engineering job *as a first job*.
I do, however, agree that after the first few years, no employer will be particularly interested in what your degree was. At that point it'll all be based on prior experience, which can be a problem if you get pigeonholed in your first few years of employment.
Well, here's an Australian viewpoint.
I might be seeing a skewed view, since I'm in Brisbane, not Sydney or Melbourne, but I see no wireless data of any real significance in Australia. At this time, the only viable wireless data choice is 9600 baud over GSM.
For those who are interested, here is how I see the Australian data situation:
Australia has two mobile network technologies (GSM and CDMA) and two major telcos (Telstra and Optus - there are a bunch of smaller ones as well.) WAP is currently only supported on GSM, and there are few WAP phones available (I have tried most of them, and they are all crap.) There are no analog phone networks remaining. Digital phone coverage is mostly pretty good. In home data, DSL only started rolling out in August of this year, and the Cable network is not expanding (although this could have changed recently.) Cheap cable charges are around AUS$70 per month with some form of bandwidth or usage cap. DSL was supposed to be around AUS$100 per month, but that might change depending on the current bunfight between Telstra and the ACCC.
I don't think too much should be read into the deployments of 802.11. Universities are putting in 802.11 networks to avoid cabling costs. Small companies will most likely do the same. They're all doing it to run their existing applications on laptops. In the long term, this is the same business model as for current networks - I buy equipment and deploy for my private network. I'd expect it to be dominated by the incumbents (Cisco et al).
This gets to my big issue with Wireless.... What's the application? Okay, so I've got a data pipe that goes with me... what do I want to do with it? Now, once I find an application, where's the money in it for a provider? Until I see an application that both really meets a consumer problem/desire *and* has a believable revenue model I don't feel that wireless is going anywhere. This is true regardless of the market.
I was at CTIA recently in Santa Clara, and it seemed to me that the US wireless "boom" has been fed by companies giving roving salesmen PDAs and using wireless data networks to access their E-mail from these PDAs. Of course, people attending CTIA are again a biased sample! For at least the Bay area, there would be sufficient size in this market to support some providers. I don't see such a critical mass forming in Australia, or if it does, it'll be in Sydney only.
For those of you thinking about the preferential voting system proposed by McReynolds, you should first look outside the U.S. to other countries that have implemented such systems.
In Australia, preferential voting is used, and we still have what is called "two-party preferred" effects - there are only really two parties that matter, and it is difficult for minority parties to have a voice in government.
There has been an argument that the voting system should revert to "first past the post" (i.e. primary vote only, no preferences), or perhaps use a system such as the Hare-Clarke proportional voting system, although such systems also have their own problems.
I know the original article was US-centric, however I just thought I'd put some non-US perspective in here. Note that this is a generalization, which will not necessarily apply to all Australian Universities, or courses within these Universities. Also note that this information dates from the late 1980's - early 1990's - perhaps someone can enlighten me on the changes that have happened in the last few years.
It is my understanding that US universities require all students to do a common first year, and have a component of the liberal arts in all degrees (If I'm wrong, I'd be really interested to hear more about what it's really like.)
Australian Universities do not in general have a common first year - you do your course-specific subjects from the beginning. For example, in my degree, which was a BSc in Computer Science, I studied Maths, Physics, and Computing subjects (programming languages, complexity theory etc.) That's it. No humanities of any kind.
Some courses, such as engineering, have a common first year for the course, but such common years specialize in background for the course, and do not contain anything not pertaining to the course itself.
I think that at the time, had there been non-CS subject requirements in my degree, I would have hated it, and tried to avoid them. Maybe it would have been good for me, but it's hard to say.
Matter of fact, anyone designing or implementing a large system using multiple machines and lots of IPC should read this book too. In particular, the four basic rules listed in the introduction (pg 35 from memory) covering global data, time etc should be memorized by anyone working on any distributed or network application (including OSes)
I believe that Linux would probably be too complex for use in an introductory-style OS course. Perhaps we are missing the point here - OSes used in teaching courses should be a) simple, b) easy to modify and c) allow investigation a selection of concepts, without having to know it all at once. They are not for contributing to Open Source success.
:-). When I left University, they were using Minix. Perhaps something else has come up since then, but I can't convince myself that it is Linux.
In my undergrad OS course we used some funky custom-built thing on PDP-11/03's (Oooo... those front-panel switches
- STL was not completely standardized
- STL was not available for all platforms
- ANSI C++ compilers were not available on all platforms
- C++ Exceptions were not supported by all C++ compilers
The above reasons more than anything else are why the C++ mapping is so clunky. Now that it's being used commercially, the probability that it'll be changed to "clean" it up is just about nil.
There is, however, an effort happening to come up with another C++ mapping which uses STL containers, strings, etc.