Ed's Big Plans

Computing for Science and Awesome

Python Crash Course & CS[64]83 Next Directions

without comments

Python Crash Course

Having completed teaching that Python Crash Course before reading week, I can say that I’m probably not going to teach it again any time soon for its time commitment! It was a good experience for me since I’ve figured out how to balance content for time and also how to talk to a crowd of heterogeneous experience levels in programming.

There’s going to be a PERL one-off course offered by BIC on this week that I think I’ll attend to figure out what the general style is for one-session courses– it was previously offered by Edgar and is offered this time by Anna and James.

I definitely need to clean up the course materials, but Andre thinks we should have my course packaged along with the Biology for Engineers course he offered. These two packages will eventually be shipped off to oGEM & iGEM HQ as per their recent interest in local workshops.

Link: Python Crash Course Materials

CS [64]83 Structural Bioinformatics

I threw up a hints page some time two weeks ago to coordinate help for assignment three for the structural bioinformatics course I’ve been auditing. I’ll probably take it down from the main menu when it becomes completely irrelevant. For the mean time, I’ll leave it up or replace it with assignment four hints when that gets underway.

I think I’ll eventually consolidate all of my one-off pages as a single page linked in the menu to reduce clutter. I’ll probably put all of my slide shows in there too.

Link: Structural Bioinformatics A3 Hints

Written by Eddie Ma

February 28th, 2010 at 4:18 pm

Oh, right! Newick format for tree representation.

without comments

Update: I cover how to parse the Newick format with recursive descent here.

Brief: The Newick format offers a nice flat representation of a tree. This is done by performing a depth-first (prefix) traversal on the tree and documenting each of the nodes and lengths of edges as they occur during that traversal. Note that this representation is only valid for directed acyclic graphs and inherently preserves the parent-child relationships between the nodes. While there is no restriction on where a root node is for a particular set of data, the format indirectly specifies a root node as the last node to be visited in the traversal. The Newick format is used in phylogenetic trees, and is inherited by MUSCLE through compatibility with PHYLIP. The format does not state a particular arity, although the culture of phylogenetics has made the binary tree the most common flavour. Finally, due to the regular nature of its encoding, Newick format strings are just as regular to convert back to their in-memory representations.

Written by Eddie Ma

February 26th, 2010 at 4:10 pm

iGEM*BIC — An Awesome Meeting

without comments

About two weeks ago (Feb. 11th), we had an iGEM*BIC meeting where five iGEM members showed up and roughly a dozen BIC members showed up. I expected a few more from iGEM but they ended up with illnesses or midterm exams that week.

We started the meeting with a nice description of BIC from Anna, followed by a nice description of iGEM at large then iGEM at home from Andre. I then finished with a collaborative projects presentation.

I’ve attached the slides I presented (actually, I’ve updated them since then)– just like the very last set of slides for the Python Crash Course, I ended up using iWork Pages this time around instead of NeoOffice.

Download: Updated slides [pdf].

The meeting was designed to go for half an hour because of its proximity to midterms. We ended up discussing for about two hours about all of the projects we wanted to try this term– everything from the now defunct Bunny Buddy to BactoBones to BactoHouseMD.

Anna had remarked earlier that iGEM isn’t well marketed to CS students or BIC– so this will certainly be a recurring thing at the beginning of each semester. This is particularly important summer because the next stream of BIC students are returning from co-op.

The general consensus is that everyone was interested in doing *something* in iGEM which is a real bonus. This Wednesday, we’re going to have a modeling meeting that’s punctuated with John’s mini-project talk. I’m hoping that many BIC members will show up to carry over their interest.

My original assessment that most BIC students would want to do in silico modeling and software development was far off. As it turns out, BIC students showed interest in every facet of iGEM from wet lab to software development to outreach and public relations.

A direct consequence of the iGEM*BIC meeting is that we had a much larger design meeting the next day (Feb. 12th)– thirteen showed up.

Finally, the feeling of the group is that the next crossover meeting should be more social. I think that’s something we can shoot for, for early summer.

Written by Eddie Ma

February 21st, 2010 at 3:54 pm

Logo and Title with Arclite Theme v2.02

without comments

This is an update to this post.

It’s even easier in this version of Arclite 2.02 to throw up both a logo and title.

Edit header.php as follows…

Before:

<?php
      // logo image?
      $logo = (get_arclite_option('logo'));
if($logo): ?>
      <h1 class="logo"><a href="<?php bloginfo('url'); ?>/"><img src="<?php echo $logo; ?>
      "title="<?php bloginfo('name');  ?>" alt="<?php bloginfo('name');  ?>" /></a></h1>
<?php else: ?>
      <h1 class="logo"><a href="<?php bloginfo('url'); ?>/"><?php bloginfo('name'); ?></a></h1>
<?php endif;  ?>

After:

<?php
      // logo image?
      $logo = (get_arclite_option('logo'));
if($logo): ?>
      <h1 class="logo"><a href="<?php bloginfo('url'); ?>/"><img src="<?php echo $logo; ?>"
      title="<?php bloginfo('name');  ?>" alt="<?php bloginfo('name');  ?>"
      style="vertical-align:text-bottom;" /><?php bloginfo('name'); ?></a></h1>
<?php else: ?>
      <h1 class="logo"><a href="<?php bloginfo('url'); ?>/"><?php bloginfo('name'); ?></a></h1>
<?php endif;  ?>

That’s it!

  • style="vertical-align:text-bottom;"
    • This chunk is used to keep the logo in line with the title text as last time.
  • <?php bloginfo('name'); ?>
    • This chunk produces the title text.

Written by Eddie Ma

February 15th, 2010 at 1:48 pm

Posted in Web Programming

Tagged with ,

Python Crash Course — 4/5ths done!

without comments

This week is going to be crowded enough for me that I’m going to cancel this week’s class. On the bright side, the classes have gone better than I thought it would. We will continue on February 9th.

The very first class ended up being too short, with the advanced students feeling that it moved too slowly. The second and third classes ended up being just the right speed– with the exception that the example fill-in-the-blank script from the third class was too difficult.

The difficulty rose when I too quickly introduced dictionaries whose values are lists.

The fourth class held last week was excellent– I completely ditched slides that week and produced five fill-in-the-blank scripts that were just the right tempo for everyone. I had a good mix of BIC (Bioinformatics Club), iGEM and chemistry graduate students– all who attended got something out of the hour which was my objective.

We only had time for four out of the five scripts with the remaining script as a bonus that everyone could take home and try.

Now, it’s back to Structural Bioinformatics homework… It’s quite a daunting assignment to be true (having just formally shaken hands with Singular Value Decomposition), but the parts that are Python (particularly the bonus question) are familiar enough for comfort.

Written by Eddie Ma

January 31st, 2010 at 5:03 pm

Update: General Anesthesia – Risk for Women, Canada.

with one comment

This is a more balanced article about the issue found in The Hamilton Spectator.

“Disclosure of pelvic exams in question” (Joanna Frketich); found at the following address.

http://www.thespec.com/News/Local/article/714924

Summary, origin of the phenomenon, contrasts with previously posted article:

  • A study was published (found here, “Education” — http://www.sogc.org/jogc/currentissue_e.aspx – accessed Jan 2010)
  • Pelvic exams are integral to some surgeries, part of determining proper treatment
  • A pelvic exam is performed three times, once by each a doctor, a resident, a medical student
  • Contrast to Mr. Picard’s article posted previously indicating a ‘parade’ of students
  • The actual problem is whether or not the single student on the team has been given direct consent
  • Whereas what is thought of as implied is that the team is given consent as a whole (opinions, practices will change)
  • Article goes on to indicate that this consent for each individual should be (will become) the norm

Thoughts, Conclusion:

Med students should be taught to practice — My feeling is that communication is the primary problem: the ratio of women polled that were asked explicit consent for medical students to perform the pelvic exam should have been greater.

The latter article by Frketich revisits the problem but discusses it far more calmly (so as to not break the brains of her readers). It even cites several women healthcare professionals for the inside scoop– something we didn’t get with the former article. We end up with a picture that states what we have always taken for granted in Canada– that when a problem is discovered, it is fixed– in this case, it’s communication between healthcare professionals and patients.

As mentioned in my previous post– it is an object of pride that Canada has excellent healthcare– which is the reason for the dismay, my personal dismay at even the subtle hint let alone a full blown implication of “something this wrong” with the system. If you become a surgery patient at any point, keep informed and ask the right questions: “Who’s going to be operating on me?”, “Who’s going to do the pelvic examination?”. This is the solution that taps the original problem stated: that women just didn’t know what happened for lack of communication.

Notes:

BCC’d to the same individuals contacted yesterday.

Pelvic Exams done without Consent | Cara's Awesome Blog says...

[...] Ed’s Blog … other posts by KittyCATBear [...]

Written by Eddie Ma

January 30th, 2010 at 1:07 pm