Showing posts with label education. Show all posts
Showing posts with label education. Show all posts
Wednesday, August 1, 2012
The well-organized data science project
Someone recently asked me about the basic setup a computational scientist needs to conduct research efficiently. I'm pretty satisfied with my current arrangement, which was inspired by this: "A Quick Guide to Organizing Computational Biology Projects"
My work is organized into individual "projects" which are each supposed to become papers at some point. I keep each project in Dropbox to ensure everything is synced and backed up remotely all the time -- no file left behind. I also use Mendeley, with a folder for each project's references. Mendeley can generate a project-specific BibTex file from a folder.
A well-organized project might look like this:
Wednesday, February 24, 2010
Python workshop #2: Biopython
As promised, here are the slides from Monday's Biopython programming workshop:
This was another 2-hour session, with a short snack break in the middle this time -- which was also a nice opportunity to ask everyone about the pacing, and see if who's been following along with the examples in IPython (versus staring at a BSOD or lolcats -- which I didn't notice any of).
This went well:
Biopython programming workshop at UGA
View more presentations from Eric Talevich.
This was another 2-hour session, with a short snack break in the middle this time -- which was also a nice opportunity to ask everyone about the pacing, and see if who's been following along with the examples in IPython (versus staring at a BSOD or lolcats -- which I didn't notice any of).
This went well:
- Pacing
- Using IPython to inspect objects and display documentation -- this lets some people "read ahead" and perhaps answer their own minor questions, leading to other, better questions
- The general introductory pattern of:
- Demonstrate how to import a module and instantiate the basic class
- Review, in English, the core features of the module and why they exist
- Walk through a short script that uses real data to accomplish some simple but useful task(s)
- Display the result, completing the mental pipeline of input -> transformation -> output
- I didn't always execute the final draft of each example, so there were a couple typos -- inconvenient for those following along in Python. (I've fixed them in the slides here.)
- Consequently, I didn't have an output file to show at the end of each example -- so I had to describe or draft one on the spot.
- The PDB module was the coolest part of the workshop, and I rushed it a bit. I was afraid the visitors from Genetics and Plant Bio would be bored with it, but I don't think they were, and the Bioinformatics folks were left wanting more.
Labels:
biopython,
education,
presentation,
programming,
python
Sunday, March 8, 2009
Mnemosyne: Getting Things Memorized
It had been bothering me since I joined this lab that I couldn't confidently just read a protein sequence and understand what it meant — naming the residues, picturing the side chain structures, and understanding the significance of replacing one residue with another. I expected that I'd just pick it up naturally from working with sequences and structures, and that did happen somewhat. But I wanted it to be as easy as reading English, and that level of completeness doesn't happen without some rote memorization.
That brought to mind a Wired article about Piotr Wozniak and his spaced-repetition memorization program, SuperMemo. When I originally read the article I wasn't in grad school and didn't have an urge to memorize any particular list of things. Anyway, SuperMemo appeared to be Windows-only software, and an algorithm like this would be more fun to code from scratch anyway. Enough fun, really, that there had to be one or two open-source implementations floating around.
Mnemosyne popped up as the closest match in an Ubuntu package search, so I'm running with that. Putting the flash cards together was pretty simple; I was able to do it in a few minutes from inside the program and export it in the standard XML format. I zipped it up with a quick plain-text README and uploaded it to the project home page as the Amino Acids card set.
The content came from a slide in a lecture, and I did a quick sanity check on Wikipedia before uploading. The notation for the 20 standard amino acids is complete, and that was the main goal of this. The assignment of amino acid "groups" seems to be a little arbitrary, depending on the source (by structure, functional groups, chemical properties, etc.), and I tried to make the categories complete without too much overlap -- there's a small deviation from my slide here. I also added another category for "side chain properties", pH and polarity. Another enhancement might be the standard codons for each amino acid, though I'm not sure I want to deal with that yet.
That brought to mind a Wired article about Piotr Wozniak and his spaced-repetition memorization program, SuperMemo. When I originally read the article I wasn't in grad school and didn't have an urge to memorize any particular list of things. Anyway, SuperMemo appeared to be Windows-only software, and an algorithm like this would be more fun to code from scratch anyway. Enough fun, really, that there had to be one or two open-source implementations floating around.
Mnemosyne popped up as the closest match in an Ubuntu package search, so I'm running with that. Putting the flash cards together was pretty simple; I was able to do it in a few minutes from inside the program and export it in the standard XML format. I zipped it up with a quick plain-text README and uploaded it to the project home page as the Amino Acids card set.
The content came from a slide in a lecture, and I did a quick sanity check on Wikipedia before uploading. The notation for the 20 standard amino acids is complete, and that was the main goal of this. The assignment of amino acid "groups" seems to be a little arbitrary, depending on the source (by structure, functional groups, chemical properties, etc.), and I tried to make the categories complete without too much overlap -- there's a small deviation from my slide here. I also added another category for "side chain properties", pH and polarity. Another enhancement might be the standard codons for each amino acid, though I'm not sure I want to deal with that yet.
Saturday, February 7, 2009
Carrots and sticks
What's old is new again:
Professor makes his mark, but it costs him his job
In Zen and the Art of Motorcycle Maintenance, Robert Pirsig mentions his own experiment in withholding grades at a university. He didn’t just announce on the first day that everyone would get an A+ — that seems gimmicky. Instead, since it was a class on rhetoric, he spent the course developing an argument for eliminating the grades-and-degrees system and discussing it with his students.
Initially, most students were unenthusiastic or opposed — grades and degrees are what they came for. Nonetheless, Prof. Pirsig assigned, collected and graded papers, but returned them to students with only the comments, not the grade.
At first:
- A-students felt annoyed by the uncertainty of the situation, but did the work anyway;
- B-C students blew off some assignments; and
- C-D students usually skipped class.
He observed this and changed nothing. If students acted up, he let it slide.
Around 3–4 weeks into it:
- A-students got nervous and pushed themselves harder, in class and in papers;
- B-C students saw what the A-students were doing and returned to the usual level of effort; and
- C-D students who had made a routine of skipping class would occasionally show up out of curiosity.
And finally:
- A-students relaxed and began enjoying the class as active participants. In a final essay, still not knowing what their grades were, these students favored eliminating grades by 2–1.
- B-C students saw this, panicked, and began putting an unusual amount of effort into their work. Eventually, they joined the A students in engaging class discussions. Ultimately, these were evenly divided over the issue of eliminating grades.
- C-D students — or those who attended — also saw this and began trying to hand in reasonable work. Those who couldn’t hack it freaked even more, and remained in a state of Kafkaesque terror until the quarter mercifully ended. Naturally, in the final essay these students were unanimously opposed to eliminating grades.
Interesting as this result was, Pirsig reverted to the regular grading system the next quarter because he couldn’t provide any alternate goal for students — those who can recognize quality in their own work don’t need the university; those who can’t need something to work toward, or they don’t progress.
Subscribe to:
Posts (Atom)