I learned to program with Basic, and spent 7-8 years programming in C, but Smalltalk is an order of magnitude better. It is much easier to teach to new programmers than C, a even more powerful.
There are lots of different versions of Smalltalk. Squeak (http://www.squeak.org) has a very non-standard GUI but has flashy multimedia support including 3D animation, kid-oriented visual scripting, and a very active open-source support group. Documentation is weak, but some books are supposed to come out soon.
If you want very close Windows integration, you should use Dolphin (http://www.object-arts.com/Home.htm) or Smalltalk MT (http://www.objectconnect.com/).
There are a lot of different implementations of Smalltalk. All of them feature live objects that you can reprogram in the middle of the debugger. Smalltalk is much more dynamic than Java, and all the implementations of Smalltalk have programming environments that put most others to shame. Smalltalk is simple and easy to learn, though the class libraries are often big and so take a while to learn. It is ideal for learning by exploring.
Our year system is NOT based on creation being on 4000 BC and the world ending on 1000AD. It IS based on the birth of Jesus, which was supposed to be 1 AD, except that it was probably more like 4BC or 8BC. The 4000 BC date comes from some mideval scholars who calculated that date from Genesis, and it is not exactly 4000 BC, just around that.
According to Calendrical Calculations (a wonderful book on calandar conversion and computing with dates), the Jewish calendar starts when the world was created, which would be October 7, 3761 BC on the Julian calendar.
XP is similar to how most open-source projects are run, but it is extreme.
Is peer review good? Review all designs as they are invented, and review all code as it is typed.
Is early testing good? Never write any code unless you already have a test for it.
Is end user involvement good? Have a user share the office with the developers.
None of the ideas in XP are completely new, but many of them are not often practiced, and what is new about XP is the way that these ideas are defended as good. There is a lot more literature claiming that up-front design is good than there is saying that "you aren't going to need it".
"Late and right beats on time and crap every time -- or at least, it should."
This resonates with me. I wish the world worked this way. However, it doesn't seem to.
The way the world really works is described by Richard Gabriel in his paper usually called Worse is Better but which is really called "Lisp: Good News, Bad News, How to Win Big". If you want to make the world a better place then you need to know how it works. Otherwise, your attempts to change it will be futile. Most software development methods ignore the lessons of "Worse is Better". One method that pays close attention, and still manages to deliver quality software, is Extreme Programming. Extreme Programming does not work in every situation (for example, it requires small teams) but it handles market pressures well and pays very close attention to users.
I learned to program with Basic, and spent 7-8 years programming in C, but Smalltalk is an order of magnitude better. It is much easier to teach to new programmers than C, a even more powerful.
There are lots of different versions of Smalltalk. Squeak (http://www.squeak.org) has a very non-standard GUI but has flashy multimedia support including 3D animation, kid-oriented visual scripting, and a very active open-source support group. Documentation is weak, but some books are supposed to come out soon.
If you want very close Windows integration, you should use Dolphin (http://www.object-arts.com/Home.htm) or Smalltalk MT (http://www.objectconnect.com/).
There are a lot of different implementations of Smalltalk. All of them feature live objects that you can reprogram in the middle of the debugger. Smalltalk is much more dynamic than Java, and all the implementations of Smalltalk have programming environments that put most others to shame. Smalltalk is simple and easy to learn, though the class libraries are often big and so take a while to learn. It is ideal for learning by exploring.
According to Calendrical Calculations (a wonderful book on calandar conversion and computing with dates), the Jewish calendar starts when the world was created, which would be October 7, 3761 BC on the Julian calendar.
XP is similar to how most open-source projects are run, but it is extreme.
Is peer review good? Review all designs as they are invented, and review all code as it is typed.
Is early testing good? Never write any code
unless you already have a test for it.
Is end user involvement good? Have a user share
the office with the developers.
None of the ideas in XP are completely new, but many of them are not often practiced, and what is new about XP is the way that these ideas are defended as good. There is a lot more literature claiming that up-front design is good than there is saying that "you aren't going to need it".
This resonates with me. I wish the world worked this way. However, it doesn't seem to.
The way the world really works is described by Richard Gabriel in his paper usually called Worse is Better but which is really called "Lisp: Good News, Bad News, How to Win Big". If you want to make the world a better place then you need to know how it works. Otherwise, your attempts to change it will be futile. Most software development methods ignore the lessons of "Worse is Better". One method that pays close attention, and still manages to deliver quality software, is Extreme Programming. Extreme Programming does not work in every situation (for example, it requires small teams) but it handles market pressures well and pays very close attention to users.