locked
health informatics and databases RRS feed

  • Question

  • Hello,

    I'm beginning a health informatics masters program and they require some background in computer science, but not necessary. I'm a pharmacist, but played around with html/css, php, asp.net, mysql to build my own, personal website; but that was a long time ago.

    I'm going to start learning C#, but I know databases play a substantial role in health informatics, whether it's modifying existing databases or creating new ones from scratch. From my reading and other responses I think I need to start learning object-oriented databases. Any pointers on where to start? I need professionals' opinions, not just random google result. ;-)

    Tuesday, September 27, 2011 1:53 PM

Answers

  • The topic you're searching for is "Database Normalization" or "Database Normal Forms."  The original authors on the topic were Boyce and Codd and they developed the normal forms.  But you'll find that the reading pretty dry.  Those books are classics, but they're not very practical.  Seriously Googling and reading about the normal forms would be my recommendation for their input.  But also look for a book called Database Design for Mere Mortals by Michael J Hernandez.  It breaks down the normal forms into English to help you understand it better.  Unlike other computer books, this topic hasn't changed much in time and those books have been around a long time and continue to be relevant.


    Eric Isaacs
    • Proposed as answer by Peja TaoEditor Thursday, September 29, 2011 2:53 AM
    • Marked as answer by Peja TaoEditor Thursday, October 6, 2011 9:23 AM
    Tuesday, September 27, 2011 4:02 PM
  • After some researching, I still don't know why would I go for Normalization instead of Relational Databases? It seems that relational pops more and there are a plenty tutorials, and video tutorials on it.


    Normalization and relational databases are not mutualy exclusive.  One usually models data using normalization techniques (http://en.wikipedia.org/wiki/Database_normalization) and implements that design in a relational database.  It is also possible to implement non-relational designs in a relational DBMS by bending or breaking normalization rules.

    Personally, I would start by learning the normalization process rather than jump directly into specialties like an OO DBMS.  Going through the normalization process will help you better understand the data itself rather than designing the data store around how it is used by applications.

     

     


    Dan Guzman, SQL Server MVP, http://weblogs.sqlteam.com/dang/
    • Marked as answer by Peja TaoEditor Thursday, October 6, 2011 9:23 AM
    Saturday, October 1, 2011 3:27 PM
    Answerer

All replies

  • The topic you're searching for is "Database Normalization" or "Database Normal Forms."  The original authors on the topic were Boyce and Codd and they developed the normal forms.  But you'll find that the reading pretty dry.  Those books are classics, but they're not very practical.  Seriously Googling and reading about the normal forms would be my recommendation for their input.  But also look for a book called Database Design for Mere Mortals by Michael J Hernandez.  It breaks down the normal forms into English to help you understand it better.  Unlike other computer books, this topic hasn't changed much in time and those books have been around a long time and continue to be relevant.


    Eric Isaacs
    • Proposed as answer by Peja TaoEditor Thursday, September 29, 2011 2:53 AM
    • Marked as answer by Peja TaoEditor Thursday, October 6, 2011 9:23 AM
    Tuesday, September 27, 2011 4:02 PM
  • Thanks for the reply.

    Do you think I should learn C# first or Database design?

    Friday, September 30, 2011 3:51 AM
  • Since you've done some programming and since there are a lot of software developers out there that have not studied up on database design, I believe studying db design would help you more in the long run.  Also, db design applies to any software language you develop with or any database platform, whereas C# is a specific language. 
    Eric Isaacs
    Friday, September 30, 2011 3:44 PM
  • After some researching, I still don't know why would I go for Normalization instead of Relational Databases? It seems that relational pops more and there are a plenty tutorials, and video tutorials on it.
    Saturday, October 1, 2011 1:38 PM
  • After some researching, I still don't know why would I go for Normalization instead of Relational Databases? It seems that relational pops more and there are a plenty tutorials, and video tutorials on it.


    Normalization and relational databases are not mutualy exclusive.  One usually models data using normalization techniques (http://en.wikipedia.org/wiki/Database_normalization) and implements that design in a relational database.  It is also possible to implement non-relational designs in a relational DBMS by bending or breaking normalization rules.

    Personally, I would start by learning the normalization process rather than jump directly into specialties like an OO DBMS.  Going through the normalization process will help you better understand the data itself rather than designing the data store around how it is used by applications.

     

     


    Dan Guzman, SQL Server MVP, http://weblogs.sqlteam.com/dang/
    • Marked as answer by Peja TaoEditor Thursday, October 6, 2011 9:23 AM
    Saturday, October 1, 2011 3:27 PM
    Answerer
  • THanks for the reply.

     

    I'll go with normalization, but is there a reliable tutorial website that I could learn from and stick to instead jumping around with different sites? Any video tutorials?

    Saturday, October 1, 2011 6:11 PM
  • YouTube.com would be a great place to start.
    Eric Isaacs
    Monday, October 3, 2011 9:03 PM