Dec 23, 2013

Pong (Classic) Python implementation

Executable File/Downloadable 64bit
http://www.4shared.com/file/pnNma64G/Pong_Setup.html
Source Code
#Author : Mazhar Hussain
#National Centre of Excellence in Molecular Biology
#University of the Punjab, Lahore
#Dated : 19- 11 - 2013

#Game : Pong

import simpleguitk as simplegui
import random

# initialize globals - pos and vel encode vertical info for paddles
WIDTH = 600
HEIGHT = 400    
BALL_RADIUS = 20
PAD_WIDTH = 8
PAD_HEIGHT = 80
ball_pos = [0 , 0]
ball_vel = [0 , 0]
LEFT = False
RIGHT = True
direction = LEFT
paddle1_vel = 0
paddle2_vel = 0
paddle1_pos  = HEIGHT/2
paddle2_pos = HEIGHT/2
left_score = 0
right_score = 0

#various kinds of helper functions are defined below
#paddle1position and paddle2position controls the position of paddles
#present on both sides. These functions not only allows the legitimate motion
#of the paddles but also lock them inside canvas
def paddle1position():
    global paddle1_pos
    if (paddle1_pos  > 0) and (paddle1_pos+PAD_HEIGHT < HEIGHT):
        paddle1_pos = (paddle1_pos + paddle1_vel)
        return paddle1_pos
    elif (paddle1_pos  <= 0):
        paddle1_pos = paddle1_pos + 3
        return paddle1_pos
    elif ((paddle1_pos + PAD_HEIGHT)  >= HEIGHT):
        paddle1_pos = paddle1_pos - 3
        return paddle1_pos
 
def paddle2position():
    global paddle2_pos
    if (paddle2_pos  > 0) and (paddle2_pos+ PAD_HEIGHT < HEIGHT):
        paddle2_pos = (paddle2_pos + paddle2_vel)
        return paddle2_pos
    elif (paddle2_pos  <= 0):
        paddle2_pos = paddle2_pos + 3
        return paddle2_pos
    elif ((paddle2_pos + PAD_HEIGHT)  >= HEIGHT):
        paddle2_pos = paddle2_pos - 3
        return paddle2_pos

#ball_direction is the function which controls initial parameters about
#ball position and speed. It also contains functions for scoring after
#every failed attempt to catch ball on paddel. It contains a child function
#spawn_ball which carries the initial parametters for ball direction
#and velocity
def ball_direction():
    global direction, left_score, right_score
    if (((ball_pos[0]) - BALL_RADIUS)<= 0):
        direction = RIGHT
        left_score += 1
        spawn_ball(direction)
    elif ((ball_pos[0]+BALL_RADIUS) >= WIDTH):
        direction = LEFT
        right_score += 1
        spawn_ball(direction)

def spawn_ball(direction):
    global ball_pos, ball_vel
    if (direction == RIGHT):
        ball_vel[0] = random.randrange(120 , 240)
        ball_vel[1] = random.randrange(60 , 180)
        ball_vel = [ball_vel[0] , ball_vel[1]]
        ball_pos = [WIDTH/2 , HEIGHT/2]
        return ball_pos, ball_vel
    elif (direction == LEFT):
        ball_vel[0] = random.randrange(-240 , -120)
        ball_vel[1] = random.randrange(60 , 180)
        ball_vel = [ball_vel[0] , ball_vel[1]]
        ball_pos = [WIDTH/2 , HEIGHT/2]
        return ball_pos, ball_vel  

# paddle1_detector() and paddle2_detector() are collision functions.
# they describes the event when ball touches the paddel. They tell
# how the ball rebounds and at what velocity. Ball increase by 10% speed
# after every stroke by paddel
def paddle1_detector():
    global ball_vel, left_score
    if ((ball_pos[0] + 30) >= WIDTH) and ((ball_pos[1]) > paddle1_pos) and ((ball_pos[1] < (paddle1_pos + PAD_HEIGHT))):
        ball_vel[0] = -((ball_vel[0])*1.1)
        ball_vel = [ball_vel[0], ball_vel[1]]
        return ball_vel
    else:
        ball_vel[0] = ball_vel[0]
        ball_direction()
 
def paddle2_detector():
    global ball_vel, right_score
    if ((ball_pos[0] - 30) <= 0) and ((ball_pos[1]) > paddle2_pos) and ((ball_pos[1] < (paddle2_pos + PAD_HEIGHT))):
        ball_vel[0] = -((ball_vel[0])*1.1)
        ball_vel = [ball_vel[0], ball_vel[1]]
        return ball_vel
    else:
        ball_vel[0] = ball_vel[0]
        ball_direction()

# new_game() is an event handler which resets the game, once the button is triggered
def new_game():
    global paddle1_pos, paddle2_pos, left_score, right_score  # these are numbers
    global score1, score2  # these are ints
    spawn_ball(direction)
    left_score = 0
    right_score = 0
    paddle1_pos = HEIGHT/2
    paddle2_pos = HEIGHT/2

# draw(c) is event handler for drawing function. It is about everything we see on
# screen... it is about printing the ball position... it directly calls
# the paddel detector function
def draw(c):
    global score1, score2, paddle1_pos, paddle2_pos, ball_pos, ball_vel
    c.draw_line([WIDTH / 2, 0],[WIDTH / 2, HEIGHT], 1, "White")
    c.draw_line([PAD_WIDTH, 0],[PAD_WIDTH, HEIGHT], 1, "White")
    c.draw_line([WIDTH - PAD_WIDTH, 0],[WIDTH - PAD_WIDTH, HEIGHT], 1, "White")
    c.draw_text(str(right_score), (100, 100), 60, 'Green')
    c.draw_text(str(left_score), (450, 100), 60, 'Yellow')
    if (((ball_pos[1])-BALL_RADIUS) <= 0):
        ball_vel[1] = -(ball_vel[1])
        ball_pos[0] += (ball_vel[0])/60
        ball_pos[1] += (ball_vel[1])/60
        ball_pos = [(ball_pos[0]) , (ball_pos[1])]
        c.draw_circle(ball_pos, BALL_RADIUS, 3, 'White', 'White')
    elif ((ball_pos[1])+(BALL_RADIUS) >= (HEIGHT)):
        ball_vel[1] = -(ball_vel[1])
        ball_pos[0] += (ball_vel[0])/60
        ball_pos[1] += (ball_vel[1])/60
        ball_pos = [(ball_pos[0]) , (ball_pos[1])]
        c.draw_circle(ball_pos, BALL_RADIUS, 3, 'White', 'White')
    else:
        ball_pos[0] += (ball_vel[0])/60
        ball_pos[1] += (ball_vel[1])/60
        ball_pos = [(ball_pos[0]) , (ball_pos[1])]
        c.draw_circle(ball_pos, BALL_RADIUS, 3, 'White', 'White')
    c.draw_line([(PAD_WIDTH), (paddle2position())],[PAD_WIDTH, (paddle2position()+PAD_HEIGHT)], 10, "White")
    c.draw_line([WIDTH - PAD_WIDTH, (paddle1position())],[WIDTH - PAD_WIDTH, (paddle1position()+PAD_HEIGHT)], 10, "White")
    paddle1_detector()
    paddle2_detector()  

 
# keydown and keyup handlers which are triggered once a key is pressed
def keydown(key):
    global paddle1_vel, paddle2_vel
    if key == simplegui.KEY_MAP["down"]:
        paddle1_vel= 3
    elif key == simplegui.KEY_MAP["up"]:
        paddle1_vel = -3
    elif key == simplegui.KEY_MAP["s"]:
        paddle2_vel = 3
    elif key == simplegui.KEY_MAP["w"]:
        paddle2_vel = -3
     
def keyup(key):
    global paddle1_vel, paddle2_vel
    if key == simplegui.KEY_MAP["down"]:
        paddle1_vel= 0
    elif key == simplegui.KEY_MAP["up"]:
        paddle1_vel = 0
    elif key == simplegui.KEY_MAP["s"]:
        paddle2_vel =  0
    elif key == simplegui.KEY_MAP["w"]:
        paddle2_vel = 0

frame = simplegui.create_frame("Pong", WIDTH, HEIGHT)
frame.set_draw_handler(draw)
frame.set_keydown_handler(keydown)
frame.set_keyup_handler(keyup)
frame.add_button("RESTART GAME", new_game, 120)
def about_me():
 
    top = "************************************************************************"
    top1= "--------------------------------ABOUT ME--------------------------------"
 
    x1 = "| This game is developed by me, Mazhar Hussain, on the |"
    x2 =  "| top of PYTHON. I have completed my MPhil in Molecular |"
    x3 =  "| Biology from National Centre of Excellence in Molecular |"
    x4 = "| Biology. My BS(Hons) is in Microbiology and Molecular |"
    x5 = "| Genetics from University of the Punjab, Lahore. This |"
    x6 =  "| game is 1972 version of PONG, which is infact very |"
    x7 = "| famous among teens of developing countries. |"
    x8 =  "| |"
    x9 =  "| I have implemented various concepts in its development, |"
    x10 =  "| which include functions, conditionals, graphic-user-interface |"
    x11 =  "| and random number generator. This game simply demonstrate |"
    x12 =  "| the visualization of graphics and control of objects using |"
    x13 = "| KEYBOARD. |"
    print str(top)+"\n"+str(top1)+"\n"+str(top)+"\n"+str(x1)+"\n"+ str(x2)+"\n"+str(x3)+"\n"+ str(x4)+"\n" +str(x5)+"\n"+ str(x6)+"\n"+str(x7)+"\n"+ str(x8)+"\n"+str(x9)+"\n"+ str(x10)+"\n" +str(x11)+"\n"+ str(x12)+"\n"+ str(x13)


def how_to_play():
 
    top = "************************************************************************"
    top1= "----------------------------How To Play---------------------------------"
 
    x1 = "| Rules are pretty simple. Game is controlled by two paddles |"
    x2 =  "| left and right. Left paddle up and down motion is |"
    x3 =  "| controlled by 'w' and 's', respectively while the |"
    x4 = "| paddle on right is controlled by up and down arrow keys. |"
    x5 = "| As long as ball stays on table, it gains speed by 10% increment.|"
    x6 =  "| When ball misses the paddle and go in gutter, opposite player |"
    x7 = "| will gain the points. |"
    x8 =  "| |"
 
    print str(top)+"\n"+str(top1)+"\n"+str(top)+"\n"+str(x1)+"\n"+ str(x2)+"\n"+str(x3)+"\n"+ str(x4)+"\n" +str(x5)+"\n"+ str(x6)+"\n"+str(x7)+"\n"+ str(x8)+"\n"

frame.add_button("Play Instructions", how_to_play, 120)  
frame.add_button("About Me", about_me, 120)

new_game()
spawn_ball(direction)

frame.start()

Guess the Number

Executable File/Downloadable 64bit

Source Code

#Author : Mazhar Hussain
#Centre of Excellence in Molecular Biology,
#University of the Punjab Lahore
#Dated : 01 - 11 - 2013
#Game : Guess the Number

import random 
"""Calls Module random which generates a random number in
given range
"""

import simpleguitk as simplegui
"""Calls Module simplegui which produces the input fields
and interactive graphic-user-interface
"""

# initialize global variables used in your code

computer_number = 0 # carries random number from random module
attempts_left = 0 # contains value of remaining number of attempts
default_attempts = 0 # it directly takes value from initial trigger
                    # and preserve value for next playing session
set_value_from = 0 # provides initial value to randrange function in random
set_value_to = 100 # provides final value to randrange function in random

# helper function to start and restart the game

"""can trigger new_game by taking values from the previous game
regarding number of attempts left but generates new value from
random module using random_generator function in game
"""
def new_game():
    global attempts_left
    random_generator(set_value_from , set_value_to)
    attempts_left = default_attempts
"""
random_generator() is function in the heart of game
it directly generates random number in given range
and then preserves the 
"""
    
def random_generator (set_value_from, set_value_to):
    global computer_number
    computer_number = random.randrange (set_value_from, set_value_to)
    return computer_number
"""
attempts_remaining() is helping function and it counts down
the attempts to zero and ultimately using conditionals
assissts in terminating game, if correct number was not guessed
"""
def attempts_remaining():
    global attempts_left
    attempts_left = attempts_left - 1
    return attempts_left
"""
Helper function, Which Prints Current State of Game in fanciful way.
It is called from range100() and range1000() event handlers
"""
def state_of_game(set_value_from, set_value_to, attempts_left):
    print "===================================\n",
    print "Guess the Number Between "+ str(set_value_from) + " to " + str(set_value_to) + "\n",
    print "and you have only "+str(attempts_left) +" attempts. :D"
    print "==================================="   

# define event handlers for control panel
"""
Handle of "Guess Number from 0-100" button. When button is pressed
it sets the variables so that "State of Guess the Number in 0 to 100"
becomes active. Declares global variables which are vital for not only
current game but also for subsequent game on same settings
"""

def range100():
    global set_value_from, set_value_to
    global attempts_left, default_attempts
    set_value_from = 0
    set_value_to = 100
    attempts_left = 7
    default_attempts = 7
    computer_number = random_generator(set_value_from , set_value_to)
    state_of_game(set_value_from, set_value_to, attempts_left)
   
    # button that changes range to range [0,100) and restart
"""
Handle of "Guess Number from 0-1000" button. Other details are same as
discussed for "Guess Number from 0-100) button.
"""

def range1000():
    global set_value_from, set_value_to
    global attempts_left, default_attempts
    set_value_from = 0
    set_value_to = 1000
    attempts_left = 10
    default_attempts = 10
    computer_number = random_generator(set_value_from , set_value_to)
    state_of_game(set_value_from, set_value_to, attempts_left)
    
"""
Core of game, which compares Computer's generated number and player's guess.
It suggests player to GUESS HIGHER or LOWER NUMBER. It counts on the number of attempts
left. It contains rules for declaring win or lose. It immeditely triggers the next
game as soon as current game is ended.
"""
    
    
def input_guess(player_number):
    if (attempts_remaining() == 0) and (computer_number == int(player_number)):
        print "-----------------------------------------------------------------------------"
        print "You Guessed the Number "+str(player_number)+" and Your all attempts are over,"
        print "----------------------But You Guessed the Correct Number---------------------"
        print "--------------------------Congratulations! You Won---------------------------"
        print "----------------Wishing You Awesome Performane in Next Game Too--------------"
        print "-----------------------------------------------------------------------------"
        print "----------------------------Triggered New Game------------------------------"
        new_game()
    elif (attempts_left == 0) and (computer_number != int(player_number)):
        print "------------------------------------------------------"
        print "You Guessed the Number "+str(player_number)+" and Your all attempts are over,"
        print "----------------The correct number was "+str(computer_number)+"-------------"
        print "------------Better Luck in the Next Game--------------"
        print "------------------------------------------------------"
        print "--------------------Triggered New Game---------------"
        new_game()
    else:
        if (computer_number == int(player_number)):
            print "------------------------------------------------------"
            print "You Guessed the Number "+str(player_number)+", which is Correct"
            print ">>>>>>>>>>>Congratualations You Did it!!!<<<<<<<<<<<<<<<"
            print "---------Wishing You Best of Luck For Next Game--------"
            print "------------------------------------------------------"
            print "------------------Triggered New Game------------------"
            new_game()
        elif (computer_number > int(player_number)):
            print"----------------------------------------------"
            print "You guessed the number "+str(player_number)+" and left "+str(attempts_left)+" attempts"
            print ">>>>>>>>>>>>>>>>Guess Higher<<<<<<<<<<<<<<<<"
        else:
            print"----------------------------------------------"
            print "You guessed the number "+str(player_number)+" and left "+str(attempts_left)+" attempts"
            print ">>>>>>>>>>>>>>>>Guess Lower<<<<<<<<<<<<<<<<"

# create frame

frame = simplegui.create_frame("Guess the Number", 200, 200)

# register event handlers for control elements
frame.add_button ("Guess Number from 0 - 100", range100)
frame.add_button ("Guess Number from 0 - 1000", range1000)
frame.add_input ("Put Your Guess Here (Integers Only)", input_guess , 200)

range100()
# call new_game and start frame

frame.start()

Dec 5, 2011

Virus size and Its Relationship to Genome Nature and Envelop

Preparation of notes during examinations preparation is one of the most tedious tasks, but key of my happiness is that it always give me some daunting clues about facts which are not provided in books. While I was preparing for my mid-terms at university. I came to know a great correlation in infection causing viruses size with other components. It is non-statistical analysis, performed on very limited number of viruses. But damn interesting.

Sizes of medically important viruses
These viruses are well-known and volumes of literature is available on all of them. Their sizes vary from 10nm to 380nm. But important thing to consider is that most of viruses concentrate from 50-100nm sizes. So viruses at other both extremes are very very less in number, but rare means something unique in all. So, I will be discussing them one by one.

DNA viruses
These viruses are in range of 50-100nm diameter, with Herpes virus and Pox virus as exceptions which are moderately larger than this range. Herpes and Pox viruses are different from other viruses in a sense that their sizes are very much variable as compared to other DNA viruses. Most of DNA viruses have size variation of about 10nm e.g Adenoviruses (70-80nm), Papovaviridae (45-55nm), while Herpes virus and Pox viruses are ranging from 120-150nm and 170-260nm respectively. Exceptions like Hepadna-viruses are discrete 42nm particles with partially double stranded genomes and associated reverse transcriptase enzyme.

RNA viruses
RNA viruses are categorized into (i) ssRNA and (ii) dsRNA viruses. RNA viruses which are single stranded can be of +ve polarity (sense) or -ve polarity, based upon their ability to translate directly or possession of RNA trancriptase association to RNA genome. 
When we check RNA viruses, we find them in all ranges of sizes. They are as small as 20nm diameter (Parvoviruses) and highly large viruses such as Rhabdoviridae. It was a thing of interest that +ve sense RNA viruses were relatively smaller in size as compared to -ve sense RNA viruses. For example, viruses of Flaviviridae are largest to all in +ve sense viruses, which vary in size from 40-70nm (although coronavirus is also larger than this but its exception in all). While viruses of dsRNA are also present at this upper limit, Reoviridae members vary in size from 60-80nm, almost same size as of Adenoviruses of ds-DNA viurses. As, size among RNA viruses start increasing from 80nm, virus type completely shifts to -ve sense, size variability begin to increase which become highest at Rhabdoviridae. Rhabdoviridae members are ranging from 130-380nm in size in one dimension. Another exception at this extreme of size is that genomes of Arenaviridae members can be linear or circular and these are the only viruses which have ribosomes in side nucleocapsid.

Size: A direct impact on viral symmetry
Most remarkable finding which was observed is that as sizes increase viruses start to be asymmetrical. Smallest viruses are very fine with ico-sahedral symmetry. And this thing was found common in all viruses including DNA and RNA. The largest viruses which were observed with icosahedon were Adenoviruses among DNA viruses and Reoviridae members of RNA viruses. Then, helical symmetry begins, which was optimistically ended at 180nm. Coronaviridae members are largest and most variable members with helical symmetry. Now, irregular shaped viruses with complex dimension appear. They are two which are Pox virus and Rhabdovirus. Rabdoviruses are bullet shaped having length (130-380nm) and diameter (50-95nm).

Viral envelop is size dependent
This was observed that viruses with smaller sizes were without any kind of envelop and outermost covering was capsid protein. As sizes continue to increase, envelop begins to incorporate in viral structures. Envelop was found to impart asymmetry in structure and viruses were begin to be more variable in shapes as compared to smaller sized viruses. It was also observed that all viruses which have historical importance such as Herpes and Pox Viridae members contain an envelop outside their nucleocapsid, which is usually host derived.

May 8, 2011

Test to Help Speed-Up Distinguishing Between MRSA and MSSA

Health experts will now be able to save time when trying to determine whether Staphylococcus aureus infections in patients are methicillin resistant (MRSA) or methicillin susceptible (MSSA), as the U.S. Food and Drug Administration (FDA) announced on Friday that it has cleared a test that will allow a speed-up in the process.

There are various types of Staphylococci bacteria, some of which are easily treated with antibiotics and some that are resistant to this treatment, such as MRSA.

For more information, click here

Prostate cancer biopsies linked to risk of serious infection

The specter of prostate cancer is alarming enough – and it just got even more alarming. Some doctors are reporting that men who get biopsies for prostate cancer may be putting themselves at risk for infection by drug-resistant bacteria.
for more information, click here

New contraceptive in the pipeline

It's still at least a decade off, but Professor John Aitken, says the gel could be applied to a small, pliable sponge and inserted in the vagina up to 48 hours before sexual intercourse.
As soon as semen makes contact with the gel, the sperm are paralysed and any STI-causing organisms are killed.
At present, there are not any "local compounds" available that can be applied to prevent STIs, just the "classic" spermicide, which was a "crude inhibitor of fertility", Prof Aitken said.
"Women who use a lot of this stuff, especially commercial sex workers, are significantly more likely to get HIV than women who don't use it ... it just destroys everything around it," he said.

For full story, click here

Gut microbes: What's your type?

When European researchers set out to use gene sequencing to catalog the hundreds of species of microbes in the human gut, they expected to find variation between individuals and perhaps even between geographic groups -- but they assumed that there would be a large number of different possible combinations of bacteria.

Instead, said bioinformatics expert Peer Bork of the European Molecular Biology Laboratory in Heidelberg, Germany, gut bacteria seem to cluster into just three distinct and stable combinations that show up across populations from a variety of backgrounds -- a discovery that could have implications for medicine in the future. 


For complete story

Feb 10, 2011

Gut microbes influence behavior


Gut microbes acquired early in life can impact brain development in mice and subsequent behavior, such as decreasing physical activity and increasing anxiety, according to a study published this week in the Proceedings of the National Academy of Sciences.


This paper opens the door to new studies in at least two directions," Yale University microbiologist Andrew Goodman, who was not involved in the research, told The Scientist in an email. "First, determining how differences between complete host-associated microbial communities lead to differences in behavior, and second, exploring the contributions of microbes during specific developmental periods in the host."

Gut microbiota often colonize their hosts early in life, either during pregnancy or following birth, and play an integral role in the health of developing organisms. Previous research has shown that the bacteria affect the development of liver function, the protection epithelial cells afford underlying digestive tissue, gut regulation and the growth of new capillary blood vessels. But this is the first time gut flora have been linked to brain development and behavior.

Harmful microbial infections, on the other hand, have been linked to neurodevelopmental disorders, including autism and schizophrenia. And rodents infected by microbial pathogens before and after birth demonstrated behavioral abnormalities, such as anxiety-like behavior and impaired cognitive function, leading Rochellys Diaz Heijtz, a neurobiologist at the Karolinska Institute in Sweden, and her colleagues to wonder if the gut's normal microbial residents may similarly influence brain development.

The researchers tested exploratory activity in germ-free mice and mice with normal gut microbiota by tracking their movements across open space. They also tested anxiety of the two groups in two classic rodent behavioral tests -- the light-dark box and the elevated maze. Spending more time in lit areas and along unwalled, elevated maze portions equated to less anxiety.

Germ-free mice appeared to be more exploratory than mice with normal microbiota, venturing farther and to more areas of the space provided. Germ-free mice also spent more time in the light and engaged in riskier behavior in the maze, indicating they suffered from less anxiety than their microbe-filled counterparts.

The team then infected germ-free mice with normal gut microbiota when they were born to test whether the gut flora could alter the mice's activity and anxiety levels. Sure enough, the newly infected mice spent less time exploring and engaging in risky behavior, like the normal mice in the initial experiments. The results further supported the argument that the microorganisms can affect brain and behavior when introduced early enough in development.

"These microorganisms communicate in a systemic fashion to the developmental programming of a new individual and can influence fundamental aspects of behavior," said Diaz Heijtz. "We should start to consider the possibility that the microbiome and/or its composition may contribute to psychiatric problems."

Looking more closely at the gut flora's effects on the brain, the researchers found that germ-free mice had lower turnover rates of certain neurotransmitters in the striatum, the part of the brain involved in the regulation of motor and cognitive function, than in mice with normal gut microbiota. There were also differences in the levels of key synaptic-related proteins and signaling molecules involved in central nervous system communication.

"This all means that there has been an evolutionary adaption of host-microbe interactions to the most complex organ in the body, the brain," said coauthor Sven Pettersson, a neuro- and microbiologist at the Karolinska Institute.

The scientists stress that there are still many unanswered questions and further research is needed to understand the broad implications of the research. For example, the study didn't distinguish the effects of maternally inherited microbes from those acquired shortly after birth, Goodman noted. "It is also not clear whether microbes residing in other body habitats are playing a role," he said, such as those located in the nose, ears, mouth or vagina.

Next up, Diaz Heijtz and her colleagues are hoping to pinpoint which gut microbiota are affecting brain development and behavior. They also plan to identify which brain cells are responding, and work out the details of the signaling pathways that allow the microbiota to communicate with the brain.

Read more: Gut microbes influence behavior - The Scientist - Magazine of the Life Sciences http://www.the-scientist.com/news/display/57968/#ixzz1DctPddZu

Nov 14, 2010

Antibody- is naturally a SUPERANTIBODY

Antibodies protect us from cell infections working extracellularly [1], by blocking the viruses and flagging the pathogens which are eaten by special immune cells [3]. This procedure is known as neutralization [2]. It was believed that viruses can take shelter (by entering in the cell) from immune system [2].

antibody_size_test

A super-antibody was proposed having increased effectiveness against pathogens. So, chemical modifications were suggested which would allow antibodies to enter in cell, tag the pathogen and kill them. This antibody (hypothetical) was given name super-antibody. The parameters which determine the effectiveness of it depends upon the mode of entry to cell, the concentration and stability inside the cell. They were expected to be effective against both viral as well as cancer diseases [5].

In 1946, MRC established a common cold unit in Former Military Hospital at Wiltshire. It continued research for 40 years on common cold by collaboration with volunteers. Next was to perform clinical trials on new treatments of common cold. So, common cold unit re-established in Cardiff University in year 1988 [1].

 

A research led by Leo James and Coworkers [3], published at November 2, 2010, in journal proceedings of National Academy of Sciences. In this research Adenovirus, the causative agent of upper respiratory tract infections, was grown on Petriplates containing human cells [2]. This fundamental research was to understand the way immune system fight against viral diseases [1].images

It was elucidated that before virus invade into cell, antibodies cling to it. Inside the cell antibodies call another component TRIM-21 (Triple Motif Containing 21) [3], which escort them to “Disposal system” of the cell [1, 2]. This cell recycler is renowned proteosome [3] which is cellular structure (containing proteases). This all, TRIM-21 binding and escorting to destination, happen before virus hijack the cell [1]. Increase in viral destruction observed by increase in concentration of this protein [2]. So, it was practically proved that this protein has some role in viral destruction.

It is believed that this research will help in infections such as common cold, winter vomiting bug and gastroenteritis [1]. Studies say Rotavirus, causative agent of severe Diarrhea, can be killed within 2 hours [4]. Unfortunately, this cannot be applied on broad spectrum of viruses, only non-enveloped viruses are susceptible. It is effective against influenza virus because influenza virus shed the envelop just before entering the cell [2]. This new finding has aroused a hope among researchers that a spray or inhaler can be produced which will enhance the viral destruction [4]. Same MRC group is working on animal system now [2].

It is speculated that enhancement of this process can lead to novel sort of antiviral drug. Dr. Jordon Orange, immunologist at Children hospital says that its interesting, exciting and expanding understanding about way antibody works [2]. But in the nut shell, establishing treatment from in vitro experiments is a distant dream yet [1].

References

  1.  A cure for the common cold? Excuse me while I sneeze.

  2. Body's hidden defense against colds uncovered

  3. The immunology paper that won't cure the common cold 

  4. Cure for the Common Cold

  5. Could this lead to a cure for the common cold?

A Biology Quiz

−

Oct 23, 2010

Broccoli – A Food and A Medicine

Broccoli and Its Nutritional Value

Broccoli is a high fiber and cruciferous vegetable which is also known as super food [3,4]. Its green florets produce sulforaphan, a compound which is highly heat stable and potent anticancer agent [1].

 

article-1323011-0B6A68A2000005DC-982_468x314

Misconceptions

It is believed that there are enzymes present which are responsible for production of sulforaphan in Broccoli. So, they should be inactivated during cooking and result should be in no production of given compound. But experiments proved that it was a misconception [2].

Broccoli and Its Medicinal Application

During a research at University of Illinois, Elizabeth Jeffery, professor of Human Nutrition found that lower gut microbial flora was actively releasing sulforaphan from broccoli and absorbing [1,2]. Experiment was performed using rat as test animal and work was published in Journal of Food and Function [5]. Elizabeth believe using probiotics with prebiotics (broccoli) enhance proliferation of microbes occur. So taking broccoli with yogurt can prove to be a good choice [2,4]. It will help to increase the activity of both broccoli as well as colon inhabiting bacteria against cancer cells [1].

Scope of Study

The importance of above mentioned study is that the intestinal region examined was strikingly similar with human colon which indicated our system will work similar way [6]. Broccoli is already believed to be effective against colon, breast and prostate cancer [3,5]. Studies earlier in 2010 at University of Michigan has proved that concentrated doses of sulforaphan are effective for treatment of breast cancer [6].

References

  1. Scientists Attempt To Boost Broccoli’s Ability To Fight Cancer
  2. Research Finds that Broccoli’s Anti-Cancer Potential Can Be Boosted

  3. Broccoli can help prevent bowel cancer

  4. Probiotics in yogurt boost benefits of broccoli

  5. How broccoli can lower the risk of bowel cancer - even if it is overcooked

  6. Tweak Could Enhance Broccoli's Cancer-Busting Potential

Apr 10, 2010

Important News to All Friends

Dear Friends!

I am feeling pleasure to introduce that I have launched a new group on FaceBook, so that our blog continue spreading the knowledge. For this purpose, please spread this message to promote our group. Discuss the topics, news about modern achievements, articles, books and share your valuable remarks. The link of group is given below.

http://www.facebook.com/pages/Austin-TX/Microbial-Earth/141455174773?ref=ts&v=wall#!/group.php?gid=113583648659879&ref=ts

thanks in advance for promoting the group. Regards!

Mazhar Hussain

Microbiology & Molecular Genetics

Apr 9, 2010

Probiotics and Their Benefits to Health

There are thousands of things which are eatable included yogurts, cheese and pickles. If we try to see them in history of mankind then their roots will be very ancient indicating that man is biotechnologist from very beginning of civilization. So, today Stonyfield Farm is famous for yogurt, Mt. Olive Pickle Company, Inc is largest company making pickles and McCadam Cheese Company Inc is one of the oldest companies in new York in the field of cheese industry.

Probiotics are simply defined as "microorganisms in food which provide benefit beyond nutritional value." In this they are not acting as food but helping the digestive tract to digest the food. Lactobacillus is most common probiotic present in yogurt and Saccharomyces cerevisiae is present in bakery products.

Only that organism will be considered as potential probiotic which has following features:

  1. The organism which can sustain its viability in the desired food product.
  2. Organism titer in food should be high
  3. It can resist environmental conditions inside digestive tract. (Gastric juices etc)
  4. It must be competent to stick with the walls of digestive system.
  5. It must have ability to change the environmental conditions.
  6. And last but not least important, it must not be pathogenic.

In Food industry, mostly it is being used for following purposes:

  1. To preserve food (e.g. cheese)
  2. To give flavor to some product (Acetaldehyde)

Its benefits in food are more evident than expected. They are providing benefits related to immunity, gastrointestinal tract, cancer and HIV. We will discuss them in detail in later post.


 

Nov 19, 2009

Desiccation

Mode of Action:

In the absence of water, a condition known as desiccation, microorganisms cannot grow or reproduce but can remain viable for years. Then, when water is made available to them, they can resume their growth and division. This ability is used in the laboratory when microbes are preserved by lyophilization, or freeze-drying. Certain foods are also freeze-dried (for example, coffee and some fruit additives for dry cereals).

Resistance and Desiccation:

The resistance of vegetative cells to desiccation varies with the species and the organism's environment. For example, the gonorrhea bacterium can withstand dryness for only about an hour, but tuberculosis bacterium can remain viable for months. Viruses are generally resistant to desiccation, but they are not as resistant as bacterial endospores, some of which have survived for centuries. This ability of certain dried microbes and endospores to remain viable is important in a hospital setting. Dust, clothing, bedding, and dressing might contain infectious microbes in dried mucus, urine, pus, and feces.

Oct 24, 2009

Osmotic Pressure

Mode of Action:

The use of high concentrations of salts and sugars to preserve food is based on the effects of osmotic pressure. High concentrations of these substances create a hypertonic environment that causes water to leave the microbial cell, this effect is also called as plasmolysis. Loss of water severely interferes with cell function and eventually leads to cell death. This process resembles preservation by desiccation, in that both methods deny the cell the moisture it needs for growth.

Application of Osmotic Pressure:

The use of sugar jellies, jams, and syrups or salts solution in curing meat and making pickles plasmolysis most organisms present and prevents growth of new organisms. A few halophilic organisms, however, thrive in these conditions and cause spoilage, especially of pickles, and some fungi can live on the surface of jams.

Limitations:

As a general rule, molds and yeasts are much more capable than bacteria of growing in materials with low moisture or high osmotic pressures. This property of molds, sometimes combine with their ability to grow under acidic conditions, is the reason fruits and grains are spoiled by molds rather than by bacteria. It is also part of the reason molds are able to form mildew on a damp wall or a shower curtain.

Oct 14, 2009

High Pressure

Mode of Action:

High pressure applied to liquid suspensions in transferred instantly and evenly throughout the same. If the pressure is high enough, the molecular structures of proteins and carbohydrates are altered, resulting in rapid inactivation of vegetative bacterial cells.

Limitation and Solutions:

Endospores are relatively resistant to high pressure. They can however, be killed by other techniques, such as combining high pressure with elevated temperatures or by alternating pressure cycles that cause spore germination, followed by pressure-caused death of resulting vegetative cells. Fruit juices preserved by high pressure treatments have been marketed in Japan the United States. An advantage is that these treatments preserve the flavors, colors, nutrient values of the products.

Oct 9, 2009

Freeze Drying

Freeze-drying, or lyophilization, is the drying of a material from the frozen state. This process is used in the manufacture of some brands of instant coffee; freeze-dried instant coffee has a more natural flavor than other kinds. Microbiologists use lyophilization for long-term preservation rather than destruction of cultures of microorganisms. Organisms are rapidly frozen in alcohol and dry ice or in liquid nitrogen and are then subjected to a high vacuum to remove all the water while in the frozen state. Rapid freezing allows only very tiny ice crystal to form in cells, so the organisms survive this process. Organism so treated can be kept alive for years, store under vacuum in the freeze-dried state.

Oct 4, 2009

Drying

Drying can be used to preserve foods because the absence of water inhibits the action of enzymes. Many foods, including peas, beans, raisins, and other fruits, are often preserved by drying. Yeast used in baking also can be preserved by drying. Endospores presents on such foods cab survive drying, but they do not produce toxins. Dried pepperoni sausage and smoked fish retain enough moisture for microorganism to grow. Because smoked fish is not cooked, eating it poises a risk of infection. Sealing such fish in plastic bags creates conditions that allow anaerobes such as Clostridium botulinum to grow.

Drying also naturally minimizes the spread o infectious agents. Some bacteria, such as Treponema pallidum, which causes syphilis, are extremely sensitive to drying and die almost immediately on a dry surface; thus they can be prevented from spreading by keeping toilet seats and other bathroom fixtures dry. Drying of laundry in dryers or in the sunshine also destroys pathogens.

Sep 29, 2009

Low Temperature

Mode of Action:

The effect of low temperatures on microorganisms depends on the particular microbe and the intensity of application. For example, at temperatures of ordinary refrigerators (0 ˚ C), the metabolic rate of some microbes is so reduced that they cannot reproduce or synthesize toxins. In other words, ordinary refrigeration has a bacteriostatic effect, but does not kill many microbes. Heat is much more effective than cold at killing microorganism.

Disadvantage:

Yet psychrotrophs do grow slowly at refrigerator temperatures and will alter the appearance and taste of foods after a time. For example, a single microbe reproducing only three times a day would reach a population of more than 2 million within a week.

Advantage by Medical Point of View:

Pathogenic bacteria generally will not grow at refrigerator temperature.

Uses of Cold temperature:

Refrigeration is used to prevent food spoilage. Freezing, drying, and freeze-drying are used to preserve both foods and microorganism, but these methods do not achieve sterilization.

Optimum Conditions:

Surprisingly, some bacteria can grow at temperatures several degrees below freezing. Most foods remain unfrozen until -2oC or lower. Rapidly attained subfreezing temperatures tend to render microbes dormant but do not necessarily kill them. Slow freezing is more harmful to bacteria; the ice crystals that form and grow disrupt the cellular and molecular structure of the bacteria. Thawing, being inherently slower is actually the more damaging part of a freeze-thaw cycle. Once frozen, one third of the population of some vegetative bacteria might survive a year, whereas other species might have very few survivors after this time.

Results of Low Temperature Treatment:

Many eukaryotic parasites, such as the roundworms that cause trichinosis, are killed by several days of freezing temperatures.

Conditions:

Many fresh foods can be prevented from spoiling by keeping them at 5 ° C (ordinary refrigerator temperature).

Limitations:

However, storage should be limited to a few days because some bacteria and molds continue to grow at this temperature. To convince yourself of this, recall some of the strange things you have found growing on left over of the back of your refrigerator. In rare instances strains of Clostridium botulinum have been found growing and producing lethal toxins in a refrigerator when the organism were deep within a container of food, where anaerobic conditions exist.

Freezing:

Uses of Freezing:

Freezing at -20 ° C is used to preserve foods in homes and in the food industry. Although freezing does not sterilize foods, it does significantly slow the rate of chemical reactions so that microorganism does not cause food to spoil. Frozen foods should not be thawed and refrozen. Repeated freezing and thawing of foods causes large ice crystals to form in the foods during slow freezing. Cell membranes in the foods are ruptured, and nutrients leak out. The texture of foods is thus altered, and they become less palatable. It also allows bacteria to multiply while food is thawed, making the food more susceptible to bacterial degradation.

Freezing can be used to preserve microorganisms, but this requires a much lower temperature than that used for food preservation. Microorganism are usually suspended in glycerol or protein to prevent the formation of large ice crystal (which could puncture cells), cooled with solid carbon dioxide (dry ice) to a temperature of -78 ° C, and then held there. Alternatively, they can be placed in liquid nitrogen and cooled to – 180 ° C.