1

I am new to programming as well as to creating e-learning web sites. I have recently read tutorials and articles on HTML, Java, PHP, MySQL, using flash to create e-learning and how to use Dreamweaver in order to create an online e-learning course (not much knowing whether I am on the right track). I am planning to use Macromedia Dreamweaver (Flash, Fireworks) MX 2004 (just because I have them) and have installed the Apache with PHP and MySQL servers on a Windows computer. Could you please tell me if I am heading the right direction? I have a specific question as well. Could you please also tell me if I should use XML or MySQL database to track the knowledge of individual users and deliver customized contents tailerod to the learning needs of the users?

Thank you!

Baterdene (Mongolia)

Joel Coehoorn
  • 399,467
  • 113
  • 570
  • 794
Baterdene
  • 11
  • 1
  • 2

4 Answers4

5

A database has the advantage of SQL as its query language, relational theory as its underpinnings, and years of optimization by vendors.

XML is little more than a data format that carries its own meta-data along with it. You can serialize it to and from disk, parse it into memory using standard parsers, and query using XPath, but it's not configurable or optimized to the same degree as SQL.

XML can be useful as a configuration format or a wire protocol or simple serialization to disk, but it's not a full-fledged persistence technology.

There are lots of NoSQL alternatives if you would rather not use a relational database. But I wouldn't consider raw XML as one of them.

duffymo
  • 305,152
  • 44
  • 369
  • 561
2

I would use a database. Using XML may become unmanageable as the number of users grows. Using a database from the start ensures you have the room to expand and develop as your user base increase.

Matt Asbury
  • 5,644
  • 2
  • 21
  • 29
1

I think it'll be useful to you to know what's the basic difference between using database and XML. You can better plan what should you use for your e-learning application and clear your base about both technology as well.

http://www.room4me.com/index.php?option=com_content&view=article&id=8:xmlvsdb&catid=2:technology&Itemid=5

Dhaval
  • 901
  • 3
  • 8
  • 26
0

From reading your question, it seems you are currently investigating a lot of tools to get a e-learning site up and running. Seems like you are also spending time getting stuff ready on a machine.

Keeping this in mind I would recommend you check out Google App Engine. You can use Java or Python. In my opinion it will help you concentrate on your solution rather then spending your time setting up stuff so you can actually start programming. And guess what else, it is FREE. :)

As far as storage, I would recommend a database. Check this stackoverflow question for uses cases for NOSQL.

Community
  • 1
  • 1
Juba
  • 4,425
  • 3
  • 25
  • 19