No offense, but I would have shot myself. That course has no place in a CS curriculum for concentrators.
I found it very useful. The easy stuff required no study and was a matter of completing a 20 minute test to show proficiency. Typing was also included so those who couldn't type were forced to get to 20wpm - reasonable for a coder. The more complex stuff - Excel advanced formulae, pivot charts etc. was good for picking up skills I didn't have because I'd had no need for them to that point.
You're absolutely right, though - teaching what the compiler does would be a good topic. For a compilers course. But in an introductory programming course, informing the student that the compiler takes program code and creates something the computer can run is all you need.
That's all I'm talking about. You're assuming anyone who's enrolled in a computer course knows a compiler takes one form of code and produces another. I'm not talking about a compiler course. But some knowledge that the compiler can build for different levels of optimisation, include debug code or not etc. isn't so bad (or so complex). It's just not something everyone entering the course would know either.
Then why bother teaching it?;)
Using IDEs can be very simple, but showing how to use the "advanced" features can take quite a bit of instruction - instruction that has no place in a class that isn't teaching you about IDEs.
If it's so simple why bother teaching it. If it's so complex, it has no place in the course? Why is it all or nothing with you? Why do you insist on assuming computer knowledge that may or may not be present.
I'm not and never was talking about teaching advanced features. I was talking about an introductory course introducing both the ideas of a command line driven compiler, and an IDE, as they are both commonly used tools.
I seriously think that getting a complier up and running, on any platform, with the proper links given to the student on where to find said compiler, should be enough for anyone with half a brain.
Truely is that simple for some environments. Truely isn't for others. Depends on setup complexity and documentation provided.
I said this in another part of this big thread: why give your students calculators when you are teaching them to multiply?
You don't if you're teaching them to hand multiply. However at some point you assume they can do that and move on. By the way why on Earth calculators are used these days for anything more than the simplest equations is beyond me. Anything beyond about 10 operations and I fire up a spreadsheet. Gives you repeatability, what if scenarios and the ability to fix errors very quickly without rework.
So do you want professors to help set up students' net connections? You want to teach them how to navigate Windows? Do you need to teach them how to turn on their computers?
There are two ways to tackle this. Make this part of an intro to programming class or have a special class for teaching basic computer skills. Yes these skills should be taught. Either way if the person you're teaching is new to these things you don't expect them to pick it all up instantly.
When I did my undergrad we had an intro class that was pass fail and taught and tested you on your ability to do the basics including use Explorer and Office (Excel and Word) properly. (eg. advanced formulae and chartin in Excel). I already had these skills and it was a walk in the park. For others this was all new and without it they may have sunk in other subjects.
So do you want professors to help set up students' net connections? You want to teach them how to navigate Windows? Do you need to teach them how to turn on their computers?
That's a great thing to say to someone who doesn't know what a compiler or an IDE is. Yes you teach them how to become computer professionals. If they've enrolled in a computing or IT course they're paying good money to at least be pointed in the right direction.
If kids have trouble with getting stuff to compile, the professor^W TA is there, but it does not need to be part of the curriculum
No, the TA is there to help clarify what to do, not to teach new material. Again you don't have to stand up in class and say here's the command blah blah blah. You point them at a good resource - either your own lecture notes or a book or a good tutorial. What's more you teach them what they're doing not just how to to do it. What does the compiler do? Why do we need all these switches? etc.
one, that students can figure out how to compile code with very little instruction. Often just a link works.
Depends on the quality of the link. A good link would have lots of instruction. You're again not thinking in terms of someone who doesn't even know what a goddamn compiler is.
But two, that IDEs should not be taught because they are above and beyond the scope of most programming courses
In the real world as a coder you're much more likely to be sat in front of an IDE at some point early in your career. Most IDEs are there to simplify the process not make it harder. It's no harder clicking a compile button than typing in an obscure command line you don't understand.
So, yes, if IDEs were being used in the class, they are complicated enough that instruction might be helpful. But in most classes, IDEs are not necessary and detract from what students are being taught. They need to learn to write code, not "Solutions" or whatever the hell they are calling them now, unless the course is specifically for that.
What the???? Code implements a solution to a problem. It's not some abstract and separate thing to be taught. There are technical aspects to code that are technical and have nothing to do with any one solution. Either that's really badly phrased or you've totally lost the plot. What's more it sounds to me like you've never used a decent IDE in your life. Most IDEs can be used as little more than editors with a compile button. How is that complicated compared to your simple idea of telling them to go work out how to compile by themselves.
I did an intro to Java class as a blowoff class (I was a third-year CS), but not once did the professor in class tell us how to run the darn thing. That's what TAs are for:) But there doesn't need to be any "platform" because code is just that.
If by 3rd year you don't know how to compile software there's a problem. You should have seen several languages at that point. If it's a first year course you better explain the compiler. Furthermore if it's a 3rd year course and they haven't seen an IDE there's a problem. That's like a 3rd year carpenter that's
Oh yes because we all know that every program ever written comes with brilliant tutorials.
I would not expect a student to be able to even begin to know how to work a simulator. But I would expect them to be able to figure out how to start the program or be able to install it and run it on their computer.
First of all most commercial simulators actually require a team of technicians to run and maintain them. You're assuming that everything's simple. A setup.exe to launch or a command line tool to look up. It really depends on the environment. I've worked with compilers and environments that were hell to set up. (Eiffel comes to mind, as does a full blown J2EE environment). In any case familiarity with a particular operating system, installation etc. shouldn't be assumed. You're being elitist and excluding anyone that doesn't already have familiarity with computers (presumably on the basis that a non-hobbiest isn't interested and has no business doing the course). This is just plain wasteful. I've seen people go from not knowing any of this stuff to being very proficient coders in a short timespan. However that did require some help pointing them in the right direction.
Plus your analogy is all off, anyway. When you put a student in a simulator, let's say for a commercial airline, you are teaching them to fly the aircraft that simulator is simulating. Do you want to also include flight attendants, hijackers, angry travellers, company politics, etc.? No, you're just learning how to fly. In the same respect, you're just learning how to program, not use an IDE. Why include all that extra crap when students are just going to want to be able to do it their way, anyway?
You're not teaching them how to install a coding environment either. Why do you think the IDE is extra crap, but learning to install is necessary. Both tasks are going to be useful in the real world. I'd argue exposure to both is absolutely essential. Where we disagree is that I don't believe doing an install and working out what the best literature to learn from is the best place to start, and while an IDE does require extra effort in some areas I also believe it simplifies the development process enough that it's worthwhile including in the introduction.
That doesn't rule out excercises or proficiency testing on either the install process or the manual use of a compiler - it's just not the first thing you show the student.
About the download link: You should at least be able to download Dr. Scheme and figure out how to run the goddamn thing without any instruction from the professor.
Why? A lot of these students are kids are fresh out of highschool. They don't have the maturity level to be doing self paced learning. That's what university should teach them. There's a difference between hand holding and teaching them how to learn for themselves. "This is the big bad world work it out for yourself" is just a lazy teacher's method of avoiding any real work. What exactly is the point of even having a lecturer if he's not going to help point you in the right direction. Anyone could get themselves a web connection and save a fortune in tution. I've been a lecturer, and while was never a hand holder if I wasn't providing pointers to the information and making sure there's clarity on what's to be assessed I wouldn't have considered myself to be any good.
Your attitude (unfortunately shared with many others) - calling the user a "whiny luser" - is the fundamental problem with open source today, not unproductive coders.
No warranty is fine. It's actually there to protect the developer from getting sued. It doesn't mean that if the developer is advocating wide scale use of their work, they shouldn't expect there will be a need to fix bugs.
The conversation goes something like this: 1) Developer: Users shouldn't be tied to commercial software. You should be allowed to see the code and make changes if you need to. Here's something much better that's not only free as in beer but free as in not closed. 2) User: Cool. It's not bad at all. I don't use those other features anyway in my bloatware. I'll give this a go. 3) User: Wait a second this bug here means I've lost work, and if this one here isn't fixed I'm going to have to switch back because I can't get this piece of work out to my boss otherwise. I just spent 6 months converting my files to this format and now I'm stuck. Please help! 4) Developer: Look it clearly says you have no warranty. If you can find someone else to give you support that's fine but I only do this in my spare time and I didn't take your money so don't be so demanding. Besides you have the source. Go fix it yourself. We actually do have a fix but it's not in the stable branch. We've solved the problem so it's not of much interest to us. Maybe in some future stable release we'll roll it into the code. 5) User: But you convinced me to use this! You said I'd be better off and now I'm in a pickle. I don't have the skills to change the code and I can't find anyone willing to take on the work, besides it'll cost hundreds of dollars if I do. 6) Developer: Don't get narky with me. Like I said I do this in my spare time. You should thank me. 7) User: !@%$ you. I'm switching back since I can get support for the other product. It'll take me 6 months to move my stuff back to the old format. I'm never wasting my time with open source again! It's free and you get what you pay for. It's a bunch of geeks who have no social skill and won't help you out when you rely on your product. Obviously a complete waste of time. I'm telling all my friends not to let anyone convince them to switch to open source either.
Wait a sec. One minute you said you got no instruction on how to use it then the next minute you're on about tutorials.
If all they gave you was a link, you paid a lot of money to have a lousy professor tell you to go learn on your own. This isn't something to strive for. It's an example of an education system letting the students down. There should be no reason to expect students to go out and learn on their own if the goal is to have them come out with some common frame of knowledge.
Would you put a student airline pilot in a simulator with no instruction and say go learn???
...and then when no body wants to adopt open source because they've taken this exact approach people bitch and moan about proprietary software and how everything should be free as in living in la la land, or take out huge ads in the New York times.
Can't have it both ways. Either respond to the user's when there's a problem regardless of whether you're being paid, or don't push open source and Linux onto everyone including grandma Jones who wouldn't know a command line from a space alien. Otherwise you're no better than a damned drug dealer who provides the drugs for free at first then says if you want the next hit you better pay me.
If you put it out for free, and warn it's unsupported, that's fine, but don't expect anyone to care or use it. If you offer lousy support because "hey I'm doing this for free in my spare time" then you're just making yourself look bad.
When is the last time you wrote a serious piece of code sequentially and didn't modify or replace entire sections as you went? Being able to use an editor actually frees you up to think about the problem by breaking the problem up into more managable pieces and filling in the blanks for the piece you're not focusing on later.
I'm going to go against the grain here and say that you need to make an introduction to programming as simple as possible for two reasons. The first is you don't want to put people off by making it an ordeal. (Initiation rights and rights of passage are stupid primitive behaviour that don't belong in a coding class). The second is that the way you solve any problem or learn any skill is by breaking it up into smaller manageable pieces so that you can cope with each piece then put the skills together. Not everyone taking one of these classes already has exposure to programming.
Nope. Bad idea. A good program isn't written serially in sequence. Parts are added and deleted as requirements change and parts evolve. What's more having code in computer form makes it searchable.
When is the last time you wrote a non-trivial piece of code in sequence? Be honest now.
Mars rover: 40 minutes of lag between steps, and doing something as simple as rotating and rolling wheels based on camera feeback. Coarse grained movements generally okay.
Surgery: Miniscule accurate movements. If something unexpected happens and the patient starts to bleed getting one thing even slightly wrong kills the patient.
1) Yes but you also have the option of attaching if there's no common place that's accessible to all recipients. A links only solution removes that option.
2) Yes and offline viewing solutions are notoriously bad. Further there are solutions that could work to block a share, just as there are solutions like virus scanners to block bad attachments. Neither method means that bad attachments can't be blocked, it's just a question of whether a mail server or firewall's doing the job.
3) I think that argument is insane. Two servers equals two points of failure. If the mail server goes down you may never learn about the link. If the web server sharing the link goes down you've got only the the text not the attachment which might be the whole purpose for the email. If you honestly think a solution that adds another point of failure is better go get a refund on your education.
4) You can block email attachments too.
Regarding putting a pitbull in my mailbox...I assume you're stretching the analogy and the pitbull's like malware in an attachment? But if so this is a false argument. I could just as easily put dangerous goods in a package that will fit in your mailbox.
What you're basically saying is you don't like how email has evolved. However someone obviously saw the need to allow mail to carry attachments and added the capability which has now been widely adopted and is considered useful by many (including me). That doesn't mean this capability is wrong - it just means people don't like it (just like you might not like the design of some part of a car but if it isn't causing harm it's not wrong)
Your idea of never including a document as an attachment but rather linking to a URL fails on a number of fronts:
1) You have to set up URLs that are accessible to all recipients, but not anyone else, which can be a security nightmare to do properly. 2) Email needs to be readable offline. Implementing all attachments as URLs would inevitably lead to email clients that would go out and fetch attachments anyway so that they could be read offline. 3) You now have to rely on two servers being up and running correctly to send/receive email - a web server as well as the email server. You no longer have a situation where mail is delivered or not, but instead you have one where parts of the email might be received. This isn't impossible to manage but it has the potential to make the email system much more complex. 4) There's nothing to prevent a virus/malware from attaching itself to a document hosted at a URL. Your solution has no effect on this problem.
Think of it this way. If email is akin to snail mail, attachments are akin to packages. what you're suggesting is that the mail/courier company never delivers packages but rather holds them at some warehouse where people have to go out and get them. This approach may elliminate some problems but it creates a lot more.
Sorry hit submit too quickly. That sentence was meant to read...since 1995 and I was going to qualify that as the date the discovery was officially confirmed.
I finished my Astro masters online a few years ago, and we studied the techniques being used to detect extra-solar planets. The are lots of these being discovered each year since
Wikipedia lists the current number of known extra solar planets as 180, but this is bound to be out of date. I don't know if you'd call the discovery of 3 more news. Here's what wikipedia has to say: http://en.wikipedia.org/wiki/Extrasolar_planet
For those not afraid of the more technical stuff there's a lot of good information in the form of scientific papers at: http://arxiv.org/
The holy grail at the moment is confirmed discovery of an Earth sized planet that may be suitable for life to come into being on.
Yep that's what I like to see in my financial planner's strategy: Novelty. *rolls eyes* It's amazing what people are willing to believe and put up with - the same people who wonder why it happened when they get taken for all they've got.
The technology is also very different. When you speak of Apollo you're talking computers with less memory than just about any computerised gadget today.
The technology today's more complex and I'd argue less robust as we've moved towards planed obsolence and disposable gear with a shelf life measured in months.
Let me hand you a tissue and suggest you might have a blocked nose.
First test this fails is credibility. Mostly due to jumping on a hyped up technical term from one industry (P2P, IT) and attempting to use it out of context in a different industry (Finance). I smell snake oil.
Tone is also communiacted through punctuation sometimes. Context is vital.
I helped my uncle Jack...Off the horse! (Ordering someone to get off the horse after talking about your uncle Jack).
I helped my uncle. Jack Off! The horse! (Insulting my uncle for the inconvenience of having to help him with something he shouldn't have needed help with)
Also grammar and ethnicity can play part. I helped! My uncle jack off the horse. (I helped meanwhile all my uncle did was jack off the horse).
Ah this reminds me of my compiler class in uni....no not that way!
No offense, but I would have shot myself. That course has no place in a CS curriculum for concentrators.
;)
I found it very useful. The easy stuff required no study and was a matter of completing a 20 minute test to show proficiency. Typing was also included so those who couldn't type were forced to get to 20wpm - reasonable for a coder. The more complex stuff - Excel advanced formulae, pivot charts etc. was good for picking up skills I didn't have because I'd had no need for them to that point.
You're absolutely right, though - teaching what the compiler does would be a good topic. For a compilers course. But in an introductory programming course, informing the student that the compiler takes program code and creates something the computer can run is all you need.
That's all I'm talking about. You're assuming anyone who's enrolled in a computer course knows a compiler takes one form of code and produces another. I'm not talking about a compiler course. But some knowledge that the compiler can build for different levels of optimisation, include debug code or not etc. isn't so bad (or so complex). It's just not something everyone entering the course would know either.
Then why bother teaching it?
Using IDEs can be very simple, but showing how to use the "advanced" features can take quite a bit of instruction - instruction that has no place in a class that isn't teaching you about IDEs.
If it's so simple why bother teaching it. If it's so complex, it has no place in the course? Why is it all or nothing with you? Why do you insist on assuming computer knowledge that may or may not be present.
I'm not and never was talking about teaching advanced features. I was talking about an introductory course introducing both the ideas of a command line driven compiler, and an IDE, as they are both commonly used tools.
I seriously think that getting a complier up and running, on any platform, with the proper links given to the student on where to find said compiler, should be enough for anyone with half a brain.
Truely is that simple for some environments. Truely isn't for others. Depends on setup complexity and documentation provided.
I said this in another part of this big thread: why give your students calculators when you are teaching them to multiply?
You don't if you're teaching them to hand multiply. However at some point you assume they can do that and move on. By the way why on Earth calculators are used these days for anything more than the simplest equations is beyond me. Anything beyond about 10 operations and I fire up a spreadsheet. Gives you repeatability, what if scenarios and the ability to fix errors very quickly without rework.
So do you want professors to help set up students' net connections? You want to teach them how to navigate Windows? Do you need to teach them how to turn on their computers?
:) But there doesn't need to be any "platform" because code is just that.
There are two ways to tackle this. Make this part of an intro to programming class or have a special class for teaching basic computer skills. Yes these skills should be taught. Either way if the person you're teaching is new to these things you don't expect them to pick it all up instantly.
When I did my undergrad we had an intro class that was pass fail and taught and tested you on your ability to do the basics including use Explorer and Office (Excel and Word) properly. (eg. advanced formulae and chartin in Excel). I already had these skills and it was a walk in the park. For others this was all new and without it they may have sunk in other subjects.
So do you want professors to help set up students' net connections? You want to teach them how to navigate Windows? Do you need to teach them how to turn on their computers?
That's a great thing to say to someone who doesn't know what a compiler or an IDE is. Yes you teach them how to become computer professionals. If they've enrolled in a computing or IT course they're paying good money to at least be pointed in the right direction.
If kids have trouble with getting stuff to compile, the professor^W TA is there, but it does not need to be part of the curriculum
No, the TA is there to help clarify what to do, not to teach new material. Again you don't have to stand up in class and say here's the command blah blah blah. You point them at a good resource - either your own lecture notes or a book or a good tutorial. What's more you teach them what they're doing not just how to to do it. What does the compiler do? Why do we need all these switches? etc.
one, that students can figure out how to compile code with very little instruction. Often just a link works.
Depends on the quality of the link. A good link would have lots of instruction. You're again not thinking in terms of someone who doesn't even know what a goddamn compiler is.
But two, that IDEs should not be taught because they are above and beyond the scope of most programming courses
In the real world as a coder you're much more likely to be sat in front of an IDE at some point early in your career. Most IDEs are there to simplify the process not make it harder. It's no harder clicking a compile button than typing in an obscure command line you don't understand.
So, yes, if IDEs were being used in the class, they are complicated enough that instruction might be helpful. But in most classes, IDEs are not necessary and detract from what students are being taught. They need to learn to write code, not "Solutions" or whatever the hell they are calling them now, unless the course is specifically for that.
What the???? Code implements a solution to a problem. It's not some abstract and separate thing to be taught. There are technical aspects to code that are technical and have nothing to do with any one solution. Either that's really badly phrased or you've totally lost the plot. What's more it sounds to me like you've never used a decent IDE in your life. Most IDEs can be used as little more than editors with a compile button. How is that complicated compared to your simple idea of telling them to go work out how to compile by themselves.
I did an intro to Java class as a blowoff class (I was a third-year CS), but not once did the professor in class tell us how to run the darn thing. That's what TAs are for
If by 3rd year you don't know how to compile software there's a problem. You should have seen several languages at that point. If it's a first year course you better explain the compiler. Furthermore if it's a 3rd year course and they haven't seen an IDE there's a problem. That's like a 3rd year carpenter that's
Tutorials that come with the program, of course.
Oh yes because we all know that every program ever written comes with brilliant tutorials.
I would not expect a student to be able to even begin to know how to work a simulator. But I would expect them to be able to figure out how to start the program or be able to install it and run it on their computer.
First of all most commercial simulators actually require a team of technicians to run and maintain them. You're assuming that everything's simple. A setup.exe to launch or a command line tool to look up. It really depends on the environment. I've worked with compilers and environments that were hell to set up. (Eiffel comes to mind, as does a full blown J2EE environment). In any case familiarity with a particular operating system, installation etc. shouldn't be assumed. You're being elitist and excluding anyone that doesn't already have familiarity with computers (presumably on the basis that a non-hobbiest isn't interested and has no business doing the course). This is just plain wasteful. I've seen people go from not knowing any of this stuff to being very proficient coders in a short timespan. However that did require some help pointing them in the right direction.
Plus your analogy is all off, anyway. When you put a student in a simulator, let's say for a commercial airline, you are teaching them to fly the aircraft that simulator is simulating. Do you want to also include flight attendants, hijackers, angry travellers, company politics, etc.? No, you're just learning how to fly. In the same respect, you're just learning how to program, not use an IDE. Why include all that extra crap when students are just going to want to be able to do it their way, anyway?
You're not teaching them how to install a coding environment either. Why do you think the IDE is extra crap, but learning to install is necessary. Both tasks are going to be useful in the real world. I'd argue exposure to both is absolutely essential. Where we disagree is that I don't believe doing an install and working out what the best literature to learn from is the best place to start, and while an IDE does require extra effort in some areas I also believe it simplifies the development process enough that it's worthwhile including in the introduction.
That doesn't rule out excercises or proficiency testing on either the install process or the manual use of a compiler - it's just not the first thing you show the student.
About the download link: You should at least be able to download Dr. Scheme and figure out how to run the goddamn thing without any instruction from the professor.
Why? A lot of these students are kids are fresh out of highschool. They don't have the maturity level to be doing self paced learning. That's what university should teach them. There's a difference between hand holding and teaching them how to learn for themselves. "This is the big bad world work it out for yourself" is just a lazy teacher's method of avoiding any real work. What exactly is the point of even having a lecturer if he's not going to help point you in the right direction. Anyone could get themselves a web connection and save a fortune in tution. I've been a lecturer, and while was never a hand holder if I wasn't providing pointers to the information and making sure there's clarity on what's to be assessed I wouldn't have considered myself to be any good.
Your attitude (unfortunately shared with many others) - calling the user a "whiny luser" - is the fundamental problem with open source today, not unproductive coders.
No warranty is fine. It's actually there to protect the developer from getting sued. It doesn't mean that if the developer is advocating wide scale use of their work, they shouldn't expect there will be a need to fix bugs.
The conversation goes something like this:
1) Developer: Users shouldn't be tied to commercial software. You should be allowed to see the code and make changes if you need to. Here's something much better that's not only free as in beer but free as in not closed.
2) User: Cool. It's not bad at all. I don't use those other features anyway in my bloatware. I'll give this a go.
3) User: Wait a second this bug here means I've lost work, and if this one here isn't fixed I'm going to have to switch back because I can't get this piece of work out to my boss otherwise. I just spent 6 months converting my files to this format and now I'm stuck. Please help!
4) Developer: Look it clearly says you have no warranty. If you can find someone else to give you support that's fine but I only do this in my spare time and I didn't take your money so don't be so demanding. Besides you have the source. Go fix it yourself. We actually do have a fix but it's not in the stable branch. We've solved the problem so it's not of much interest to us. Maybe in some future stable release we'll roll it into the code.
5) User: But you convinced me to use this! You said I'd be better off and now I'm in a pickle. I don't have the skills to change the code and I can't find anyone willing to take on the work, besides it'll cost hundreds of dollars if I do.
6) Developer: Don't get narky with me. Like I said I do this in my spare time. You should thank me.
7) User: !@%$ you. I'm switching back since I can get support for the other product. It'll take me 6 months to move my stuff back to the old format. I'm never wasting my time with open source again! It's free and you get what you pay for. It's a bunch of geeks who have no social skill and won't help you out when you rely on your product. Obviously a complete waste of time. I'm telling all my friends not to let anyone convince them to switch to open source either.
Wait a sec. One minute you said you got no instruction on how to use it then the next minute you're on about tutorials.
If all they gave you was a link, you paid a lot of money to have a lousy professor tell you to go learn on your own. This isn't something to strive for. It's an example of an education system letting the students down. There should be no reason to expect students to go out and learn on their own if the goal is to have them come out with some common frame of knowledge.
Would you put a student airline pilot in a simulator with no instruction and say go learn???
...and then when no body wants to adopt open source because they've taken this exact approach people bitch and moan about proprietary software and how everything should be free as in living in la la land, or take out huge ads in the New York times.
Can't have it both ways. Either respond to the user's when there's a problem regardless of whether you're being paid, or don't push open source and Linux onto everyone including grandma Jones who wouldn't know a command line from a space alien. Otherwise you're no better than a damned drug dealer who provides the drugs for free at first then says if you want the next hit you better pay me.
If you put it out for free, and warn it's unsupported, that's fine, but don't expect anyone to care or use it. If you offer lousy support because "hey I'm doing this for free in my spare time" then you're just making yourself look bad.
When is the last time you wrote a serious piece of code sequentially and didn't modify or replace entire sections as you went? Being able to use an editor actually frees you up to think about the problem by breaking the problem up into more managable pieces and filling
in the blanks for the piece you're not focusing on later.
I'm going to go against the grain here and say that you need to make an introduction to programming as simple as possible for two reasons. The first is you don't want to put people off by making it an ordeal. (Initiation rights and rights of passage are stupid primitive behaviour that don't belong in a coding class). The second is that the way you solve any problem or learn any skill is by breaking it up into smaller manageable pieces so that you can cope with each piece then put the skills together. Not everyone taking one of these classes already has exposure to programming.
Nope. Bad idea. A good program isn't written serially in sequence. Parts are added and deleted as requirements change and parts evolve. What's more having code in computer form makes it searchable.
When is the last time you wrote a non-trivial piece of code in sequence? Be honest now.
Oh yeah no difference at all.
/.
Mars rover: 40 minutes of lag between steps, and doing something as simple as rotating and rolling wheels based on camera feeback. Coarse grained movements generally okay.
Surgery: Miniscule accurate movements. If something unexpected happens and the patient starts to bleed getting one thing even slightly wrong kills the patient.
Only on
1) Yes but you also have the option of attaching if there's no common place that's accessible to all recipients. A links only solution removes that option.
2) Yes and offline viewing solutions are notoriously bad. Further there are solutions that could work to block a share, just as there are solutions like virus scanners to block bad attachments. Neither method means that bad attachments can't be blocked, it's just a question of whether a mail server or firewall's doing the job.
3) I think that argument is insane. Two servers equals two points of failure. If the mail server goes down you may never learn about the link. If the web server sharing the link goes down you've got only the the text not the attachment which might be the whole purpose for the email. If you honestly think a solution that adds another point of failure is better go get a refund on your education.
4) You can block email attachments too.
Regarding putting a pitbull in my mailbox...I assume you're stretching the analogy and the pitbull's like malware in an attachment? But if so this is a false argument. I could just as easily put dangerous goods in a package that will fit in your mailbox.
What you're basically saying is you don't like how email has evolved. However someone obviously saw the need to allow mail to carry attachments and added the capability which has now been widely adopted and is considered useful by many (including me). That doesn't mean this capability is wrong - it just means people don't like it (just like you might not like the design of some part of a car but if it isn't causing harm it's not wrong)
Your idea of never including a document as an attachment but rather linking to a URL fails on a number of fronts:
1) You have to set up URLs that are accessible to all recipients, but not anyone else, which can be a security nightmare to do properly.
2) Email needs to be readable offline. Implementing all attachments as URLs would inevitably lead to email clients that would go out and fetch attachments anyway so that they could be read offline.
3) You now have to rely on two servers being up and running correctly to send/receive email - a web server as well as the email server. You no longer have a situation where mail is delivered or not, but instead you have one where parts of the email might be received. This isn't impossible to manage but it has the potential to make the email system much more complex.
4) There's nothing to prevent a virus/malware from attaching itself to a document hosted at a URL. Your solution has no effect on this problem.
Think of it this way. If email is akin to snail mail, attachments are akin to packages. what you're suggesting is that the mail/courier company never delivers packages but rather holds them at some warehouse where people have to go out and get them. This approach may elliminate some problems but it creates a lot more.
Sorry hit submit too quickly. That sentence was meant to read ...since 1995
and I was going to qualify that as the date the discovery was officially confirmed.
I finished my Astro masters online a few years ago, and we studied the techniques being used to detect extra-solar planets. The are lots of these being discovered each year since
Wikipedia lists the current number of known extra solar planets as 180, but this is bound to be out of date. I don't know if you'd call the discovery of 3 more news.
Here's what wikipedia has to say:
http://en.wikipedia.org/wiki/Extrasolar_planet
For those not afraid of the more technical stuff there's a lot of good information in the form of scientific papers at:
http://arxiv.org/
The holy grail at the moment is confirmed discovery of an Earth sized planet that may be suitable for life to come into being on.
Yep that's what I like to see in my financial planner's strategy: Novelty. *rolls eyes* It's amazing what people are willing to believe and put up with - the same people who wonder why it happened when they get taken for all they've got.
Replying as anon, then posting to back yourself up as non-anon is well....childish.
The technology is also very different. When you speak of Apollo you're talking computers with less memory than just about any computerised gadget today.
The technology today's more complex and I'd argue less robust as we've moved towards planed obsolence and disposable gear with a shelf life measured in months.
Fee fie foe fum. I smell a rude coward and a troll that gets his thrills anonymously abusing people he doesn't know. Thanks for the laugh.
Not to mention you'd get to say "Wii told you so" :-)
No no, it's go to the moon before the terrorists get there and start building weapons of mass destruction. Get the propaganda right!!! :-)
Let me hand you a tissue and suggest you might have a blocked nose.
First test this fails is credibility. Mostly due to jumping on a hyped up technical term from one industry (P2P, IT) and attempting to use it out of context in a different industry (Finance). I smell snake oil.
Tone is also communiacted through punctuation sometimes. Context is vital.
I helped my uncle Jack...Off the horse!
(Ordering someone to get off the horse after talking about your uncle Jack).
I helped my uncle. Jack Off! The horse!
(Insulting my uncle for the inconvenience of having to help him with something he shouldn't have needed help with)
Also grammar and ethnicity can play part.
I helped! My uncle jack off the horse.
(I helped meanwhile all my uncle did was jack off the horse).
Ah this reminds me of my compiler class in uni....no not that way!
Thank you for your concern. I'll risk it. Please remove your greedy paws from my content provider's pocket.
Disgustedly yours,
Cash cow 9463450.
I didn't know they had blind deaf Ostriches in New Zealand because YOU'VE GOT YOUR HEAD BURIED IN THE SAND.
Think I'm being rude and inflamatory? I had to control myself from telling you where I really think your head is buried.
Just sign away your life here _____ and here ______ and agree to us taking your first born here _________ and I'll give you the link.
Yours truly
I think you meant to say "People of the world first recognise what you have that is slowly but surely being ripped away from you".