Team:UC Berkeley Tools/Notebook/Nade's Notebook

From 2008.igem.org

(Difference between revisions)
(February 18, 2009: Meeting with Roger)
 
(88 intermediate revisions not shown)
Line 1: Line 1:
 +
[[Image: Nade_atStanley.png|center|frame|Nade hard at work. Sort of.]]
 +
 +
{{Template:ClothoMenu}}
 +
 +
 +
This is the notebook of Nade Sritanyaratana. I got involved in iGEM through word of my instructor. I am a 4th year undergraduate at UC Berkeley in Bioengineering with a concentration in imaging, and I hope to attend a PhD graduate program in the upcoming year. My prior research experience consists of working with bioengineering professor Steven Conolly in the summer and fall of 2007. Beyond imaging, my academic interests include biomechanics; signals and systems; circuit analysis; systems biology; and linear optimization.
 +
 +
Now that iGEM is over, my new role as a part of Dr. Douglas Densmore's lab is to solidify the tool, iron out any bugs, and make the Clotho Parts Manager user-customizable. My team roles during iGEM can be found [[Team:UC_Berkeley_Tools/Notebook/Nade's_Notebook/iGEM_Logs|here.]]
 +
 +
'''EDIT:''' As of after iGEM and the start of Spring 2009, the purpose of this notebook has now [[#January_8.2C_2009:_This_notebook.27s_new_purpose|changed.]]
 +
==Personal Info==
==Personal Info==
<b>Name:</b> Nade Sritanyaratana
<b>Name:</b> Nade Sritanyaratana
Line 12: Line 23:
==Log==
==Log==
-
[[June 8]], [[2008]]
+
===iGEM Stuff===
-
This is my '''first''' post in my notebook. Project Clotho has been really fun so far. I finally finished (the first draft) of the help window. Hopefully for the next assignment I don't take over four days again to finish!
+
Click [[Team:UC_Berkeley_Tools/Notebook/Nade's_Notebook/iGEM_Logs|here]] to access my old bio, archived iGEM logs, and my old wiki how-to.
-
[[Image:ClothoHelpWindow.png|center|frame|First draft of the Clotho help window.]]
+
===January 8, 2009: This notebook's new purpose===
-
My bio should be finished and ready to send to Doug. Once it's up I'll post the link.
+
For some time now, I have misplaced my iGEM (paper) notebook. I realize getting another notebook may only end up with me losing it once again. So '''I hereby declare''' that all my thoughts will go here, on my WIKI notebook.
 +
The first thing I need to do is figure out this xml deal to give the parts manager more flexibility.
-
[[June 11]], [[2008]]
+
The second thing I must do it reconstruct what Anderson and Josh wanted me to do with the Parts Manager. I forgot their entire scheme with ctrl+click, shift+click, etc. I'll hold a meeting with them to do this.
-
Doug has now assigned me to work on the Features Library, Features Connection, and gave me permission to mess with the Sequence View Tools frame. Expect pictures soon.
+
That's all that comes to mind right now. Hopefully I finish the xml deal by the 15th. I'll keep posted.
 +
===January 14, 2009: Meeting with Doug. Archival. XML developments.===
-
[[June 16]], [[2008]]
+
Short talk. Met with Doug today, back from Columbia. Has vision about plan for Spring semester with circular flow. Will talk about it on Friday with rest of team. Cleaned up my notebook; old entries are now on different page, changed up bio to better fit new semester. Now know how to write XML, validate XML documents, make a DTD, write XML documents via Java. Have to learn how to read XML via Java, which includes learning about different XML parsers. Do I sound like Rorschach? Hurmm.
-
Here's the first draft of the Sequence View Tools. Primitive for now, but constructed so to be easy to add buttons and connectors and such later on.
+
I've decided. I'm going to use the SAX2 API, and the Xerces parser.
-
[[Image:ClothoSequenceViewTools.png|center|frame|First draft of the Clotho Sequence View Tools window.]]
+
===January 26, 2009: Parts Manager Plan - Prep for meeting 1 of new semester===
-
Also ready to display is my envisioning of the Features library window. It will look very similar to the NetBeans 6.1 interface for managing Java libraries, simply because I like the customizability and sleekness of their window.
+
The parts manager is an interface connection that is in charge of parts connected to a MySQL-PoBoL database. It gathers these parts and arranges them into a table by order of hierarchy. By default, this hierarchy is defined as: 1. Biobrick, 2. DNA, 3. Sample.
-
[[Image:ClothoFeaturesLibrary.png|center|frame|First draft of the Clotho Features Library.]]
 
-
Still working on the Features Connection. Currently I'm placing priority to finish the Features Library and a new helper, ClothoFileChooser, which will, as named, act as a file chooser akin to Windows explorer. Priority was given because both were requested from Doug and Matt.
+
The flow for the Parts manager is as follows:
 +
1. grab parts from database, including collections data
-
[[June 19]], [[2008]]
+
2. Dialog box pops up, asking if parts manager should be populated or empty (sidenote, there will be a "Remember this option" checkbox, so this box need not open every time)
-
Doug's been out this week as he gets married on Friday. This translates to many good news and a tinge of the bad.
+
3. Parts manager opens
-
Good news: Doug's gets married. We get off of going to lab for a full week.
+
3A. At this time, the user can optionally repopulate the parts manager table via a plug in. The plug in will tell the parts manager HOW to populate the table, i.e. how the hierarchy and columns should be organized. The user can define this order via an XML document.
-
Bad news: I've honestly been goofing off the past two days.
+
3B. User can open up collections window to open up their own collection.
 +
4. User will create a part. There is fortunately already some support I've built for this, but I need to debug it some.
-
The filechoosers are all done, for now. I doubt a picture would really tell you much, 'cuz you've all probably seen a filechooser before. I'm working on fleshing out that features library now, as well as the features connection. Hopefully they'll be near done by Monday.
+
4A. At this time, the user can create compound parts and define rules for compound part creation via a plug in.
-
==My Wiki How-to==
+
5. Save back to DB
-
===Uploading and displaying images===
+
6. Close PM
-
Here's where I first learned how to upload images: [[Team:Hawaii/Wiki_Help]]
+
-
Props to Hawaii team!
 
-
More information was found at [http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page#Links_and_URLs Wikipedia: How to edit a page]
 
-
If you're having trouble first uploading an image, click your edit link, (LITERALLY) type in <nowiki> [[Image: imagename.jpg]] </nowiki> where you want the image, save the page, and you'll find the upload link back on the edited page! You can add modifiers to the image, as found on the Hawaii team and wiki links above.
+
The following work must be done to complete this workflow:
 +
1. Dialog box for populated or empty PM, uses preferences for that checkbox
-
===How to link to other pages===
+
2. Parts repopulation Plug in. This requires a few substeps:
-
I found how to post links at "How to edit a page" (see my "Uploading and displaying images" above). There's also a built-in button on top of the text view when editing a page for posting links.
+
-
====Internal links====
+
2a. Develop XML schema/DTD that defines the rules needed for a PM repop
-
{| border = "1"
+
-
|-
+
-
! width="100" align="left" | Instructions:
+
-
| width="300" | For urls within igem 2008, you can type in: || width="300" | <nowiki>[[The pathname that follows after "title="]]</nowiki>
+
-
|-
+
-
! align="left" | Example:
+
-
| For the Hawaii Wiki Help page, I typed: || <nowiki>[[Team:Hawaii/Wiki_Help]]</nowiki>
+
-
|}
+
-
====External links====
+
2b. Write XML document for defaulted pop
-
{| border="1" cellpadding="2"
+
2c. Cater the parser to correctly read Parts Manager XML documents. Will use SAX2 for API, and Xerces for parser.
-
|-
+
-
|width="100pt"|<b>Instructions:</b>
+
-
|width="300pt"|For outside links, you can type:
+
-
|width="150pt"|<nowiki>[url [space] name]</nowiki>
+
-
|-
+
-
|<b>Example: </b>|| i.e., for the "Wiki: How to edit a page", I typed: || <nowiki>[http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page#Links_and_URLs Wikipedia: How to edit a page]</nowiki>.
+
-
|}
+
-
That name modifier works as well for the local page format.
+
2d. Create plug in that holds all this stuff. Will definitely need some help here.
-
==Questions or Comments: Shoutbox==
+
3. Collection window. I already had a quickly hacked version of this for iGEM but I never got to complete it all the way. I'll just build on that.
 +
4. Debugging of part creation
-
Quick question? Comment? Message here: (Thanks!)
+
5. Saving back to Database
-
{|
+
-
|
+
-
<HTML>
+
-
<form action="http://www.yellbox.com/addmessage.php" method="post" target="ybframe" name="yellform" style="margin: 1px;">
+
-
<input type="hidden" name="sub_username" value="nadesri" />
+
-
<input name="sub_name" value="Name" style="width: 303px;" maxlength="10" onfocus="if(this.value == 'Name')this.value = ''; return;" /><br />
+
-
<textarea name="sub_message" value="Message" style="width: 300px; height: 100px;" wrap="virtual"; maxlength="255" onfocus="if(this.value == 'Message')this.value = ''; return;" /> </textarea> <br />
+
-
<button onclick="return clearMessageBox();" style="height: 25px; width: 15%;">Say</button>
+
-
<button onclick="javascript:makeNewWindow(); return false;" style="width: 25 px; height: 25px; border: none;"><img src="http://www.yellbox.com/images/smile.gif" alt="Smileys" /></button>
+
-
</form>
+
-
</HTML>
+
-
||
+
-
<HTML>
+
-
<div id="yellbox" style="width: 640px;">
+
-
<script language="Javascript" type="text/javascript" src="http://www.yellbox.com/ybscript.js"></script>
+
-
<iframe name="ybframe" style="width: 90%; border: 1px inset;" frameborder="0" height="158" marginwidth="0" marginheight="0" src="http://www.yellbox.com/yellbox.php?name=nadesri"></iframe>
+
6. Compound parts plug-in. I have no idea how to start here, so I'm hoping to meet with Josh and Chris when I get to this.
-
</div>
+
-
</HTML>
+
-
|}
+
-
==Go To==
 
-
[[Team:UC_Berkeley_Tools|Home]]
 
-
[[Team:UC_Berkeley_Tools/Team|The Team]]
+
===February 2, 2009: Code update===
 +
* Thursday: Met with Roger, worked with plug-ins. Need to talk to Brian about XML DTDs.
-
[[Team:UC_Berkeley_Tools/Project|The Project]]
+
* Sunday: Plug-in extension point for parts manager created. Enum for PM plug-in type created.
-
[[Team:UC_Berkeley_Tools/Notebook|Notebook]]
+
* Monday: Parts Manager can now open empty PM (vs prepopulated). ClothoHelpConnection can now support html. Search fixed. However search still does not work with html help documents. Has something to do with how JTextPane.getDocument() doesn't carry over line breaks(br tag) from html.
 +
===February 7, 2009: ToDo: Reorganizing Parts Manager===
 +
To create a plug-in customized displayable element for the Parts Manager, I need to do the following in the short term:
 +
 +
* Isolate RenderData and TreeModel/RowModel private classes in the frame class to public classes RENAMED DefaultRenderData and DefaultTreeModel/DefaultRowModel classes, with interfaces RenderData and TreeModel/RowModel so that plug-ins can use them.
 +
* Make gui selectable item for choosing analyzers. This'd better be quick.
 +
* Meet with Brian and design schema for Parts Manager.
 +
 +
===February 9, 2009: ToDo: Requests from Clotho meeting===
 +
From Matt:
 +
 +
* Empty PM doesn't add parts right CHECK
 +
* ClothoHelp: Highlighting (low priority).
 +
 +
From Doug:
 +
 +
* Find function should search for circular in sequenceview
 +
* I should not be working on the plug-ins myself. Work with Roger. CHECK
 +
* Make a "hello world" plug in
 +
* ClothoHelp: Next/Previous should NOT browse through articles.
 +
 +
From Josh:
 +
 +
* Vector/Part sorted incorrectly in PM
 +
* Triggering PM should open one dialog box asking for Empty or CHOOSE COLLECTION DROPDOWN (not fully prepopulated.)
 +
 +
Misc Notes:
 +
 +
* We are "voting" on separate Parts Managers. Matt thinks it should be one PM. Possibly tabs? Aesthetics.
 +
* Delete TestPlugin from src code. Ask Doug to take it out of repository. (whoops)
 +
 +
===February 18, 2009: Meeting with Roger===
 +
Met with Roger today. We decided on the following ToDo list with a 4 week window (til March 20th).
 +
 +
Both:
 +
 +
* XML format
 +
* Parsing/defining schema
 +
* Define configuration
 +
 +
Me:
 +
 +
* Collections
 +
* Fixing PM Frame
 +
* Start grabbing fields by ROW
 +
 +
Roger:
 +
 +
* Parser frame start
 +
* GUI XML document chooser - collab
 +
* Connection <--> XML document communication
 +
* Conditionals
Line 127: Line 156:
<body><div align="right">
<body><div align="right">
<script language="JavaScript" src="http://www.tracemyip.org/tools/show-user-ip-info-box/ip_info_box_url.php?stlVar2=1208&rgtype=4684NR-IPIB&pidnVar2=324356580"></script><a href="http://www.tracemyip.org/" target="_blank"><img src="http://www.tracemyip.org/tools/images/trace_updater.gif" alt="Web Page Visitor Counter" border="0"></a></div>
<script language="JavaScript" src="http://www.tracemyip.org/tools/show-user-ip-info-box/ip_info_box_url.php?stlVar2=1208&rgtype=4684NR-IPIB&pidnVar2=324356580"></script><a href="http://www.tracemyip.org/" target="_blank"><img src="http://www.tracemyip.org/tools/images/trace_updater.gif" alt="Web Page Visitor Counter" border="0"></a></div>
-
</HTML>
 
-
 
-
<HTML>
 
-
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
 
-
</script>
 
-
<script type="text/javascript">
 
-
_uacct = "UA-4762802-1";
 
-
urchinTracker();
 
-
</script>
 
</HTML>
</HTML>

Latest revision as of 00:59, 19 February 2009

Nade hard at work. Sort of.


This is the notebook of Nade Sritanyaratana. I got involved in iGEM through word of my instructor. I am a 4th year undergraduate at UC Berkeley in Bioengineering with a concentration in imaging, and I hope to attend a PhD graduate program in the upcoming year. My prior research experience consists of working with bioengineering professor Steven Conolly in the summer and fall of 2007. Beyond imaging, my academic interests include biomechanics; signals and systems; circuit analysis; systems biology; and linear optimization.

Now that iGEM is over, my new role as a part of Dr. Douglas Densmore's lab is to solidify the tool, iron out any bugs, and make the Clotho Parts Manager user-customizable. My team roles during iGEM can be found here.

EDIT: As of after iGEM and the start of Spring 2009, the purpose of this notebook has now changed.

Contents

Personal Info

Name: Nade Sritanyaratana

Position: Team member, UC_Berkeley_Tools

Supervisor: Doug Densmore

Lab coworkers: Matthew Johnson, Anne Van Devender

Contact: Nadesri@berkeley.edu

Log

iGEM Stuff

Click here to access my old bio, archived iGEM logs, and my old wiki how-to.

January 8, 2009: This notebook's new purpose

For some time now, I have misplaced my iGEM (paper) notebook. I realize getting another notebook may only end up with me losing it once again. So I hereby declare that all my thoughts will go here, on my WIKI notebook.

The first thing I need to do is figure out this xml deal to give the parts manager more flexibility.

The second thing I must do it reconstruct what Anderson and Josh wanted me to do with the Parts Manager. I forgot their entire scheme with ctrl+click, shift+click, etc. I'll hold a meeting with them to do this.

That's all that comes to mind right now. Hopefully I finish the xml deal by the 15th. I'll keep posted.

January 14, 2009: Meeting with Doug. Archival. XML developments.

Short talk. Met with Doug today, back from Columbia. Has vision about plan for Spring semester with circular flow. Will talk about it on Friday with rest of team. Cleaned up my notebook; old entries are now on different page, changed up bio to better fit new semester. Now know how to write XML, validate XML documents, make a DTD, write XML documents via Java. Have to learn how to read XML via Java, which includes learning about different XML parsers. Do I sound like Rorschach? Hurmm.

I've decided. I'm going to use the SAX2 API, and the Xerces parser.

January 26, 2009: Parts Manager Plan - Prep for meeting 1 of new semester

The parts manager is an interface connection that is in charge of parts connected to a MySQL-PoBoL database. It gathers these parts and arranges them into a table by order of hierarchy. By default, this hierarchy is defined as: 1. Biobrick, 2. DNA, 3. Sample.


The flow for the Parts manager is as follows:

1. grab parts from database, including collections data

2. Dialog box pops up, asking if parts manager should be populated or empty (sidenote, there will be a "Remember this option" checkbox, so this box need not open every time)

3. Parts manager opens

3A. At this time, the user can optionally repopulate the parts manager table via a plug in. The plug in will tell the parts manager HOW to populate the table, i.e. how the hierarchy and columns should be organized. The user can define this order via an XML document.

3B. User can open up collections window to open up their own collection.

4. User will create a part. There is fortunately already some support I've built for this, but I need to debug it some.

4A. At this time, the user can create compound parts and define rules for compound part creation via a plug in.

5. Save back to DB

6. Close PM


The following work must be done to complete this workflow:

1. Dialog box for populated or empty PM, uses preferences for that checkbox

2. Parts repopulation Plug in. This requires a few substeps:

2a. Develop XML schema/DTD that defines the rules needed for a PM repop

2b. Write XML document for defaulted pop

2c. Cater the parser to correctly read Parts Manager XML documents. Will use SAX2 for API, and Xerces for parser.

2d. Create plug in that holds all this stuff. Will definitely need some help here.

3. Collection window. I already had a quickly hacked version of this for iGEM but I never got to complete it all the way. I'll just build on that.

4. Debugging of part creation

5. Saving back to Database

6. Compound parts plug-in. I have no idea how to start here, so I'm hoping to meet with Josh and Chris when I get to this.


February 2, 2009: Code update

  • Thursday: Met with Roger, worked with plug-ins. Need to talk to Brian about XML DTDs.
  • Sunday: Plug-in extension point for parts manager created. Enum for PM plug-in type created.
  • Monday: Parts Manager can now open empty PM (vs prepopulated). ClothoHelpConnection can now support html. Search fixed. However search still does not work with html help documents. Has something to do with how JTextPane.getDocument() doesn't carry over line breaks(br tag) from html.

February 7, 2009: ToDo: Reorganizing Parts Manager

To create a plug-in customized displayable element for the Parts Manager, I need to do the following in the short term:

  • Isolate RenderData and TreeModel/RowModel private classes in the frame class to public classes RENAMED DefaultRenderData and DefaultTreeModel/DefaultRowModel classes, with interfaces RenderData and TreeModel/RowModel so that plug-ins can use them.
  • Make gui selectable item for choosing analyzers. This'd better be quick.
  • Meet with Brian and design schema for Parts Manager.

February 9, 2009: ToDo: Requests from Clotho meeting

From Matt:

  • Empty PM doesn't add parts right CHECK
  • ClothoHelp: Highlighting (low priority).

From Doug:

  • Find function should search for circular in sequenceview
  • I should not be working on the plug-ins myself. Work with Roger. CHECK
  • Make a "hello world" plug in
  • ClothoHelp: Next/Previous should NOT browse through articles.

From Josh:

  • Vector/Part sorted incorrectly in PM
  • Triggering PM should open one dialog box asking for Empty or CHOOSE COLLECTION DROPDOWN (not fully prepopulated.)

Misc Notes:

  • We are "voting" on separate Parts Managers. Matt thinks it should be one PM. Possibly tabs? Aesthetics.
  • Delete TestPlugin from src code. Ask Doug to take it out of repository. (whoops)

February 18, 2009: Meeting with Roger

Met with Roger today. We decided on the following ToDo list with a 4 week window (til March 20th).

Both:

  • XML format
  • Parsing/defining schema
  • Define configuration

Me:

  • Collections
  • Fixing PM Frame
  • Start grabbing fields by ROW

Roger:

  • Parser frame start
  • GUI XML document chooser - collab
  • Connection <--> XML document communication
  • Conditionals


Web Page Visitor Counter