Need assistance with a school project (URGENT!!!)
===

I have just started making a game that is going to be somewhat like space invaders. I'm a complete novice when it comes to programming and have little experience (I'm only attempting this as I need to have a software design project due at the end of next week). Anyways, I have been following a tutorial on how to fire bullets (http://www.youtube.com/watch?v=Bytt-enP2yU&feature=related) and it doesn't seem to be working I have copied almost every aspect of this tutorial except for the 'velocity' variable in the 'bullets' class (which I don't think I need as I'm only using side to side movement not forward/back). this is the code below. Thanks in advance. :)

***MAIN PART OF THE CODE***

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using Microsoft.Xna.Framework;
    using Microsoft.Xna.Framework.Audio;
    using Microsoft.Xna.Framework.Content;
    using Microsoft.Xna.Framework.GamerServices;
    using Microsoft.Xna.Framework.Graphics;
    using Microsoft.Xna.Framework.Input;
    using Microsoft.Xna.Framework.Media;
    
    namespace Software_Design_Major_Project
    {
       
        public class Game1 : Microsoft.Xna.Framework.Game
        {
            GraphicsDeviceManager graphics;
            SpriteBatch spriteBatch;
    
            Texture2D ship; // Declaring the sprite
            Vector2 shipposition = Vector2.Zero; 
    
            List<bullets> bullets = new List<bullets>();
            KeyboardState pastkey;
    
            public Game1()
            {
                graphics = new GraphicsDeviceManager(this);
                Content.RootDirectory = "Content";
    
                graphics.PreferredBackBufferWidth = 600; 
    
                           
            }
    
      
    
            protected override void Initialize()
            {
                        
                base.Initialize();
            }
    
     
            protected override void LoadContent()
            {
                
                spriteBatch = new SpriteBatch(GraphicsDevice);
    
                ship = Content.Load<Texture2D>("ship"); // Loads the ship into the memory.
                shipposition = new Vector2((graphics.GraphicsDevice.Viewport.Width / 2) -
                (ship.Width / 2), 420);
                
                
            }
    
         
            protected override void UnloadContent()
            {
             
            }
    
        
            protected override void Update(GameTime gameTime)
            {
                          
                if (Keyboard.GetState(PlayerIndex.One).IsKeyDown(Keys.Left) && shipposition.X
                >= 0) 
                {
                    shipposition.X -= 6;
                }
                if(Keyboard.GetState(PlayerIndex.One).IsKeyDown(Keys.Right) && shipposition.X <
                ((graphics.GraphicsDevice.Viewport.Width) - (ship.Width))) 
                {
                    shipposition.X += 6;
                }
    
                if (Keyboard.GetState().IsKeyDown(Keys.Space) && pastkey.IsKeyUp(Keys.Space)) 
                {
                    shoot();                
                }
                pastkey = Keyboard.GetState();
                updatebullets();
                base.Update(gameTime);
            }
    
            public void updatebullets() 
            {
                foreach(bullets bullet in bullets)
                {
                    
                    if (Vector2.Distance(bullet.position, shipposition) < 0)
                        bullet.isvisible = false;
                }
    
                for (int i = 0; i < bullets.Count; i++) 
                {
                    if (!bullets[i].isvisible)
                        bullets.RemoveAt(i);
                    i--;
                }
            }
    
            public void shoot() 
            {
                bullets newbullet = new bullets(Content.Load<Texture2D>("bullet"));
                newbullet.position = shipposition;
                newbullet.isvisible = true;
    
                if (bullets.Count < 20)
                    bullets.Add(newbullet);
            }
          
            protected override void Draw(GameTime gameTime)
            {
                GraphicsDevice.Clear(Color.CornflowerBlue);
    
                spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend); 
                spriteBatch.Draw(ship, shipposition, Color.White);
                spriteBatch.End();
    
                foreach (bullets bullet in bullets)
                    bullet.Draw(spriteBatch);
    
                base.Draw(gameTime);
            }
                  
                        
    
        }
    }

***BULLETS CLASS***

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Microsoft.Xna.Framework;
    using Microsoft.Xna.Framework.Graphics;
    
    namespace Software_Design_Major_Project
    {
       
              class bullets // A new class needs to be created to allow for bullets.
            {
                public Texture2D texture;
    
                public Vector2 position;
                public Vector2 origin;
    
                public bool isvisible;
    
                public bullets(Texture2D newtexture) 
                {
                    texture = newtexture;
                    isvisible = false;
                }
    
                public void Draw(SpriteBatch spritebatch) 
                {
                    spritebatch.Draw(texture, position, null, Color.White, 0f, origin, 1f, 
                    SpriteEffects.None, 0);
                }
        }
    }

P.S. Sorry for the long post. 
