<?xml version='1.0'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:atom="http://www.w3.org/2005/Atom" >
<channel>
	<title><![CDATA[BOL: Related items]]></title>
	<link>https://bioinformaticsonline.com/related/27971?offset=760</link>
	<atom:link href="https://bioinformaticsonline.com/related/27971?offset=760" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	
<item>
  <guid isPermaLink='true'>https://bioinformaticsonline.com/opportunity/view/19811/jnu-neurosciencesystems-biologymathematical-modeling-jrf-vacancies</guid>
  <pubDate>Fri, 26 Dec 2014 11:22:20 -0600</pubDate>
  <link></link>
  <title><![CDATA[JNU Neuroscience/Systems Biology/Mathematical modeling JRF Vacancies]]></title>
  <description><![CDATA[
<p>School of Computational and Integrative Sciences<br />Jawaharlal Nehru University<br />New Delhi 110067</p>

<p>Recruitment for Project</p>

<p>Applications were invited from the citizens of India for filling up the following temporary position for the CSIR sponsored Fellowship in the School of Computational and Integrative Sciences, Jawaharlal Nehru University, New Delhi 110067. This position is temporary for a period of two and half years or tenable only for the duration of the project. The requisite qualifications &amp; experience are given below.</p>

<p>Project Title : "Understanding Complex dynamics and Information processing in Brain Networks"<br />Funding Agency : CSIR</p>

<p>Principal Investigator : Dr. R.K. Brojen Singh</p>

<p>Position : Junior Research Fellow(One post)</p>

<p>Salary : As per CSIR rules and guidelines for JRF.</p>

<p>Qualifications &amp; Experience : M.Sc. in Physics/Mathematics/Biology/B.Tech. In Eng. Physics/Comp. Sc. and desirable CSIR-UGC NET Qualified. Candidates should also have at least one years research experience after M. Sc./B.Tech. in works related to Neuroscience/Mathematical modeling.</p>

<p>Candidates possessing requisite qualifications may apply either on plain paper stating the project title along with CV and send to the following address or send as email attachment (pdf or word format) so as to reach on or before 8 January, 2014.</p>

<p>Dr. R.K. Brojen Singh<br />School of Computational and Integrative Sciences<br />Jawharlal Nehru University<br />New Delhi 110067<br />Email: brojen@jnu.ac.in, brojen@mail.jnu.ac.in</p>
]]></description>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/39307/awk-for-beginners</guid>
	<pubDate>Fri, 26 Apr 2019 16:19:41 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/39307/awk-for-beginners</link>
	<title><![CDATA[AWK for beginners !]]></title>
	<description><![CDATA[<p>AWK is a standard tool on every POSIX-compliant UNIX system. It&rsquo;s like flex/lex, from the command-line, perfect for text-processing tasks and other scripting needs. It has a C-like syntax, but without mandatory semicolons (although, you should use them anyway, because they are required when you&rsquo;re writing one-liners, something AWK excels at), manual memory management, or static typing. It excels at text processing. You can call to it from a shell script, or you can use it as a stand-alone scripting language.</p><p>Why use AWK instead of Perl? Readability. AWK is easier to read than Perl. For simple text-processing scripts, particularly ones that read files line by line and split on delimiters, AWK is probably the right tool for the job.</p><div><pre><span>#!/usr/bin/awk -f</span>

<span># Comments are like this</span>


<span># AWK programs consist of a collection of patterns and actions.</span>
<span>pattern1</span> <span>{</span> <span>action</span><span>;</span> <span>}</span> <span># just like lex</span>
<span>pattern2</span> <span>{</span> <span>action</span><span>;</span> <span>}</span>

<span># There is an implied loop and AWK automatically reads and parses each</span>
<span># record of each file supplied. Each record is split by the FS delimiter,</span>
<span># which defaults to white-space (multiple spaces,tabs count as one)</span>
<span># You can assign FS either on the command line (-F C) or in your BEGIN</span>
<span># pattern</span>

<span># One of the special patterns is BEGIN. The BEGIN pattern is true</span>
<span># BEFORE any of the files are read. The END pattern is true after</span>
<span># an End-of-file from the last file (or standard-in if no files specified)</span>
<span># There is also an output field separator (OFS) that you can assign, which</span>
<span># defaults to a single space</span>

<span>BEGIN</span> <span>{</span>

    <span># BEGIN will run at the beginning of the program. It's where you put all</span>
    <span># the preliminary set-up code, before you process any text files. If you</span>
    <span># have no text files, then think of BEGIN as the main entry point.</span>

    <span># Variables are global. Just set them or use them, no need to declare..</span>
    <span>count</span> <span>=</span> <span>0</span><span>;</span>

    <span># Operators just like in C and friends</span>
    <span>a</span> <span>=</span> <span>count</span> <span>+</span> <span>1</span><span>;</span>
    <span>b</span> <span>=</span> <span>count</span> <span>-</span> <span>1</span><span>;</span>
    <span>c</span> <span>=</span> <span>count</span> <span>*</span> <span>1</span><span>;</span>
    <span>d</span> <span>=</span> <span>count</span> <span>/</span> <span>1</span><span>;</span> <span># integer division</span>
    <span>e</span> <span>=</span> <span>count</span> <span>%</span> <span>1</span><span>;</span> <span># modulus</span>
    <span>f</span> <span>=</span> <span>count</span> <span>^</span> <span>1</span><span>;</span> <span># exponentiation</span>

    <span>a</span> <span>+=</span> <span>1</span><span>;</span>
    <span>b</span> <span>-=</span> <span>1</span><span>;</span>
    <span>c</span> <span>*=</span> <span>1</span><span>;</span>
    <span>d</span> <span>/=</span> <span>1</span><span>;</span>
    <span>e</span> <span>%=</span> <span>1</span><span>;</span>
    <span>f</span> <span>^=</span> <span>1</span><span>;</span>

    <span># Incrementing and decrementing by one</span>
    <span>a</span><span>++</span><span>;</span>
    <span>b</span><span>--</span><span>;</span>

    <span># As a prefix operator, it returns the incremented value</span>
    <span>++</span><span>a</span><span>;</span>
    <span>--</span><span>b</span><span>;</span>

    <span># Notice, also, no punctuation such as semicolons to terminate statements</span>

    <span># Control statements</span>
    <span>if</span> <span>(</span><span>count</span> <span>==</span> <span>0</span><span>)</span>
        <span>print</span> <span>"Starting with count of 0"</span><span>;</span>
    <span>else</span>
        <span>print</span> <span>"Huh?"</span><span>;</span>

    <span># Or you could use the ternary operator</span>
    <span>print</span> <span>(</span><span>count</span> <span>==</span> <span>0</span><span>)</span> <span>?</span> <span>"Starting with count of 0"</span> <span>:</span> <span>"Huh?"</span><span>;</span>

    <span># Blocks consisting of multiple lines use braces</span>
    <span>while</span> <span>(</span><span>a</span> <span>&lt;</span> <span>10</span><span>)</span> <span>{</span>
        <span>print</span> <span>"String concatenation is done"</span> <span>" with a series"</span> <span>" of"</span>
            <span>" space-separated strings"</span><span>;</span>
        <span>print</span> <span>a</span><span>;</span>

        <span>a</span><span>++</span><span>;</span>
    <span>}</span>

    <span>for</span> <span>(</span><span>i</span> <span>=</span> <span>0</span><span>;</span> <span>i</span> <span>&lt;</span> <span>10</span><span>;</span> <span>i</span><span>++</span><span>)</span>
        <span>print</span> <span>"Good ol' for loop"</span><span>;</span>

    <span># As for comparisons, they're the standards:</span>
    <span># a &lt; b   # Less than</span>
    <span># a &lt;= b  # Less than or equal</span>
    <span># a != b  # Not equal</span>
    <span># a == b  # Equal</span>
    <span># a &gt; b   # Greater than</span>
    <span># a &gt;= b  # Greater than or equal</span>

    <span># Logical operators as well</span>
    <span># a &amp;&amp; b  # AND</span>
    <span># a || b  # OR</span>

    <span># In addition, there's the super useful regular expression match</span>
    <span>if</span> <span>(</span><span>"foo"</span> <span>~</span> <span>"^fo+$"</span><span>)</span>
        <span>print</span> <span>"Fooey!"</span><span>;</span>
    <span>if</span> <span>(</span><span>"boo"</span> <span>!~</span> <span>"^fo+$"</span><span>)</span>
        <span>print</span> <span>"Boo!"</span><span>;</span>

    <span># Arrays</span>
    <span>arr</span><span>[</span><span>0</span><span>]</span> <span>=</span> <span>"foo"</span><span>;</span>
    <span>arr</span><span>[</span><span>1</span><span>]</span> <span>=</span> <span>"bar"</span><span>;</span>

    <span># You can also initialize an array with the built-in function split()</span>

    <span>n</span> <span>=</span> <span>split</span><span>(</span><span>"foo:bar:baz"</span><span>,</span> <span>arr</span><span>,</span> <span>":"</span><span>);</span>

    <span># You also have associative arrays (actually, they're all associative arrays)</span>
    <span>assoc</span><span>[</span><span>"foo"</span><span>]</span> <span>=</span> <span>"bar"</span><span>;</span>
    <span>assoc</span><span>[</span><span>"bar"</span><span>]</span> <span>=</span> <span>"baz"</span><span>;</span>

    <span># And multi-dimensional arrays, with some limitations I won't mention here</span>
    <span>multidim</span><span>[</span><span>0</span><span>,</span><span>0</span><span>]</span> <span>=</span> <span>"foo"</span><span>;</span>
    <span>multidim</span><span>[</span><span>0</span><span>,</span><span>1</span><span>]</span> <span>=</span> <span>"bar"</span><span>;</span>
    <span>multidim</span><span>[</span><span>1</span><span>,</span><span>0</span><span>]</span> <span>=</span> <span>"baz"</span><span>;</span>
    <span>multidim</span><span>[</span><span>1</span><span>,</span><span>1</span><span>]</span> <span>=</span> <span>"boo"</span><span>;</span>

    <span># You can test for array membership</span>
    <span>if</span> <span>(</span><span>"foo"</span> <span>in</span> <span>assoc</span><span>)</span>
        <span>print</span> <span>"Fooey!"</span><span>;</span>

    <span># You can also use the 'in' operator to traverse the keys of an array</span>
    <span>for</span> <span>(</span><span>key</span> <span>in</span> <span>assoc</span><span>)</span>
        <span>print</span> <span>assoc</span><span>[</span><span>key</span><span>];</span>

    <span># The command line is in a special array called ARGV</span>
    <span>for</span> <span>(</span><span>argnum</span> <span>in</span> <span>ARGV</span><span>)</span>
        <span>print</span> <span>ARGV</span><span>[</span><span>argnum</span><span>];</span>

    <span># You can remove elements of an array</span>
    <span># This is particularly useful to prevent AWK from assuming the arguments</span>
    <span># are files for it to process</span>
    <span>delete</span> <span>ARGV</span><span>[</span><span>1</span><span>];</span>

    <span># The number of command line arguments is in a variable called ARGC</span>
    <span>print</span> <span>ARGC</span><span>;</span>

    <span># AWK has several built-in functions. They fall into three categories. I'll</span>
    <span># demonstrate each of them in their own functions, defined later.</span>

    <span>return_value</span> <span>=</span> <span>arithmetic_functions</span><span>(</span><span>a</span><span>,</span> <span>b</span><span>,</span> <span>c</span><span>);</span>
    <span>string_functions</span><span>();</span>
    <span>io_functions</span><span>();</span>
<span>}</span>

<span># Here's how you define a function</span>
<span>function</span> <span>arithmetic_functions</span><span>(</span><span>a</span><span>,</span> <span>b</span><span>,</span> <span>c</span><span>,</span>     <span>d</span><span>)</span> <span>{</span>

    <span># Probably the most annoying part of AWK is that there are no local</span>
    <span># variables. Everything is global. For short scripts, this is fine, even</span>
    <span># useful, but for longer scripts, this can be a problem.</span>

    <span># There is a work-around (ahem, hack). Function arguments are local to the</span>
    <span># function, and AWK allows you to define more function arguments than it</span>
    <span># needs. So just stick local variable in the function declaration, like I</span>
    <span># did above. As a convention, stick in some extra whitespace to distinguish</span>
    <span># between actual function parameters and local variables. In this example,</span>
    <span># a, b, and c are actual parameters, while d is merely a local variable.</span>

    <span># Now, to demonstrate the arithmetic functions</span>

    <span># Most AWK implementations have some standard trig functions</span>
    <span>localvar</span> <span>=</span> <span>sin</span><span>(</span><span>a</span><span>);</span>
    <span>localvar</span> <span>=</span> <span>cos</span><span>(</span><span>a</span><span>);</span>
    <span>localvar</span> <span>=</span> <span>atan2</span><span>(</span><span>b</span><span>,</span> <span>a</span><span>);</span> <span># arc tangent of b / a</span>

    <span># And logarithmic stuff</span>
    <span>localvar</span> <span>=</span> <span>exp</span><span>(</span><span>a</span><span>);</span>
    <span>localvar</span> <span>=</span> <span>log</span><span>(</span><span>a</span><span>);</span>

    <span># Square root</span>
    <span>localvar</span> <span>=</span> <span>sqrt</span><span>(</span><span>a</span><span>);</span>

    <span># Truncate floating point to integer</span>
    <span>localvar</span> <span>=</span> <span>int</span><span>(</span><span>5.34</span><span>);</span> <span># localvar =&gt; 5</span>

    <span># Random numbers</span>
    <span>srand</span><span>();</span> <span># Supply a seed as an argument. By default, it uses the time of day</span>
    <span>localvar</span> <span>=</span> <span>rand</span><span>();</span> <span># Random number between 0 and 1.</span>

    <span># Here's how to return a value</span>
    <span>return</span> <span>localvar</span><span>;</span>
<span>}</span>

<span>function</span> <span>string_functions</span><span>(</span>    <span>localvar</span><span>,</span> <span>arr</span><span>)</span> <span>{</span>

    <span># AWK, being a string-processing language, has several string-related</span>
    <span># functions, many of which rely heavily on regular expressions.</span>

    <span># Search and replace, first instance (sub) or all instances (gsub)</span>
    <span># Both return number of matches replaced</span>
    <span>localvar</span> <span>=</span> <span>"fooooobar"</span><span>;</span>
    <span>sub</span><span>(</span><span>"fo+"</span><span>,</span> <span>"Meet me at the "</span><span>,</span> <span>localvar</span><span>);</span> <span># localvar =&gt; "Meet me at the bar"</span>
    <span>gsub</span><span>(</span><span>"e+"</span><span>,</span> <span>"."</span><span>,</span> <span>localvar</span><span>);</span> <span># localvar =&gt; "m..t m. at th. bar"</span>

    <span># Search for a string that matches a regular expression</span>
    <span># index() does the same thing, but doesn't allow a regular expression</span>
    <span>match</span><span>(</span><span>localvar</span><span>,</span> <span>"t"</span><span>);</span> <span># =&gt; 4, since the 't' is the fourth character</span>

    <span># Split on a delimiter</span>
    <span>n</span> <span>=</span> <span>split</span><span>(</span><span>"foo-bar-baz"</span><span>,</span> <span>arr</span><span>,</span> <span>"-"</span><span>);</span> <span># a[1] = "foo"; a[2] = "bar"; a[3] = "baz"; n = 3</span>

    <span># Other useful stuff</span>
    <span>sprintf</span><span>(</span><span>"%s %d %d %d"</span><span>,</span> <span>"Testing"</span><span>,</span> <span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>);</span> <span># =&gt; "Testing 1 2 3"</span>
    <span>substr</span><span>(</span><span>"foobar"</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>);</span> <span># =&gt; "oob"</span>
    <span>substr</span><span>(</span><span>"foobar"</span><span>,</span> <span>4</span><span>);</span> <span># =&gt; "bar"</span>
    <span>length</span><span>(</span><span>"foo"</span><span>);</span> <span># =&gt; 3</span>
    <span>tolower</span><span>(</span><span>"FOO"</span><span>);</span> <span># =&gt; "foo"</span>
    <span>toupper</span><span>(</span><span>"foo"</span><span>);</span> <span># =&gt; "FOO"</span>
<span>}</span>

<span>function</span> <span>io_functions</span><span>(</span>    <span>localvar</span><span>)</span> <span>{</span>

    <span># You've already seen print</span>
    <span>print</span> <span>"Hello world"</span><span>;</span>

    <span># There's also printf</span>
    <span>printf</span><span>(</span><span>"%s %d %d %d\n"</span><span>,</span> <span>"Testing"</span><span>,</span> <span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>);</span>

    <span># AWK doesn't have file handles, per se. It will automatically open a file</span>
    <span># handle for you when you use something that needs one. The string you used</span>
    <span># for this can be treated as a file handle, for purposes of I/O. This makes</span>
    <span># it feel sort of like shell scripting, but to get the same output, the string</span>
    <span># must match exactly, so use a variable:</span>

    <span>outfile</span> <span>=</span> <span>"/tmp/foobar.txt"</span><span>;</span>

    <span>print</span> <span>"foobar"</span> <span>&gt;</span> <span>outfile</span><span>;</span>

    <span># Now the string outfile is a file handle. You can close it:</span>
    <span>close</span><span>(</span><span>outfile</span><span>);</span>

    <span># Here's how you run something in the shell</span>
    <span>system</span><span>(</span><span>"echo foobar"</span><span>);</span> <span># =&gt; prints foobar</span>

    <span># Reads a line from standard input and stores in localvar</span>
    <span>getline</span> <span>localvar</span><span>;</span>

    <span># Reads a line from a pipe (again, use a string so you close it properly)</span>
    <span>cmd</span> <span>=</span> <span>"echo foobar"</span><span>;</span>
    <span>cmd</span> <span>|</span> <span>getline</span> <span>localvar</span><span>;</span> <span># localvar =&gt; "foobar"</span>
    <span>close</span><span>(</span><span>cmd</span><span>);</span>

    <span># Reads a line from a file and stores in localvar</span>
    <span>infile</span> <span>=</span> <span>"/tmp/foobar.txt"</span><span>;</span>
    <span>getline</span> <span>localvar</span> <span>&lt;</span> <span>infile</span><span>;</span> 
    <span>close</span><span>(</span><span>infile</span><span>);</span>
<span>}</span>

<span># As I said at the beginning, AWK programs consist of a collection of patterns</span>
<span># and actions. You've already seen the BEGIN pattern. Other</span>
<span># patterns are used only if you're processing lines from files or standard</span>
<span># input.</span>
<span>#</span>
<span># When you pass arguments to AWK, they are treated as file names to process.</span>
<span># It will process them all, in order. Think of it like an implicit for loop,</span>
<span># iterating over the lines in these files. these patterns and actions are like</span>
<span># switch statements inside the loop. </span>

<span>/^fo+bar$/</span> <span>{</span>

    <span># This action will execute for every line that matches the regular</span>
    <span># expression, /^fo+bar$/, and will be skipped for any line that fails to</span>
    <span># match it. Let's just print the line:</span>

    <span>print</span><span>;</span>

    <span># Whoa, no argument! That's because print has a default argument: $0.</span>
    <span># $0 is the name of the current line being processed. It is created</span>
    <span># automatically for you.</span>

    <span># You can probably guess there are other $ variables. Every line is</span>
    <span># implicitly split before every action is called, much like the shell</span>
    <span># does. And, like the shell, each field can be access with a dollar sign</span>

    <span># This will print the second and fourth fields in the line</span>
    <span>print</span> <span>$</span><span>2</span><span>,</span> <span>$</span><span>4</span><span>;</span>

    <span># AWK automatically defines many other variables to help you inspect and</span>
    <span># process each line. The most important one is NF</span>

    <span># Prints the number of fields on this line</span>
    <span>print</span> <span>NF</span><span>;</span>

    <span># Print the last field on this line</span>
    <span>print</span> <span>$</span><span>NF</span><span>;</span>
<span>}</span>

<span># Every pattern is actually a true/false test. The regular expression in the</span>
<span># last pattern is also a true/false test, but part of it was hidden. If you</span>
<span># don't give it a string to test, it will assume $0, the line that it's</span>
<span># currently processing. Thus, the complete version of it is this:</span>

<span>$</span><span>0</span> <span>~</span> <span>/^fo+bar$/</span> <span>{</span>
    <span>print</span> <span>"Equivalent to the last pattern"</span><span>;</span>
<span>}</span>

<span>a</span> <span>&gt;</span> <span>0</span> <span>{</span>
    <span># This will execute once for each line, as long as a is positive</span>
<span>}</span>

<span># You get the idea. Processing text files, reading in a line at a time, and</span>
<span># doing something with it, particularly splitting on a delimiter, is so common</span>
<span># in UNIX that AWK is a scripting language that does all of it for you, without</span>
<span># you needing to ask. All you have to do is write the patterns and actions</span>
<span># based on what you expect of the input, and what you want to do with it.</span>

<span># Here's a quick example of a simple script, the sort of thing AWK is perfect</span>
<span># for. It will read a name from standard input and then will print the average</span>
<span># age of everyone with that first name. Let's say you supply as an argument the</span>
<span># name of a this data file:</span>
<span>#</span>
<span># Bob Jones 32</span>
<span># Jane Doe 22</span>
<span># Steve Stevens 83</span>
<span># Bob Smith 29</span>
<span># Bob Barker 72</span>
<span>#</span>
<span># Here's the script:</span>

<span>BEGIN</span> <span>{</span>

    <span># First, ask the user for the name</span>
    <span>print</span> <span>"What name would you like the average age for?"</span><span>;</span>

    <span># Get a line from standard input, not from files on the command line</span>
    <span>getline</span> <span>name</span> <span>&lt;</span> <span>"/dev/stdin"</span><span>;</span>
<span>}</span>

<span># Now, match every line whose first field is the given name</span>
<span>$</span><span>1</span> <span>==</span> <span>name</span> <span>{</span>

    <span># Inside here, we have access to a number of useful variables, already</span>
    <span># pre-loaded for us:</span>
    <span># $0 is the entire line</span>
    <span># $3 is the third field, the age, which is what we're interested in here</span>
    <span># NF is the number of fields, which should be 3</span>
    <span># NR is the number of records (lines) seen so far</span>
    <span># FILENAME is the name of the file being processed</span>
    <span># FS is the field separator being used, which is " " here</span>
    <span># ...etc. There are plenty more, documented in the man page.</span>

    <span># Keep track of a running total and how many lines matched</span>
    <span>sum</span> <span>+=</span> <span>$</span><span>3</span><span>;</span>
    <span>nlines</span><span>++</span><span>;</span>
<span>}</span>

<span># Another special pattern is called END. It will run after processing all the</span>
<span># text files. Unlike BEGIN, it will only run if you've given it input to</span>
<span># process. It will run after all the files have been read and processed</span>
<span># according to the rules and actions you've provided. The purpose of it is</span>
<span># usually to output some kind of final report, or do something with the</span>
<span># aggregate of the data you've accumulated over the course of the script.</span>

<span>END</span> <span>{</span>
    <span>if</span> <span>(</span><span>nlines</span><span>)</span>
        <span>print</span> <span>"The average age for "</span> <span>name</span> <span>" is "</span> <span>sum</span> <span>/</span> <span>nlines</span><span>;</span>
<span>}</span>
</pre><p><span>&nbsp;</span></p></div>]]></description>
	<dc:creator>BioJoker</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/43863/snakemake-tutorials</guid>
	<pubDate>Mon, 09 May 2022 05:20:41 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/43863/snakemake-tutorials</link>
	<title><![CDATA[Snakemake Tutorials !]]></title>
	<description><![CDATA[<p>A lesson introducing the Snakemake workflow system for bioinformatics analysis.</p>
<blockquote>
<h2 id="prerequisites">Prerequisites<a href="https://carpentries-incubator.github.io/snakemake-novice-bioinformatics/index.html#prerequisites"></a></h2>
<p>This is an intermediate lesson and assumes learners have already done some bioinformatics:</p>
<ul>
<li>Familiarity with the BASH command shell, including concepts like pipes, variables and loops.</li>
<li>Knowledge of bioinformatics fundamentals like the FASTQ file format and transcriptome sequencing, in order to understand the example workflow.</li>
</ul>
<p>No previous knowledge of Snakemake or workflow systems is required.</p>
<p>https://carpentries-incubator.github.io/snakemake-novice-bioinformatics/index.html</p>
</blockquote><p>Address of the bookmark: <a href="https://carpentries-incubator.github.io/snakemake-novice-bioinformatics/aio/index.html" rel="nofollow">https://carpentries-incubator.github.io/snakemake-novice-bioinformatics/aio/index.html</a></p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/news/view/20015/illumina-smartphone-chip</guid>
	<pubDate>Tue, 30 Dec 2014 23:19:54 -0600</pubDate>
	<link>https://bioinformaticsonline.com/news/view/20015/illumina-smartphone-chip</link>
	<title><![CDATA[Illumina Smartphone Chip !!!]]></title>
	<description><![CDATA[<p>Illumina, the company that claims it brought human genome sequencing down to $1000 prices, has now turned its attention to a consumer product - a chip that you can plug into your smartphone and have it read your genetic information.<br /><br />The biggest challenge ahead of Illumina is simplifying the process of genetic sequencing. Currently, Illumina&rsquo;s DNA sequencers are gigantic machines that use techinques like colorimetry to work, but while the core technology is computational, it takes some 30 steps to extract genetic data and run it through. This process will likely have to be hugely simplified on mobile devices, given the fact that some studies require extracting 10 mililiters of blood. Illumina researchers are also working on finding the optimal technology for this on-chip DNA sequencing - be it electrical, optical, or other.<br /><br />Illumina is one of the most prominent names in genetics, often said to be the Intel of genetic sequencing, as just like Intel it provides the algorithms, the processing brain that runs a DNA reading task.<br /><br />In other recent smartphone-related biotech news, drug company Pfizer launched its REMOTE project, a new type of clinical trial that does not require going to a hospital for checks - targeted at patients with overactive bladder problems, the FDA-approved REMOTE project allowed to gather data from patients from over 10 states remotely, via mobile devices.<br /><br /></p><p>This is indeed the Illumina answer to Apple's Health app, HealthBook, Google HealthFit.</p>]]></description>
	<dc:creator>Robert M Willioms</dc:creator>
</item>

<item>
  <guid isPermaLink='true'>https://bioinformaticsonline.com/opportunity/view/20449/walk-in-interview-for-the-post-of-jrf-and-project-assistant-cift</guid>
  <pubDate>Tue, 20 Jan 2015 23:03:20 -0600</pubDate>
  <link></link>
  <title><![CDATA[WALK-IN-INTERVIEW for the post of JRF and Project Assistant @ CIFT]]></title>
  <description><![CDATA[
<p>Eligible candidates are invited to attend a walk-in-Interview with all relevant documents for the following positions of Project Fellows (on contractual basis) to work in the Project “ Genetic Diversity of Clostridium botulinum in seafood and Development of Lateral Flow Immuno Assay (LFIA) for toxinotyping  funded by Department of Biotechnology.   The duration of the project is 3 years / co-terminus with the scheme.</p>

<p>Jr. Research Fellow – 2 posts</p>

<p>    Fellowship    :   Rs. 25000/- + 20% HRA pm  for Ist &amp; 2nd year and Rs.28000/- + HRA on 3rd year</p>

<p>    Qualification :    Ist class Masters Degree in Microbiology/Fishery Microbiology/Bio-technology.</p>

<p>    Desirable        :  </p>

<p>    1. CSIR/UGC NET/JRF qualified</p>

<p>    2. Excellent analytical skills and computer documentation</p>

<p>    3. Prior experience in handling microbial cultures and molecular techniques</p>

<p>Project Assistant – 1 post</p>

<p>Fellowship    :    Rs.8000/- p.m (consolidated)</p>

<p>Qualification:   Masters degree in Microbiology/Biotechnology with skill in Bioinformatics</p>

<p>Desirable:   Excellent analytical skills in Bioinformatics and computer documentation</p>

<p>Terms &amp; Conditions:</p>

<p>Registration will begin at 8.30 a.m and will close at 11.00 am<br />Age limit (as on 29.1.2015):  Below 35 years for men and 40 years for women.<br />Age relaxation of 3 year for OBC candidates and 5 years for SC/ST candidates is permissible.<br />Candidates are required to submit self-attested copies of all the Certificates in support of their claims    regarding age, educational qualifications, scheduled caste/scheduled tribe/OBC etc.  The original certificates shall be produced for verification before the interview.<br />Candidates should bring detailed bio-data (in the enclosed format)  affixing a recent passport size photograph.<br />The selected candidate will be recruited on contract basis under ICAR norms.  The post is purely temporary and is co-terminus with the project.<br />The candidates attending the interview should ensure that they fulfil all the eligibility conditions.  No correspondence will be entertained from the candidates for selection/test/appointment.<br />No TA/DA will be paid to attend the interview.<br />Canvassing in any form will render the candidate disqualified for the post.<br />The Director’s decision will be final and binding in all aspects regarding the selection to the post.</p>

<p>Venue: CIFT, Matsyapuri.P.O, Cochin                  Date of interview:  29.01.2015          Time:  10.00 am</p>

<p>http://www.cift.res.in/uploads/userfiles/file/file/srf%20appn.doc</p>
]]></description>
</item>

<item>
  <guid isPermaLink='true'>https://bioinformaticsonline.com/opportunity/view/20387/walk-in-interview-for-project-assistant-bharathidasan-university</guid>
  <pubDate>Mon, 12 Jan 2015 21:54:10 -0600</pubDate>
  <link></link>
  <title><![CDATA[WALK-IN-INTERVIEW FOR PROJECT ASSISTANT @ BHARATHIDASAN UNIVERSITY]]></title>
  <description><![CDATA[
<p>BHARATHIDASAN UNIVERSITY<br />DEPARTMENT OF BIOINFORMATICS, SCHOOL OF LIFE SCIENCES, TIRUCHIRAPPALLI – 620024</p>

<p>Project title: “Genome-scale metabolic modeling and simulation of rumen methanogens An in silico attempt to methane attenuation”</p>

<p>Funding Agency: University Grants Commission, New Delhi</p>

<p>Tenure of the project: Two years or till the end of the project period.</p>

<p>Position: Project Assistant (1 no.)</p>

<p>Essential qualification: First class M.Sc. in Bioinformatics/Microbiology/ Biotechnology and other related discipline.</p>

<p>Desirable qualification: Experience in an area relevant (Molecular Systems Engineering) to the project.</p>

<p>Fellowship: Rs. 5000 per month as per the UGC norms.</p>

<p>Upper age limit: 28 years</p>

<p>Date of Venue of interview: 22.01.2015, Department of Bioinformatics, School of Life Sciences, Bharathidasan University, Tiruchirappalli -620 024, Tamil Nadu</p>

<p>The above post is purely temporary and will be terminated with three month notice.</p>

<p>The Terms and the condition of the appointment shall be governed according to UGC, Govt. of India. The eligible candidates will bring their original certificates and documents at the time of interview. No TA/DA will be paid for attending the interview.</p>

<p>Dr. P. CHELLAPANDI<br />UGC-Research Awardee,<br />Department of Bioinformatics,<br />School of Life Sciences,<br />Bharathidasan University,<br />Tiruchirappalli -620 024, Tamil Nadu</p>

<p>Advertisement: www.bdu.ac.in/adv/PA_UGC_Bioinformatics.pdf</p>
]]></description>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/news/view/20440/linux-operating-system-aimed-at-scientists</guid>
	<pubDate>Mon, 19 Jan 2015 08:30:49 -0600</pubDate>
	<link>https://bioinformaticsonline.com/news/view/20440/linux-operating-system-aimed-at-scientists</link>
	<title><![CDATA[Linux operating system aimed at scientists]]></title>
	<description><![CDATA[<p>The Bio-Linux operating system is based on Ubuntu 14.04 LTS (Trusty Tahr), and the previous version was using Ubuntu 12.04 LTS. The developers only use LTS releases and that means that upgrades for this distro don't come along all that often.<br /> <br /> This Linux distribution is aimed at scientists and it comes with more than 250 bioinformatics packages, 50 graphical applications and several hundred command line tools. And this is just skimming the surface of what the OS can do. Users have access to even more apps from the official repositories.</p><h3>Bio-Linux is using an Ubuntu LTS version as its base</h3><p>The fact that it uses Ubuntu LTS versions for the base is a good thing because it means its users won't have to worry about the support. Ubuntu 14.04 LTS is supported until 2019, so people who are using Bio-Linux shouldn't have a problem.<br /> <br /> "An updated Bio-Linux 8 version is now on the website in ISO and OVA versions. As usual, there is no need to download this version if you are an existing user. All updates to existing packages will be applied to your system through the update manager and new packages are all available via apt-get or Synaptic," reads the <a href="http://nebclists.nerc.ac.uk/pipermail/bio-linux-announce/2015-January/000020.html" target="_blank">announcement</a>.<br /> <br /> The changelog also states that a problem that was preventing the desktop to not start on VirtualBox has been fixed, the QIIME and Bowtie-Bio tools have been upgraded, the pandaseq paired end assembler has been added, and the beginners tutorial specific to Bio-Linux 8 has been improved.<br /> <br /> Check out the official announcement for a complete list of changes and updates. You can <a href="http://linux.softpedia.com/get/System/Operating-Systems/Linux-Distributions/Bio-Linux-45495.shtml" target="_blank"><strong>download Bio-Linux 8.0.5</strong></a> right now from Softpedia and give it a spin. It has the Unity desktop and now it runs very well in virtual environments.</p><p>Reference @ http://news.softpedia.com/news/Bioinformatics-Distro-Bio-Linux-8-0-5-Now-Available-for-Download-469867.shtml</p>]]></description>
	<dc:creator>Pranjali Yadav</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/videolist/watch/20585/dna-transcription-advanced</guid>
	<pubDate>Thu, 29 Jan 2015 05:31:42 -0600</pubDate>
	<link>https://bioinformaticsonline.com/videolist/watch/20585/dna-transcription-advanced</link>
	<title><![CDATA[DNA Transcription (Advanced)]]></title>
	<description><![CDATA[<iframe width="" height="" src="https://www.youtube-nocookie.com/embed/SMtWvDbfHLo" frameborder="0" allowfullscreen></iframe><p>Transcription is the process by which the information in DNA is copied into messenger RNA (mRNA) for protein production. Originally created for DNA Interactive ( http://www.dnai.org ). TRANSCRIPT: The Central Dogma of Molecular Biology: "DNA makes RNA makes protein" Here the process begins. Transcription factors assemble at a specific promoter region along the DNA. The length of DNA following the promoter is a gene and it contains the recipe for a protein. A mediator protein complex arrives carrying the enzyme RNA polymerase. It manoeuvres the RNA polymerase into place... inserting it with the help of other factors between the strands of the DNA double helix. The assembled collection of all these factors is referred to as the transcription initiation complex... and now it is ready to be activated. The initiation complex requires contact with activator proteins, which bind to specific sequences of DNA known as enhancer regions. These regions may be thousands of base pairs distant from the start of the gene. Contact between the activator proteins and the initiation-complex releases the copying mechanism. The RNA polymerase unzips a small portion of the DNA helix exposing the bases on each strand. Only one of the strands is copied. It acts as a template for the synthesis of an RNA molecule which is assembled one sub-unit at a time by matching the DNA letter code on the template strand. The sub-units can be seen here entering the enzyme through its intake hole and they are joined together to form the long messenger RNA chain snaking out of the top.</p>]]></description>
	
</item>

<item>
  <guid isPermaLink='true'>https://bioinformaticsonline.com/opportunity/view/20958/ra-bioinformatics-at-ciba</guid>
  <pubDate>Mon, 02 Feb 2015 22:52:50 -0600</pubDate>
  <link></link>
  <title><![CDATA[RA Bioinformatics at CIBA]]></title>
  <description><![CDATA[
<p>The following posts are to be filled purely on temporary basis under CIBA Component of “Centre for Agricultural Bioinformatics (CABin)” project at this Institute.</p>

<p>Research Associate – one post</p>

<p>Date &amp; Time of Interview 18th Feb 2015 at 10.00 a.m.</p>

<p>Essential Qualification Ph.d / M.Sc./ M.Phil (Bioinformatics) With 1st division or 60% marks or equivalent overall grade point average with at least two years of research experience in the relevant subject.</p>

<p>Desirable qualification: Experience in Java/ C++/ PHP/ PERL/ Python etc. based application development using Linux, Apache and MySQL/Oracle.</p>

<p>Emoluments Rs.24000/- p.m. + 30% HRA for Ph.D holders / Rs.23000/- p.m. + 30% HRA for Master Degree holders A consolidated pay Rs.25000/- per month.</p>

<p>Age Limit Maximum 40 years for men and 45 years for women as on date of interview. Age limits are relaxable for SC / ST / OBC candidates as per rules. Maximum 40 years for men and 45 years for women as on date of interview. Age limits are relaxable for SC / ST / OBC candidates as per rules.</p>

<p>Eligible Candidates may appear for the Walk-in-interview with original Certificate of Ph.D. / Master’s / relevant degree, passport size photograph and bio-data enclosing attested copies of educational qualification &amp; experience certificates. TA / DA will not be paid for attending the interview.</p>

<p>Advertisement: www.ciba.res.in/attachments/jobs/CABin-3006.pdf</p>
]]></description>
</item>

<item>
  <guid isPermaLink='true'>https://bioinformaticsonline.com/opportunity/view/20957/jrf-in-bioinformatics-tezpur-university</guid>
  <pubDate>Mon, 02 Feb 2015 22:50:14 -0600</pubDate>
  <link></link>
  <title><![CDATA[JRF in Bioinformatics @ Tezpur University]]></title>
  <description><![CDATA[
<p>Applications are invited for one temporary position of Junior Research Fellow (JRF) in the DBT Twinning Project entitled ‘In-Silico design and evaluation of sequences for γD crystalline protein’ under the Principal Investigator Dr. Anupam Nath Jha, Assistant Professor, Department of Molecular Biology and Biotechnology, Tezpur University.</p>

<p>Educational Qualification: Candidate must possess a M.Sc. in Bioinformatics/ Biotechnology/ Computer Science/ Physics/ Chemistry or B.Tech. or M.Tech. in Bioinformatics/ Biotechnology/ Computer Science from a recognized University/ Institute with minimum 60% marks or equivalent CGPA for general category and for SC/ST/OBC relaxation will be given as per Govt. of India rules.</p>

<p>Fellowship: Rs 16,000/- (Rupees sixteen thousand) only + 10% HRA per month for NET/GATE/BET/BINC qualified candidates. Rs. 12,000/- (Rupees twelve thousand) only + 10% HRA per month for other candidates.</p>

<p>Duration: Initially for a period of six (06) months which may be extended depending upon status of the project or until further order, whichever is earlier.</p>

<p>Age: Candidate should not be more than 28 years of age on the date of interview. Upper age limit may be relaxed up to 5 years in the case of candidate belonging to SC/ ST /OBC /Women / Physically Challenged.</p>

<p>Interested candidates may send their application on plain paper by post along with his/her educational qualifications, recent passport/stamp size photograph and contact phone number to Dr. Anupam Nath Jha, Principal Investigator, Department of Molecular Biology and Biotechnology, Tezpur University, Napaam – 784028 or mail it to anjha@tezu.ernet.in within 20 days of publication of this advertisement.</p>

<p>Only shortlisted candidates will be informed by e-mail or phone for an interview. N.B. No TA/DA will be paid for attending the interview. For further details contact: Dr. Anupam Nath Jha, Assistant Professor, Principal Investigator Department of Molecular Biology &amp; Biotechnology Tezpur University, Napaam, Tezpur-784028 (Assam)</p>

<p>Advertisement: www.tezu.ernet.in/ProjectWalkin/Advt-ANJ-5323-A.pdf</p>
]]></description>
</item>

</channel>
</rss>