BioCoder : a high-level programming language for expressing biology protocols

231 views
Skip to first unread message

Vaishnavi. A

unread,
Dec 8, 2009, 7:26:51 AM12/8/09
to DIYbio, vaish...@gmail.com
Hi all,
I am one of the developers of the BioCoder language. BioCoder is
essentially a C library with various functionalities included,
pertaining primarily to the field of Molecular Biology. We envision
the replacement of natural language description of protocols in
published papers with code written in BioCoder, thus making the
protocol standardized and amenable to automation and re-usability.We
are in the process of working out the release of BioCoder.

It is a widely accepted fact that most descriptions of protocols in
published papers are ambiguous and incomplete and we are unsure why
that is the case. We have come up with a survey to try and understand
the problem. It would be great if you could take this short 10-
question survey which tries to zero in on the problem. Results will be
made available on DIYbio when enough data points have been collected.

Please click on the link below to take the survey:
http://www.surveymonkey.com/s/SYJM23Q

For more information about the language:
http://research.microsoft.com/en-us/um/people/thies/thies-iwbda09.pdf

To know what BioCoder code looks like, you can check out the following
examples from OpenWetWare:
http://www.google.co.in/search?q=BioCoder+site%3Aopenwetware.org&ie=utf-8&oe=utf-8&aq=t&client=firefox-a&rlz=1R1WZPB_en-GB___IN356

Owen

unread,
Dec 10, 2009, 9:52:11 AM12/10/09
to DIYbio
The universal language for communicating scientific protocols is
English, and it is unambiguous as it is. Encoding your procedure into
C and then decoding it doesn't make much sense to me. C is a tool to
convert higher level ideas into machine instructions. Humans can
understand these high level concepts so there really is no need to do
this.
> examples from OpenWetWare:http://www.google.co.in/search?q=BioCoder+site%3Aopenwetware.org&ie=u...

Bryan Bishop

unread,
Dec 10, 2009, 10:10:30 AM12/10/09
to diy...@googlegroups.com, kan...@gmail.com
On Thu, Dec 10, 2009 at 8:52 AM, Owen wrote:
> The universal language for communicating scientific protocols is
> English, and it is unambiguous as it is.  Encoding your procedure into
> C and then decoding it doesn't make much sense to me.  C is a tool to
> convert higher level ideas into machine instructions.  Humans can
> understand these high level concepts so there really is no need to do
> this.

I disagree. The main problem I see with BioStream/BioCoder is that the
protocols do not seem to be machine independent, and are highly
function-oriented. It would be interesting to see the protocols
applied to a variety of different machines and different interfaces.
This is what has prompted me to not adopt BioStream immediately:
computational instructions that can't be executed on machines might as
well be useless.

- Bryan
http://heybryan.org/
1 512 203 0507

Eugen Leitl

unread,
Dec 10, 2009, 10:12:02 AM12/10/09
to diy...@googlegroups.com
On Thu, Dec 10, 2009 at 06:52:11AM -0800, Owen wrote:
> The universal language for communicating scientific protocols is
> English, and it is unambiguous as it is. Encoding your procedure into

Unambiguous, to a skilled person.

> C and then decoding it doesn't make much sense to me. C is a tool to
> convert higher level ideas into machine instructions. Humans can
> understand these high level concepts so there really is no need to do
> this.

Did you miss the "amenable to automation and re-usability" part?
Machines are notoriously bad at parsing high level concepts, notoriously
good at repeating simple protocols.

As an analogy, consider a random JACS paper vs. a recipe for
a microfluidics reactor (from a library of parts) cum analytics
and inputs as well as outputs and control logic optimized for
a particular synthesis described in above paper.

--
Eugen* Leitl <a href="http://leitl.org">leitl</a> http://leitl.org
______________________________________________________________
ICBM: 48.07100, 11.36820 http://www.ativel.com http://postbiota.org
8B29F6BE: 099D 78BA 2FD3 B014 B08A 7779 75B0 2443 8B29 F6BE

Vaishnavi. A

unread,
Dec 11, 2009, 12:13:18 AM12/11/09
to DIYbio


On Dec 10, 8:10 pm, Bryan Bishop <kanz...@gmail.com> wrote:
> I disagree. The main problem I see with BioStream/BioCoder is that the
> protocols do not seem to be machine independent, and are highly
> function-oriented. It would be interesting to see the protocols
> applied to a variety of different machines and different interfaces.
> This is what has prompted me to not adopt BioStream immediately:
> computational instructions that can't be executed on machines might as
> well be useless.

When we first started developing BioCoder, instructions were fluid-
centric and volume-independent. But then, we didn't have a validation
system in place for this version. To decouple language research from
microfluidics research, we resorted to validation by execution of a
protocol by a biologist and for a biologist to think in terms of
fluids/reagents as opposed to containers and volume-independence, as
opposed to fixed-volume reactions is quite an uphill task. And that is
when we decided to make the language more user-friendly. If you were
to map a container to an arbitrary location (say a microfluidic chip
port) and bring in volume independence again, the language would still
be machine independent.

Vaishnavi. A

unread,
Dec 11, 2009, 12:19:15 AM12/11/09
to DIYbio


On Dec 10, 8:12 pm, Eugen Leitl <eu...@leitl.org> wrote:
> On Thu, Dec 10, 2009 at 06:52:11AM -0800, Owen wrote:
> > The universal language for communicating scientific protocols is
> > English, and it is unambiguous as it is.  Encoding your procedure into
>
> Unambiguous, to a skilled person.
>

I disagree. Imagine you had to replicate a protocol that has been
published in a paper. It is really true that in the first pass one can
get all the details necessary to replicate the protocol successfully?

And this is what we are trying to find out. Why are complete and
precise steps required for the execution of a protocol not published
with the results?
Please take this survey and help us find out!

http://www.surveymonkey.com/s/SYJM23Q

Eugen Leitl

unread,
Dec 11, 2009, 5:13:14 AM12/11/09
to diy...@googlegroups.com
On Thu, Dec 10, 2009 at 09:19:15PM -0800, Vaishnavi. A wrote:

> I disagree. Imagine you had to replicate a protocol that has been
> published in a paper. It is really true that in the first pass one can
> get all the details necessary to replicate the protocol successfully?

In chemistry, yes. (Unless the investigator deliberately held back
critical details. This is rare, but does happen).

> And this is what we are trying to find out. Why are complete and
> precise steps required for the execution of a protocol not published
> with the results?

How can you publish something which cannot be easily replicated
elsewhere? This is indistinguishable from fraud, and could be
career-ending.

> Please take this survey and help us find out!
>
> http://www.surveymonkey.com/s/SYJM23Q

Vaishnavi Ananth

unread,
Dec 11, 2009, 5:36:40 AM12/11/09
to diy...@googlegroups.com
How can you publish something which cannot be easily replicated
elsewhere? This is indistinguishable from fraud, and could be
career-ending.


Anybody who has worked in a wet lab would know what I'm talking about. I'm not saying scientists do not tell people what they did to get their results, they just don't tell you how exactly they did it.  

Eugen Leitl

unread,
Dec 11, 2009, 5:50:54 AM12/11/09
to diy...@googlegroups.com
On Fri, Dec 11, 2009 at 04:06:40PM +0530, Vaishnavi Ananth wrote:

> Anybody who has worked in a wet lab would know what I'm talking about. I'm

I *have* worked in a few wet labs.

> not saying scientists do not tell people what they did to get their results,
> they just don't tell you how exactly they did it.

If your published results have a tendency to not be reproducible
elsewhere, this will eventually come back to bite you in the ass.

Gabriel Kent

unread,
Dec 11, 2009, 2:25:55 AM12/11/09
to DIYbio
I applaud this effort Vaishnavi.

Those who get it now, get it... those who do not, will not, until
there is a simple GUI.

I imagine there is some layer akin to a scene graph? I think that is
what will define its ultimate portability.



On Dec 8, 4:26 am, "Vaishnavi. A" <vaishana...@gmail.com> wrote:
> examples from OpenWetWare:http://www.google.co.in/search?q=BioCoder+site%3Aopenwetware.org&ie=u...

JonathanCline

unread,
Dec 11, 2009, 5:23:56 PM12/11/09
to DIYbio, jcl...@ieee.org
On Dec 10, 9:12 am, Eugen Leitl <eu...@leitl.org> wrote:
> On Thu, Dec 10, 2009 at 06:52:11AM -0800, Owen wrote:
> > The universal language for communicating scientific protocols is
> > English, and it is unambiguous as it is.  Encoding your procedure into
>
> Unambiguous, to a skilled person.

I agree with all the viewpoints here, just want to clarify a bit by
example:

"Incubate 12 hours at room temperature or at 4C overnight."

How long is "overnight" ? Is it 12 hours, or 8, or 6? These are the
kind of ambiguities which are problematic from a machine view.

Also, order-of-operations is confusing from a machine standpoint
(perhaps requires human translation into linear sequence) as in this
example, which mixes present and past tense -- and this is a simple
example:

"“Resuspend pelleted bacterial cells in 250 µl Buffer P1 and transfer
to a micro-centrifuge tube. Ensure that RNase A has been added to
Buffer P1. No cell clumps should be visible after resuspension of the
pellet. If LyseBlue reagent has been added to Buffer P1, vigorously
shake the buffer bottle to ensure LyseBlue particles are completely
dissolved. The bacteria should be resuspended completely by vortexing
or pipetting up and down until no cell clumps remain. "

This is a single protocol step. If the above single step from the
protocol is made into a graph tree, there are ascending and descending
steps required in the parse tree, which isn't what computers are good
at parsing simply (C, for example, is a 1-pass compiler with 1 simple
preprocessor step).

> > C and then decoding it doesn't make much sense to me. C is a tool to
> > convert higher level ideas into machine instructions. Humans can
> > understand these high level concepts so there really is no need to do
> > this.
>
> Did you miss the "amenable to automation and re-usability" part?
> Machines are notoriously bad at parsing high level concepts, notoriously
> good at repeating simple protocols.

I also agree that English (at least, pseudo-english) is the ideal
mechanism for running automation directly; biologists are not
programmers and should not be expected to learn complex programming
languages (basic principle of "ease of use" is: don't force the
customer to learn new skills to use the system). C is complex for a
complete non-programmer. So I agree that BioStream/BioCoder seems
tangential to the effort (although great work at automated
verification of protocols). Check out the BioStream powerpoint
presentation for real examples of how "compiling" a protocol can leave
ambiguities regarding which step should be completed "next". With all
aspects of the problem in mind, to me it seems that a pseudo-English-
language for running the protocols is the best bet: like a version of
Basic, except for protocols. I prototyped & diagrammed this briefly
here: "Don’t Train the Biology Robot: Have the Machine Read the
Protocol and Automate Itself"
http://88proof.com/synthetic_biology/blog/archives/290
(If someone wants to fund me about $5000 then I'll publish in
PLoS ;-)

The idea of creating a "high level language for protocols" (which C is
not; C is very low level, actually) has been around for a while, even
on the bionet forums going back to early 90's. It hasn't been
realized yet though. In contrast to C, consider the many computer
languages developed over the years which have been specifically
developed to allow ease of use for complex tasks (there are many).
Some variations of BASIC come to mind, although some versions of BASIC
can be quite complex and/or tricky to write instructions in. Logo
also comes to mind, which was created specifically for very ease of
use to teach to children (non-programmers) while providing robotic/
graphical control and was quite successful in its niche. The big
problem of English-language-parsing can be minimized because bio-
protocols use a minimum grammar, that's the key.

Now for the bad news: Suppose Microsoft Research wants to do this
project in order to create a new protocol language for Microsoft,
which they then coerce Current Protocols in Molecular Biology into
using, and everyone else is then forced to obtain a license and/or
expensive software in order to create protocols or even follow
existing protocols. An entire language of biology becomes proprietary
and inaccessible to anyone without the funds or industry clout to
leverage a license; large, and even small, industry projects become
difficult due to continual need to avoid getting stepped on by the
1,000-pound gorilla of Microsoft. And the proprietary and
monopolistic owner, Microsoft, then limits what can, and can not, be
done by the protocol "reader".. such as, sharing protocols or running
protocols on non-Microsoft-approved equipment. That's a bad world,
isn't it. Worse than, and similar to, C# and .NET today, and
Microsoft Windows since version 1.0.


## Jonathan Cline
## jcl...@ieee.org
## Mobile: +1-805-617-0223
########################

Vaishnavi Ananth

unread,
Dec 11, 2009, 11:50:57 PM12/11/09
to diy...@googlegroups.com


2009/12/11 Gabriel Kent <gabrie...@gmail.com>

I applaud this effort Vaishnavi.

Those who get it now, get it... those who do not, will not, until
there is a simple GUI.

I imagine there is some layer akin to a scene graph? I think that is
what will define its ultimate portability.

Thanks, Gabriel. We don't have a GUI at the moment, but that's what we think we'll do as the next step.

Vaishnavi Ananth

unread,
Dec 11, 2009, 11:57:34 PM12/11/09
to diy...@googlegroups.com
Now for the bad news: Suppose Microsoft Research wants to do this
project in order to create a new protocol language for Microsoft,
which they then coerce Current Protocols in Molecular Biology into
using, and everyone else is then forced to obtain a license and/or
expensive software in order to create protocols or even follow
existing protocols.  An entire language of biology becomes proprietary
and inaccessible to anyone without the funds or industry clout to
leverage a license; large, and even small, industry projects become
difficult due to continual need to avoid getting stepped on by the
1,000-pound gorilla of Microsoft.  And the proprietary and
monopolistic owner, Microsoft, then limits what can, and can not, be
done by the protocol "reader".. such as, sharing protocols or running
protocols on non-Microsoft-approved equipment.   That's a bad world,
isn't it.  Worse than, and similar to, C# and .NET today, and
Microsoft Windows since version 1.0.


I'd like to make it very clear at this point that BioCoder is not going to be a licensed product. It will be available for free download by the end of December / beginning of January. To put it simply, Microsoft is not going to be "selling" BioCoder. 

Doug Treadwell

unread,
Dec 13, 2009, 5:36:35 AM12/13/09
to diy...@googlegroups.com
Perhaps there is another way to provide clarity to descriptions of lab procedures.  All programming languages that I'm aware of have compilers that check for syntax errors.  XHTML, which is just a lowly markup language, has a free validator at http://validator.w3.org/ that checks an XHTML page for usage errors.  Most word processing programs can check for spelling and grammar errors.  One way to improve clarity while requiring least effort on the part of authors might be to provide a context specific tool for improving clarity.  It might be called an "ambiguity checker" rather than a spell checker.

A good example in the previous discussion was the use of "overnight" to describe a duration.  If the ambiguity checker saw this word, it might bring the author to that part of the page (like Word moves the screen to where the grammar error is) and ask them to replace it with a specific time.  Like the grammar check it might offer suggestions.  "Did you mean: 12 hours; 8 hours; 6 hours?"  Any time a lab instrument or reagent is mentioned in the procedures that was not listed in a "materials/equipment" section, it would be noticed and flagged.

Because of the specific contexts, there might be a specific type of grammar the checker could look for.  For example, if a sentence read "Resuspend pellet in 250mL solution", the program, which would be smarter than a typical grammar check, would go through a process of determining whether "pellet" and "solution" were clearly identifiable from the preceding text.  Also, it might notice that "resuspend in solution" doesn't mention WHERE to resuspend it.  So it might say there is a grammar error because insufficient equipment is specified.  There might be a procedural grammar database that has a set of equipment requirements for each type of procedure.

All of the above would be hidden from the user, just like Word hides the implementation of the spelling and grammar check from its user.  A report author would simply click "ambiguity check" and be shown where their procedure explanation could be improved.

Oh, and if anyone uses this idea and I've added anything to your concept of some product, please give me some credit.  I don't want to horde ideas because it delays progress, but having one or two good ideas implemented would be good for my career while the majority of credit would obviously still go to whoever actually implemented them.  I'd do the same for you.

- Doug


--

You received this message because you are subscribed to the Google Groups "DIYbio" group.
To post to this group, send email to diy...@googlegroups.com.
To unsubscribe from this group, send email to diybio+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/diybio?hl=en.

Jay Woods

unread,
Dec 13, 2009, 9:45:27 AM12/13/09
to diy...@googlegroups.com
On Sunday 13 December 2009 04:36:35 am Doug Treadwell wrote:
> Perhaps there is another way to provide clarity to descriptions of
> lab procedures. All programming languages that I'm aware of have
> compilers that check for syntax errors. XHTML, which is just a
> lowly markup language, has a free validator at
> http://validator.w3.org/ that checks an XHTML page for usage errors.
> Most word processing programs can check for spelling and grammar
> errors. One way to improve clarity while requiring least effort on
> the part of authors might be to provide a context specific tool for
> improving clarity. It might be called an "ambiguity checker" rather
> than a spell checker.
>
There is an implementation of a way to get close to this idea coming:
akonadi using the NEPOMUK framework via Soprano from RDF stored in
MySQL. What I haven't been able to figure out is how to fruitfully see
what the triples are that are being stored. The search interface is too
far from what is being proposed here. To me what you are proposing would
be an interface that presents the user with an action list to either
accept the triple (and into the future) as it stands or by presenting
the source of the triple allow the source to be editted into something
where the triples now added to the list are acceptable. It would be
handy if the triples (and source) developed for other protocols could be
used as defaults for the current triple. The KDEPIM includes a journal
feature (as part of Korganizer). The journal could be the place where
all this cross-checking happens. I am currently working with the
journal feature to see if it handles gracefully what I currently handle
with my personal software for notes and plans via tasks, projects, and
protocols.

http://en.wikipedia.org/wiki/NEPOMUK_%28framework%29
http://en.wikipedia.org/wiki/Soprano_%28KDE%29
http://en.wikipedia.org/wiki/Resource_Description_Framework
See Example 3 for the use of XML via RDF tagging to implement the
triples equivalent to the source in English.
http://en.wikipedia.org/wiki/Kdepim - This has a section on Korganizer.

BenjaminPetrin

unread,
Dec 14, 2009, 12:54:44 PM12/14/09
to DIYbio

On Dec 8, 7:26 am, "Vaishnavi. A" <vaishana...@gmail.com> wrote:
> Hi all,
> I am one of the developers of the BioCoder language. BioCoder is
> essentially a C library with various functionalities included,
> pertaining primarily to the field of Molecular Biology.

I don't know too much about this project but looking at the example
code I found I'm wondering why the developers chose to implement this
as a C library. Why an imperative language? What advantage does this
offer to simply using a markup language (like XML) and having the
language be the schema (a DTD)?

In either case, as a computer science undergrad with an interest in
biology I look forward to seeing more details on this project.

Vaishnavi Ananth

unread,
Dec 15, 2009, 12:29:40 AM12/15/09
to diy...@googlegroups.com
Keeping track of ambiguities in natural language is an extremely difficult task. But we do have some form of ambiguity check in place in BioCoder. If you declare a fluid/container that isn't being used during the protocol, or if you measure out more of the fluid than is actually available, you will be issued a warning. Of course, this only helps when you are running an automation system with BioCoder. What we are planning to do sometime in the near future is some kind of machine learning to help predict what operations are possible after a given action and what actions are illegal. For example, centrifuging a sample that has already been centrifuged to obtain a pellet (and the supernatant has not been discarded) is an illegal operation.

2009/12/13 Doug Treadwell <therealepi...@gmail.com>

Vaishnavi Ananth

unread,
Dec 15, 2009, 12:34:49 AM12/15/09
to diy...@googlegroups.com
Like it has been pointed out in a different thread, the reason we chose C was to retain all the functionalities of an actual programming language : control flow, parametrization etc.

http://groups.google.com/group/diybio/browse_thread/thread/83ea38b2aef98d8d/b2ea91af6bcd44ca?lnk=raot

2009/12/14 BenjaminPetrin <b.pe...@wpi.edu>

BTP Batch2

unread,
Sep 10, 2018, 3:01:07 PM9/10/18
to DIYbio
Hi Vaishnavi, 
We are students from IIT Roorkee and are currently exploring the domain of MicroFluidics. We came across BioCoder and downloaded it from the given link.
So we are facing issues in running the make files. We are working in Linux environment. Issues are:
* cl command not found. (okay, installed cl-launch and then there is no flag for -c as present in make file)
* No such file /FoBioCoder.obj (no of the object files are present.)
Then we tried using g++/gcc/cc with -c flag and changed *.obj to *.o
Then conio.h was not found (it was then replaced with curses.h header file)
using namespace std was also added.
But finally issue comes in some line where it says. 
```
BioCoder.cpp: In function ‘void time_constraint(Container&, Time*, time_constraint_type)’:
BioCoder.cpp:2818:35: error: invalid operands of types ‘<unresolved overloaded function type>’ and ‘int’ to binary ‘operator==’
   case CURRENT_FLUID: if (time == 0)
                                   ^
```
We think there is some issue with the maintenance of BioCoder. Can you please help us fix that?

Nathan McCorkle

unread,
Sep 11, 2018, 5:00:12 AM9/11/18
to diybio
Hi BTP Batch2,
I took a look at the BioCoder 1.0 code and got it to compile with make
and gcc on Ubuntu Linux:
https://github.com/nmz787/BioCoder

just make sure you have ncurses-dev installed, something like this:
sudo apt-get install libncurses5-dev libncursesw5-dev

then in the code clone, just run:
make

and the binaries should end up in the Sample_protocol sub-dirs.

Best,
-Nathan
> --
> -- You received this message because you are subscribed to the Google Groups
> DIYbio group. To post to this group, send email to diy...@googlegroups.com.
> To unsubscribe from this group, send email to
> diybio+un...@googlegroups.com. For more options, visit this group at
> https://groups.google.com/d/forum/diybio?hl=en
> Learn more at www.diybio.org
> ---
> You received this message because you are subscribed to the Google Groups
> "DIYbio" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to diybio+un...@googlegroups.com.
> To post to this group, send email to diy...@googlegroups.com.
> Visit this group at https://groups.google.com/group/diybio.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/diybio/a4271e05-38e7-4715-83ca-a4ffdd2a3ee2%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.



--
-Nathan

BTP Batch2

unread,
Sep 11, 2018, 10:56:11 AM9/11/18
to DIYbio
Hi Nathan,
Thanks a lot :) You really saved our time. Really thankful to you.

Thomas Meany

unread,
Sep 13, 2018, 1:13:37 PM9/13/18
to DIYbio
Hey BioCoder Team, 

Great to see more people working on software for biology. Just wondering if you have any additional documentation? "http://research.microsoft.com/en-us/um/india/projects/biocoder/" does not seem to point anywhere and I would be keen to check out examples and use cases. 

Also it might help to expand your outline/goals in your readme.md. Perhaps discuss other languages and their shortfalls, e.g., autoprotocol is python based, anthalang uses go.. Why did you choose C? Where there specific applications that you targeted? What would you like to achieve through open sourcing? What aspects do you feel are still missing in your language?

Please keep the DIYBio group updated! 

Best, 
Tom

Nathan McCorkle

unread,
Sep 13, 2018, 3:40:54 PM9/13/18
to diybio
Hi Thomas,
I'm not on the BioCoder team... and only took the ZIP file download of
BioCoder 1.0 and uploaded it to github, then made the changes to get
it to compile on Ubuntu.

You can find the link you referenced here on The Internet Archive:
https://web.archive.org/web/20161110125136/http://research.microsoft.com/en-us/um/india/projects/biocoder/

But I see there it says this same documentation is included in the code repo.

Also, I was the one who created the readme.md file... and only
copy-pasted the journal article title-page text there (along with some
minor formatting).

Please feel free to send me any updates and I can integrate them, or
if you'd like you can simply fork my repo and then I can pull your
changes once you've made any.

Best,
-Nathan

Brian Degger

unread,
Sep 14, 2018, 10:36:21 AM9/14/18
to diy...@googlegroups.com

--
-- You received this message because you are subscribed to the Google Groups DIYbio group. To post to this group, send email to diy...@googlegroups.com. To unsubscribe from this group, send email to diybio+un...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/diybio?hl=en
Learn more at www.diybio.org
---
You received this message because you are subscribed to the Google Groups "DIYbio" group.
To unsubscribe from this group and stop receiving emails from it, send an email to diybio+un...@googlegroups.com.
To post to this group, send email to diy...@googlegroups.com.
Visit this group at https://groups.google.com/group/diybio.

For more options, visit https://groups.google.com/d/optout.


--
-------------------------------------
Brian Degger
twitter: @drbrian
-------------------------------------

AdrianMolecule

unread,
Oct 14, 2019, 1:45:18 PM10/14/19
to DIYbio
I looked at BioCoder and based on my needs I found it insufficient. I started to develop a new standard and interface and I worked on it for several good months until I got a working beta.
I put it on hold as I was more involved with other research but I'm looking forward to complete it. If you are still interested, I would e happy to engage some form of collaboration.


Cheers,
Adrian

S James Parsons Jr

unread,
Oct 14, 2019, 1:56:01 PM10/14/19
to diy...@googlegroups.com
Adrian,

Do you have a link for your bio code language? 


--
-- You received this message because you are subscribed to the Google Groups DIYbio group. To post to this group, send email to diy...@googlegroups.com. To unsubscribe from this group, send email to diybio+un...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/diybio?hl=en
Learn more at www.diybio.org
---
You received this message because you are subscribed to the Google Groups "DIYbio" group.
To unsubscribe from this group and stop receiving emails from it, send an email to diybio+un...@googlegroups.com.

AdrianMolecule

unread,
Oct 15, 2019, 11:14:17 AM10/15/19
to DIYbio

Hi James,



Basically I wanted something that can be as granular that can be used for a simulator or an automated lab directly or could be used for a high level paper.

It's using the Ontology idea (describes the structure in an XML)  where the operations (steps) can be added to a global repository edited with an open source editor called 

so they can be extended yet standardized. By using a tree one can collapse lower level nodes into more high level protocol.
I am considering uploading it on my bio club. URL is specyal.com 
Here is a test screenshot.

Cheers,
Adrian



wetprotocol.png

-- You received this message because you are subscribed to the Google Groups DIYbio group. To post to this group, send email to diy...@googlegroups.com. To unsubscribe from this group, send email to diy...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/diybio?hl=en

Learn more at www.diybio.org
---
You received this message because you are subscribed to the Google Groups "DIYbio" group.
To unsubscribe from this group and stop receiving emails from it, send an email to diy...@googlegroups.com.

S James Parsons Jr

unread,
Oct 15, 2019, 2:32:07 PM10/15/19
to diy...@googlegroups.com
Hi Adrian,  this looks like a good start.   I’m creating a laboratory robot that executes instructions.  I’ve been playing around with a few idea’s on how to control my robot.  I don’t know If I want to use XML, JSON, or my own protocol. Right now I’m using my own protocol attached to the comment section of gCode to hold other commands that is processed by the gCode sender. 

My current protocol works as follows:

DEVICE - ACTION - VERIFY - RECORD 




On Oct 15, 2019, at 11:14 AM, AdrianMolecule <buzz...@gmail.com> wrote:

Hi James,



Basically I wanted something that can be as granular that can be used for a simulator or an automated lab directly or could be used for a high level paper.

It's using the Ontology idea (describes the structure in an XML)  where the operations (steps) can be added to a global repository edited with an open source editor called 

so they can be extended yet standardized. By using a tree one can collapse lower level nodes into more high level protocol.
I am considering uploading it on my bio club. URL is specyal.com 
Here is a test screenshot.

Cheers,
Adrian




--
-- You received this message because you are subscribed to the Google Groups DIYbio group. To post to this group, send email to diy...@googlegroups.com. To unsubscribe from this group, send email to diybio+un...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/diybio?hl=en

Learn more at www.diybio.org
---
You received this message because you are subscribed to the Google Groups "DIYbio" group.
To unsubscribe from this group and stop receiving emails from it, send an email to diybio+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/diybio/65fa1e09-ecce-4f81-ab4a-eddec59846f3%40googlegroups.com.
<wetprotocol.png>

Nathan McCorkle

unread,
Oct 15, 2019, 6:00:27 PM10/15/19
to diybio


On Tue, Oct 15, 2019, 8:14 AM AdrianMolecule <buzz...@gmail.com> wrote:

Hi James,



Basically I wanted something that can be as granular that can be used for a simulator or an automated lab directly or could be used for a high level paper.

Isn't that already supported in BioCoder?

It's using the Ontology idea (describes the structure in an XML) 

Eww, I much orefer writing C++ than XML.

where the operations (steps) can be added to a global repository

Isn't that just including an existing C file using BioCoder?

I am considering uploading it

I'll take a look if you post the full URL, hopefully you're using GIT for development version control.
Reply all
Reply to author
Forward
0 new messages