Microsoft's product prices in Brazil are approximatively twice as much as those in the U.S. It is probable that the difference is due to taxes and that Microsoft pricing be actually half of the 20% of GNI, which still amount to 10% of GNI. Related to U.S. GNI, that amounts to approx. US$4,500.00. Does it make sense to pay this amount to use Windows? I think not.
Which is why most home users have pirate copies of Windows. Most are not even aware of this: they pay, say the equivalent of 50US$, a techie that comes and installs Windows, Office, Photoshop, etc.
I teach freshmen an introductory class using a functional language (Objective Caml), but I do not think that the fact that it looks like math is of any help: they do not know anything worth in maths:-(
I have been teaching at the College level for about 10 years now (not in the US, though). I first taught "advanced" topics (operating systems, compilers), but I was so shocked by the programming skills of the students, or the lack thereof, that I candidated to teach basic programming.
I think that programming education (which is important for software engineers and computer scientists) should address first programming in the small and then programming in the large. Programming in the small includes basic programming constructs, memory management, basic input/output, algorithms and data structures. Programming in the large would include object orientation and patterns. It may be possible to start introducing the latter while teaching data structures, as some concepts such as polymorphism and encapsulation are needed to implement them in a reusable fashion.
However I find that teaching programming is extremely challenging, and the question of the programming language is only part of the problem.
Best,
David. --
Re:Ruby could be the answer as well
on
Open Source Math
·
· Score: 1
You may want to check functional languages, such as OCaml, then.
Proof exchange format
on
Open Source Math
·
· Score: 2, Interesting
IMHO, it would be an important contribution to establish an open proof exchange format that make it possible to... exchange proofs between different tools: theorem prover, proof checker, etc. Possibly this format would have a translator to a human-readable format (e.g. based on TeX) that would also make it possible for humans to review the proof process.
Microsoft nowadays gives away all their software (but Office) to our students (computer science/computer engineering). They also gave it away to install it on all machines in our labs, staff offices and staff home computers. Actually the institution has to pay a small yearly fee of say US$250.
With this policy Microsoft managed to get Windows installed back in the labs, where it now coexists with Ubuntu.
I have never used it myself, but I have seen a (Computer Science) thesis produced with Framemaker and was impressed by the quality of the work.
AC... has brains?
Microsoft's product prices in Brazil are approximatively twice as much as those in the U.S. It is probable that the difference is due to taxes and that Microsoft pricing be actually half of the 20% of GNI, which still amount to 10% of GNI. Related to U.S. GNI, that amounts to approx. US$4,500.00. Does it make sense to pay this amount to use Windows? I think not. Which is why most home users have pirate copies of Windows. Most are not even aware of this: they pay, say the equivalent of 50US$, a techie that comes and installs Windows, Office, Photoshop, etc.
I teach freshmen an introductory class using a functional language (Objective Caml), but I do not think that the fact that it looks like math is of any help: they do not know anything worth in maths:-(
www.topcoder.com and icpcres.baylor.edu
I have been teaching at the College level for about 10 years now (not in the US, though). I first taught "advanced" topics (operating systems, compilers), but I was so shocked by the programming skills of the students, or the lack thereof, that I candidated to teach basic programming.
I think that programming education (which is important for software engineers and computer scientists) should address first programming in the small and then programming in the large. Programming in the small includes basic programming constructs, memory management, basic input/output, algorithms and data structures. Programming in the large would include object orientation and patterns. It may be possible to start introducing the latter while teaching data structures, as some concepts such as polymorphism and encapsulation are needed to implement them in a reusable fashion.
However I find that teaching programming is extremely challenging, and the question of the programming language is only part of the problem.
Best,
David.
--
You may want to check functional languages, such as OCaml, then.
IMHO, it would be an important contribution to establish an open proof exchange format that make it possible to... exchange proofs between different tools: theorem prover, proof checker, etc. Possibly this format would have a translator to a human-readable format (e.g. based on TeX) that would also make it possible for humans to review the proof process.
Microsoft nowadays gives away all their software (but Office) to our students (computer science/computer engineering). They also gave it away to install it on all machines in our labs, staff offices and staff home computers. Actually the institution has to pay a small yearly fee of say US$250.
With this policy Microsoft managed to get Windows installed back in the labs, where it now coexists with Ubuntu.
David.