Yeah that had occured to me. But then you run into corporate firewalls that do not allow outgoing traffic on any randomly selected port. I went through this with a custom app we were runing at my last job that required us to create 20 diffrent rules on our firewall. It was not fun.
Yeah and in fact that is very common. Thats why I use nospam as the -real- address for web postings. The program strips it out and it becomes an invalid email address.
I've also done the technique of using custom addresses for downloads. Then I can easily kill the address if they start spaming it.
I know a lot of people who work for ISPs, and the bottom line is that the ISPs are for-profit corporations, and their behavior will reflect that. Kicking off one user will result in a lower loss of profit than the potential loss if a portion of the network gets saturated. I agree, it's not fair, it's not right, and they shouldn't be doing it. But what can ya do?
The error is in fact controlled by the sats as follows: Each satelite has an atomic clock. They transmit the time continuously. At any given time a receiver can pick up the signal from three satelites. Because the distance to the satelites is diffrent, the amount of time it takes the signal to reach the receiver is difrent for each satelite and therefore the times are off by hundredths of seconds. The calculation of where you are is based on the differences in the time it takes to receive the 3 signals, and the resulting clock drift.
The "correct" time is DES encrypted by the satellite and only the military grade receivers can decode it. A special algorithm is used on the civilian version which shifts the time going out in the clear a varying amount. This amount leads to the reduced accuracy of the civilian version.
On the ground, this inacurracy can be corrected with Differntial GPS, which communicates with a fixed receiver at a known position. The error can then be calculated by subtracting the GPS position at the fixed receiver from the known actual position of the fixed receiver. This error correction can then be applied to the GPS position calculated on the mobile receiver.
The big difference as I see it how unix creates processes, ie the fork() system call and copy-on-write memory pages.
Some features of the process management system (kill -9) are not replicated well elsewhere, or are replicated poorly. You can kinda fake it with NT but sometimes you get a permission denied message. And you never really know if the app was signalled before it died.
There's also a design philisophy that says build small, reusable tools and make it easy to attach them together.
Finally, there's access to hardware at a much lower level than with competitors.
When I was a student at Albany they were still in the process of lighting up the campus. (They'd run wire everywhere the year before I came. They'd told everyone that high speed internet access would be available everywhere. Then they didn't have the cash for the routers and hubs. Oops. So they lit up a little each year.) Anyhow, as a result there weren't as many people using it as might have otherwise. The computing department routinely "banned" software because it "might" be responsible for problems. I knew students who worked there, and after they tested it and found no problems, the ban was lifted. Except they never published anything saying the ban was lifted. If you didn't know the right people, you would never know. I got sick of it and ran coax around the suite so we could play Quake disconnected from their network.
It didn't surprise me the things they blamed on network games - These people actually posted the good times virus warning in the logon news! (And then 2 months later posted a message that it was a hoax and anyone who forwarded it would lose their account, so don't forward it! Mysteriously, they'd deleted their original post from the database.)
All in all, it's the kind of behavior I expect form those policing the educational world.
All the signature means is that it came from the company listed on the certificate, or someone who had access to their private key. Getting the signature involves proving to Verisgn that you are the entity listed.
The process is designed to protect against, say, a hacker breaking into the web server and replacing the ActiveX control with a trojan version. He could do that, but the trojan would not bear the signature.
But it won't prevent someone who works at the company from creating the same trojan and getting it signed.
In a nutshell, it tells you where it came from, not what it is.
I originally liked the idea of more TLDs. But the problem now is that every company seems to want to register the.net and.org versions of their.com, and will take anyone to court who dares to use one of the other versions. I remember a case a few years back with mit.org, a not for profit group that setup internet connections for home-bound people. Mass. Institute of Technology slapped them with a huge lawsuit and demanded they give the name up... despite the fact that their web site clearly explained that it wasn't the school. As long as this is the prevailing corporate attitude more TLDs will not expand the namespace any, they will just earn the registrars more money as corporations race to acquire their name under every last TLD.
It really defeats the purpose of TLDs. Why have them at all?
I agree. Most of the people I personally know who do web sites (save for pure artistic types, and they're the minority) aren't very bright. I don't know if this is just my luck or it's that way everywhere.
The web designer where I work considers himself a god of all things web. However, he
- Did not know of the existence of text based browsers at all until he saw me using one - Did not know that there are browsers other than Netscape and IE (read: Opera, Arena, Mosaic, etc.) - Has no idea why the Web was invented (remember, he knows everything there is to know about it) - Beleives the web is there to make people rich quick. - Beleives he is a programmer since he can copy javascript from other people's source and force it to work, without any understanding of how or why it does what it does.
His work is full of assumptions on how a browser will respond... assumptions that BREAK on Linux, and could just as easily BREAK on IE 6.
As long as people like that are building web pages... the web will be limited from reaching its full potential.
Word! SQL Server 7.0 has had that as far back as the very first beta I ever saw... and that was at least 2 years ago. I guess now McDonnel douglass will need to sue microsoft. Then Microsoft will simply do a leveraged buyout of McD D and then they'll own the patent. Then they'll charge even more to use it!
Word! Actually, I've encountered confusion without switching, just because diffrent people set things up diffrently. I learned Unix at school. We had Solaris boxes where/usr/ucb was in the path before/usr/bin. Grad students that had used Sys V as undergrads dropped/usr/ucb from the path. Sit down at one of their terminals, do a ps -aux, and... huh? That's not what you expected. (Actually, to further complicate things, when I first started learning, they had the Sys V man pages ahead of the ucb man pages in the MANPATH. Talk about confusion!) I've also seen the same thing with Emacs. How often do you sit down at someone else's emacs and immedieatly start using some custom key binding that you have on your account... and then wonder why it isn't working?
I think if it defeats the whole open source concept people will shy away form it. I don't purchase any software to run ony my companies Linux servers if it's specific to a certain distribution, or a certain kernel. (I mean, requiring a kernel newer than X is ok, but if they're just going to provide.o files that will only insmod a specific kernel - forget it.) If you're going for a proprietary solution you might as well go for MC/Service Guard or something similar. I mean, you know HP isn't going anywhere, and that's the whole reason you spend^H^H^H^H^Hwaste that kind of money on a commercial system.
I agree. But a lot of those Programmer-in-a-box's are already out there. A friend of mine wasn't happy with the income he made from his bachelor's degree - even though he was doing what he'd "Wanted to do since I was six years old". So he got a master in Computer Information Systems. He now works for a well known, international company in their MIS department. His idea of programming is to copy blocks of code from the sample CDs that come at the back of programming books, without understanding what they do. Coding for him means moving them around, re-arranging stuff, and so on... but without a solid idea what the stuff does! He asked me to look at a computer program he was working on for class once. It was a C++ subroutine, and every four lines or so he had
return 0;
I asked him why he put that there, and he responded "Because it's in the book." He didn't understand that everything after the first return would never even be executed. He didn't understand call semantics. But he's now a "Developer".
People like this are not a threat to the incomes of the readers of this board. We are a threat to their incomes, when their stuff stops working.
I'm also tired of hearing how record numbers of people are entering CS programs. As Sam said, they're going in for the money... and they probably figure they know how to play Doom, so this must just be advanced doom playing. These people are never going to last four years in a CS program.
The comments about people being aprehensive because of what you were wearing just indicate how prejudicial most of the people in the world are. My old high school went so far as to BAN students from wearing those kinds of clothes. If I'd still been a student I probably would have purchased those clothes and worn them just to make a statement. I truly don't understand what they expect to accomplish by infringing on people's civil liberties this way.
I think it's all irrelvant. Suppose they can do an exact screen replay of every screen, every keypress someone makes over an 8 hour day. If there are say, 10 employees then playing back the recordings from one day will take two weeks. Even if they can play back say, 4 at a time side by side, that's still 20 hours. Who has the time to watch all of that? Nobody. The product is designed to create a chilling effect, the hope is that employees won't do something because they're afraid they'll get caught... not that they can be caught if they do it.
When I was in school the university decided over winter break to install cameras all over the computer rooms. A huge bank of monitors was setup in the data center to watch these cameras and everything was taped. A year later I was talking to an assistant who worked for the computing center. He said that they had tried to rewind the tapes to identify people who had caused damage to equiptment four times. They were only successful at locating and identifying one of those four, and that was when the manager of the system had staged the removal of a mouse as a "test". So basically they spent thousands and thousands of dollars on a system that did nothing. There's just too much data for one person to absorb it. Now they've turned the cameras off, but left the boxes there. People don't steal stuff because they're afraid too, and there's no ridiculous maintenance fees on the camera system.
I agree. My company does development mostly on Windows. But there's no way I'd hire a graduate who had been trained on NT. I mean, if you know how to run, I'm sure you can walk. But if you can walk, that doesn't tell me if you can run.
My university used a lot of Sun and Digital hardware. We knew that it would stand up even during finals week when there were dozens upon dozens of people using it 24/7 and the load averages were ridiculously high. Somehow I can't see NT taking that kind of continuous abuse.
I agree. But face it, Key Escrow is unnecessary. If the government wants to read your encrypted traffic, they can... and I don't care if it's encrypted with a 4096 bit key. If they don't already have a way, which is highly unlikely, they will absolutely find a way. Remember when PGP came out, and appeared overseas, they were after Zimmerman for a while. Then mysteriously they just stopped and left him alone. Many of my colleagues in the security arena beleive it was because they can quickly crack the crypto wide open. They just don't want to admit it to the public since people might stop using the product.
That's a good point... and the work has to be done and signed off on by someone with FAA credentials. So you probably couldn't do even the most simple maintenance in your garage. You'd need to take it somewhere.
What I haven't seen has to do with the recoverability of this thing if it DOES have a malfunction. I've seen demonstrations on TV of how helicopters can be safely landed even if the engines fail, as long as they're above a certain altitude. Of course, the pilot has to have a certain level of skill to do this. People giving traffic reports from helicopters spend most of the time they're not looking at traffic looking for places to land if they have problems.
But perhaps this vehicle is light enough it could just be rigged with a big parachute. That would reduce the risk of death from a high altitude problem.
Word! Microsoft has always seemed to operate under the "You can't beat them, so buy them." That's not innovation. That's being a bully because you have money. I bet they consider every new version off office an "Innovation." I think the best quote I read was that "In the past 10 years, Microsoft hasn't changed the word processor at all. They have changed the framework (read: OS) that the word processor exists in over and over. But the basic functionality never changes. If microsoft was the electric company, every 2 years they'd change the voltage and frequency of the power they delivered and you'd need to either replace all of your appliances or buy a voltage/frequency rectifier to keep using the ones you had.
Same here. In fact, we're building a bunch of linux boxes for a project we're doing now and I specified 3com cards all around because I've had such good performance with their linux drivers in the past. Heck, the drivers even work properly now if you had windows running and it turned the card off.
We didn't study NT in the Operating System classes where I went to school. If that's what the NDA says then I'm happy we didn't:) We did have one professor offer a summer course in Linux Kernel Hacking, which I unfortunately never got to take.
One of my colleagues didn't study with the source, although they did study the architecture. He maintains that the Kernel itself is designed quite well, and that the user level stuff is so bad that the whole package is BAD, BAD, BAD. (We both run Linux:)
I think it also depends on how much the language you learn first is used.
When I first started as a CS major the department taught everyone Pascal. The TA's admitted that "This is a teaching language and nobody does anything serious with it." The professor pointed out that if we graduated in this program that we'd probably know a lot of languages... he explained that graduates liked to list a lot of languages on their Resume's, because it looked impressive. He explained that once you've learned a few languages , learning a new one basically involved picking up the diffrences of how things that you already knew how to do were expressed in the new one. I found that to be the case as I went on to pick up all kinds of other languages.
Now, a year after I started they changed the program around. The new freshman that year started right of on C++. ( I think this had to do with helping them recruit people, because they could say that students start with C++ their first semester. Not that it makes the program better, but other people were saying it and implying that it made -their- programs better ) Over my four years I had to work with these people a lot.
Probably the defining moment when I realized that going straight to C++ was a mistake came in a systems programming class senior year; the class had a mix of people who had started with Pascal and others who had basically used C++ except for their brief forays into Assembly or the AI languages. Well, the systems programming instructor suggested that we use C, not C++, since unix is written in C and we'd be calling unix functions a lot. I was shocked when the juniors in the class complained that they couldn't understand how to use printf(). The professor put up a web page explaining how to use printf. He provided format strings in.h files for us to use. He provided examples. Still these people could not understand how printf worked.
Now, I've never really used C++ for anything. I've never taken classes with it or had any training on it. But I can figure out how IOStreams work when I read source listings that use them.
I guess my point is that I don't think starting with something like Python is such a bad idea. Sure, some people won't go any farther. But they weren't meant to be CS people anyway.
I agree with the last point. Even if they pass legislation controlling crypto.. how the heck do they enforce it? If the cops come, I can just encrypt the crypto program with itself. Whos to say a random bit stream on my hard drive is encrypted data, and not just random leftovers from deleted temp files?
I never understood having wheel coded into su.
You can get the same capability with GNU su as follows:
chgrp wheel su
chmod 4750 su
In fact, when I was in college and had fellow CS majors using accounts on my box for development, I did that with a bunch of su related stuff.
Yeah that had occured to me. But then you run into corporate firewalls that do not allow outgoing traffic on any randomly selected port. I went through this with a custom app we were runing at my last job that required us to create 20 diffrent rules on our firewall. It was not fun.
Yeah and in fact that is very common. Thats why I use nospam as the -real- address for web postings. The program strips it out and it becomes an invalid email address.
I've also done the technique of using custom addresses for downloads. Then I can easily kill the address if they start spaming it.
I know a lot of people who work for ISPs, and the bottom line is that the ISPs are for-profit corporations, and their behavior will reflect that. Kicking off one user will result in a lower loss of profit than the potential loss if a portion of the network gets saturated. I agree, it's not fair, it's not right, and they shouldn't be doing it. But what can ya do?
The error is in fact controlled by the sats as follows: Each satelite has an atomic clock. They transmit the time continuously. At any given time a receiver can pick up the signal from three satelites. Because the distance to the satelites is diffrent, the amount of time it takes the signal to reach the receiver is difrent for each satelite and therefore the times are off by hundredths of seconds. The calculation of where you are is based on the differences in the time it takes to receive the 3 signals, and the resulting clock drift.
The "correct" time is DES encrypted by the satellite and only the military grade receivers can decode it. A special algorithm is used on the civilian version which shifts the time going out in the clear a varying amount. This amount leads to the reduced accuracy of the civilian version.
On the ground, this inacurracy can be corrected with Differntial GPS, which communicates with a fixed receiver at a known position. The error can then be calculated by subtracting the GPS position at the fixed receiver from the known actual position of the fixed receiver. This error correction can then be applied to the GPS position calculated on the mobile receiver.
The big difference as I see it how unix creates processes, ie the fork() system call and copy-on-write memory pages.
Some features of the process management system (kill -9) are not replicated well elsewhere, or are replicated poorly. You can kinda fake it with NT but sometimes you get a permission denied message. And you never really know if the app was signalled before it died.
There's also a design philisophy that says build small, reusable tools and make it easy to attach them together.
Finally, there's access to hardware at a much lower level than with competitors.
When I was a student at Albany they were still in the process of lighting up the campus. (They'd run wire everywhere the year before I came. They'd told everyone that high speed internet access would be available everywhere. Then they didn't have the cash for the routers and hubs. Oops. So they lit up a little each year.) Anyhow, as a result there weren't as many people using it as might have otherwise. The computing department routinely "banned" software because it "might" be responsible for problems. I knew students who worked there, and after they tested it and found no problems, the ban was lifted. Except they never published anything saying the ban was lifted. If you didn't know the right people, you would never know. I got sick of it and ran coax around the suite so we could play Quake disconnected from their network.
It didn't surprise me the things they blamed on network games - These people actually posted the good times virus warning in the logon news! (And then 2 months later posted a message that it was a hoax and anyone who forwarded it would lose their account, so don't forward it! Mysteriously, they'd deleted their original post from the database.)
All in all, it's the kind of behavior I expect form those policing the educational world.
All the signature means is that it came from the company listed on the certificate, or someone who had access to their private key. Getting the signature involves proving to Verisgn that you are the entity listed.
The process is designed to protect against, say, a hacker breaking into the web server and replacing the ActiveX control with a trojan version. He could do that, but the trojan would not bear the signature.
But it won't prevent someone who works at the company from creating the same trojan and getting it signed.
In a nutshell, it tells you where it came from, not what it is.
I originally liked the idea of more TLDs. But the problem now is that every company seems to want to register the .net and .org versions of their .com, and will take anyone to court who dares to use one of the other versions. I remember a case a few years back with mit.org, a not for profit group that setup internet connections for home-bound people. Mass. Institute of Technology slapped them with a huge lawsuit and demanded they give the name up... despite the fact that their web site clearly explained that it wasn't the school. As long as this is the prevailing corporate attitude more TLDs will not expand the namespace any, they will just earn the registrars more money as corporations race to acquire their name under every last TLD.
It really defeats the purpose of TLDs. Why have them at all?
This seems to be common in the ISP business. At my last company we had a credit one month because we had extended our contract for a full year.
Since we had a credit, no balance was due.
Since no balance was due, no payement was sent.
Since no payment was sent, no payement was received.
Since on payment was received, the ISP promptly killed the T1 with no warning.
I agree. Most of the people I personally know who do web sites (save for pure artistic types, and they're the minority) aren't very bright. I don't know if this is just my luck or it's that way everywhere.
The web designer where I work considers himself a god of all things web. However, he
- Did not know of the existence of text based browsers at all until he saw me using one
- Did not know that there are browsers other than Netscape and IE (read: Opera, Arena, Mosaic, etc.)
- Has no idea why the Web was invented (remember, he knows everything there is to know about it)
- Beleives the web is there to make people rich quick.
- Beleives he is a programmer since he can copy javascript from other people's source and force it to work, without any understanding of how or why it does what it does.
His work is full of assumptions on how a browser will respond... assumptions that BREAK on Linux, and could just as easily BREAK on IE 6.
As long as people like that are building web pages... the web will be limited from reaching its full potential.
Word! SQL Server 7.0 has had that as far back as the very first beta I ever saw... and that was at least 2 years ago. I guess now McDonnel douglass will need to sue microsoft. Then Microsoft will simply do a leveraged buyout of McD D and then they'll own the patent. Then they'll charge even more to use it!
Word! Actually, I've encountered confusion without switching, just because diffrent people set things up diffrently. I learned Unix at school. We had Solaris boxes where /usr/ucb was in the path before /usr/bin. Grad students that had used Sys V as undergrads dropped /usr/ucb from the path. Sit down at one of their terminals, do a ps -aux, and ... huh? That's not what you expected. (Actually, to further complicate things, when I first started learning, they had the Sys V man pages ahead of the ucb man pages in the MANPATH. Talk about confusion!) I've also seen the same thing with Emacs. How often do you sit down at someone else's emacs and immedieatly start using some custom key binding that you have on your account... and then wonder why it isn't working?
I think if it defeats the whole open source concept people will shy away form it. I don't purchase any software to run ony my companies Linux servers if it's specific to a certain distribution, or a certain kernel. (I mean, requiring a kernel newer than X is ok, but if they're just going to provide .o files that will only insmod a specific kernel - forget it.) If you're going for a proprietary solution you might as well go for MC/Service Guard or something similar. I mean, you know HP isn't going anywhere, and that's the whole reason you spend^H^H^H^H^Hwaste that kind of money on a commercial system.
I agree. But a lot of those Programmer-in-a-box's are already out there. A friend of mine wasn't happy with the income he made from his bachelor's degree - even though he was doing what he'd "Wanted to do since I was six years old". So he got a master in Computer Information Systems. He now works for a well known, international company in their MIS department. His idea of programming is to copy blocks of code from the sample CDs that come at the back of programming books, without understanding what they do. Coding for him means moving them around, re-arranging stuff, and so on... but without a solid idea what the stuff does! He asked me to look at a computer program he was working on for class once. It was a C++ subroutine, and every four lines or so he had
return 0;
I asked him why he put that there, and he responded "Because it's in the book." He didn't understand that everything after the first return would never even be executed. He didn't understand call semantics. But he's now a "Developer".
People like this are not a threat to the incomes of the readers of this board. We are a threat to their incomes, when their stuff stops working.
I'm also tired of hearing how record numbers of people are entering CS programs. As Sam said, they're going in for the money... and they probably figure they know how to play Doom, so this must just be advanced doom playing. These people are never going to last four years in a CS program.
The comments about people being aprehensive because of what you were wearing just indicate how prejudicial most of the people in the world are. My old high school went so far as to BAN students from wearing those kinds of clothes. If I'd still been a student I probably would have purchased those clothes and worn them just to make a statement. I truly don't understand what they expect to accomplish by infringing on people's civil liberties this way.
I think it's all irrelvant. Suppose they can do an exact screen replay of every screen, every keypress someone makes over an 8 hour day. If there are say, 10 employees then playing back the recordings from one day will take two weeks. Even if they can play back say, 4 at a time side by side, that's still 20 hours. Who has the time to watch all of that? Nobody. The product is designed to create a chilling effect, the hope is that employees won't do something because they're afraid they'll get caught... not that they can be caught if they do it.
When I was in school the university decided over winter break to install cameras all over the computer rooms. A huge bank of monitors was setup in the data center to watch these cameras and everything was taped. A year later I was talking to an assistant who worked for the computing center. He said that they had tried to rewind the tapes to identify people who had caused damage to equiptment four times. They were only successful at locating and identifying one of those four, and that was when the manager of the system had staged the removal of a mouse as a "test". So basically they spent thousands and thousands of dollars on a system that did nothing. There's just too much data for one person to absorb it. Now they've turned the cameras off, but left the boxes there. People don't steal stuff because they're afraid too, and there's no ridiculous maintenance fees on the camera system.
I agree. My company does development mostly on Windows. But there's no way I'd hire a graduate who had been trained on NT. I mean, if you know how to run, I'm sure you can walk. But if you can walk, that doesn't tell me if you can run.
My university used a lot of Sun and Digital hardware. We knew that it would stand up even during finals week when there were dozens upon dozens of people using it 24/7 and the load averages were ridiculously high. Somehow I can't see NT taking that kind of continuous abuse.
I agree. But face it, Key Escrow is unnecessary. If the government wants to read your encrypted traffic, they can... and I don't care if it's encrypted with a 4096 bit key. If they don't already have a way, which is highly unlikely, they will absolutely find a way. Remember when PGP came out, and appeared overseas, they were after Zimmerman for a while. Then mysteriously they just stopped and left him alone. Many of my colleagues in the security arena beleive it was because they can quickly crack the crypto wide open. They just don't want to admit it to the public since people might stop using the product.
That's a good point... and the work has to be done and signed off on by someone with FAA credentials. So you probably couldn't do even the most simple maintenance in your garage. You'd need to take it somewhere.
What I haven't seen has to do with the recoverability of this thing if it DOES have a malfunction. I've seen demonstrations on TV of how helicopters can be safely landed even if the engines fail, as long as they're above a certain altitude. Of course, the pilot has to have a certain level of skill to do this. People giving traffic reports from helicopters spend most of the time they're not looking at traffic looking for places to land if they have problems.
But perhaps this vehicle is light enough it could just be rigged with a big parachute. That would reduce the risk of death from a high altitude problem.
Word! Microsoft has always seemed to operate under the "You can't beat them, so buy them." That's not innovation. That's being a bully because you have money. I bet they consider every new version off office an "Innovation." I think the best quote I read was that "In the past 10 years, Microsoft hasn't changed the word processor at all. They have changed the framework (read: OS) that the word processor exists in over and over. But the basic functionality never changes. If microsoft was the electric company, every 2 years they'd change the voltage and frequency of the power they delivered and you'd need to either replace all of your appliances or buy a voltage/frequency rectifier to keep using the ones you had.
Same here. In fact, we're building a bunch of linux boxes for a project we're doing now and I specified 3com cards all around because I've had such good performance with their linux drivers in the past. Heck, the drivers even work properly now if you had windows running and it turned the card off.
We didn't study NT in the Operating System classes where I went to school. If that's what the NDA says then I'm happy we didn't :) We did have one professor offer a summer course in Linux Kernel Hacking, which I unfortunately never got to take.
:)
One of my colleagues didn't study with the source, although they did study the architecture. He maintains that the Kernel itself is designed quite well, and that the user level stuff is so bad that the whole package is BAD, BAD, BAD. (We both run Linux
I think it also depends on how much the language you learn first is used.
.h files for us to use. He provided examples. Still these people could not understand how printf worked.
When I first started as a CS major the department taught everyone Pascal. The TA's admitted that "This is a teaching language and nobody does anything serious with it." The professor pointed out that if we graduated in this program that we'd probably know a lot of languages... he explained that graduates liked to list a lot of languages on their Resume's, because it looked impressive. He explained that once you've learned a few languages , learning a new one basically involved picking up the diffrences of how things that you already knew how to do were expressed in the new one. I found that to be the case as I went on to pick up all kinds of other languages.
Now, a year after I started they changed the program around. The new freshman that year started right of on C++. ( I think this had to do with helping them recruit people, because they could say that students start with C++ their first semester. Not that it makes the program better, but other people were saying it and implying that it made -their- programs better ) Over my four years I had to work with these people a lot.
Probably the defining moment when I realized that going straight to C++ was a mistake came in a systems programming class senior year; the class had a mix of people who had started with Pascal and others who had basically used C++ except for their brief forays into Assembly or the AI languages. Well, the systems programming instructor suggested that we use C, not C++, since unix is written in C and we'd be calling unix functions a lot. I was shocked when the juniors in the class complained that they couldn't understand how to use printf(). The professor put up a web page explaining how to use printf. He provided format strings in
Now, I've never really used C++ for anything. I've never taken classes with it or had any training on it. But I can figure out how IOStreams work when I read source listings that use them.
I guess my point is that I don't think starting with something like Python is such a bad idea. Sure, some people won't go any farther. But they weren't meant to be CS people anyway.
Mike
I agree with the last point. Even if they pass legislation controlling crypto.. how the heck do they enforce it? If the cops come, I can just encrypt the crypto program with itself. Whos to say a random bit stream on my hard drive is encrypted data, and not just random leftovers from deleted temp files?