Contact: yuanliangliu-AT-gmail-DOT-com A hacker of the Internet for the purpose of learning, having fun, creating and helping people. ---- I speak Chinese, which is a PatternLanguage, full of patterns. :) ---- For personal questions, welcome to use my email address. :) ---- '''Request For Comments On LearningObject''' I work on elearning and learning object research. People familiar with this field probably know that there is a lot of learning object development, yet very few learning objects research. The standard specification of learning objects addresses little of the learning issues. For example, how can knowledge be reused? Some people try to associate learning object design with Instructional Design. However, using Instructional Design to guide learning object design is problematic. So instead of following Instructional Design, we applied the principles of constructivism to the design of learning objects. We think such a approach is following the heart of object oriented programming: the ideas outlined in the book Nature of Order by Christopher Alexander. "Center of lives", a concept from the book Nature of Order, is used to guide the design of our learning object, which we think is about how to form centers and patterns within certain context. So instead of following Instructional Design, which is often the assumed learning theory guiding learning object development, our design of learning object more follows the line of constructivism learning theory and supports constructivism learning environments. Our learning object is designed with a generic structure, which classifies knowledge into different types on different levels. Our learning object makes it possible and easy for authors at different levels to cooperate with each other in generating the learning objects. Our learning object is rendered in various ways to the learner according to various patterns. If interested, here is an introduction (http://www.missouri.edu/~yl2k2/ideal/). It is still a draft and any comments are very welcome and greatly needed. If you want to read more, you can contact me (yuanliangliu-AT-gmail-DOT-com). I will send the complete one to you. ---- RequestForCommentsOnRandomThoughts Can wiki be taken as a programming language? If the programming language is defined as using a small set of features to do many different kinds of things, why can't we take wiki as a programming language? Wiki allows us to do a lot of different things in various highly '''human-related''' domains (such as knowledge management, project management, team management and so on), supporting the formation of patterns(in MoinMoin, such patterns can be expressed using template). It is also highly interactive and evolvable. Isn't it a right direction towards the goal of software engineering: let everyone being able to program (http://www.python.org/doc/essays/cp4e.html)? Take the whole Internet as an OS, which stores, guards access, and allows quick access to various resources. This random thought(regarding wiki as a programming language) is just to try to address many difficult problems of software engineering. And here programming language is understood in its essense, e.g. how do we understand wiki in the essense of programming language? Further questions we can ask are: *Should we formalize the ways of using wiki to generate patterns in various domains so experts in various domains can better use wiki to express their patterns? How can we formalize it? *Can we offer wiki more power by thinking wiki as a programming language? Possibly related resources: *SelfProgrammingWiki *LiterateProgramming *WhyInteractionIsMorePowerfulThanAlgorithms (http://www.cs.brown.edu/~pw/) *ProjectWiki *TeamWiki Imagine if we think wiki engine as a shell(similar to unix shell), wiki pages as files like unix files, web service as the basic component of this shell, and write program as wiki pages, use xml to achieve interoperability... ''If "wiki" is a programming language, how do you program it to calculate the 53rd term in the FibonacciSequence? Or the 103rd PrimeNumber? No, "wiki" is not a programming language.'' Sure, it cannot do many things you mentioned. But it can do many things other programming languages cannot do or very difficult to do. It is just like a very high level programming language. ''Danish can do many things programming languages cannot do - does that make it a programming language? No. If you start to use these common terms in a manner inconsistent with current usage, prepare to be misunderstood. Don't let me stop you from speculating, but be very, very careful about the terms you use.'' ''Oh yes, and welcome to WardsWiki.'' ---- CategoryHomePage