title: WebGL: INVALID_VALUE: attachShader: no object or object deleted. Is this secretly helpful?
body: <p>I'm starting to get into WebGL and I'm wondering if there is a good place to learn about the error output.  </p>
  
  <p>I keep getting the following errors</p>
  
  <pre><code>WebGL: INVALID_VALUE: attachShader: no object or object deleted localhost:1   
  WebGL: INVALID_OPERATION: getAttribLocation: program not linked localhost:1
  WebGL: INVALID_OPERATION: getUniformLocation: program not linked localhost:1
  WebGL: INVALID_OPERATION: useProgram: program not valid localhost:1
  WebGL: INVALID_OPERATION: drawElements: attribs not setup correctly 
  </code></pre>
  
  <p>So, what I can tell from these errors is that my shaders aren't working at </p>
  
  <pre><code>gl.attachShader(program, vertexShader);
  gl.attachShader(program, fragmentShader);
  </code></pre>
  
  <p>and the subsequent errors are about not having a program.</p>
  
  <p>So my question is: How do I figure out what is going wrong in my code?</p>
  
  <p>The program is not being defined somehow, and I do have <code>var program = gl.createProgram();</code>.  So, why does this happen?  Where do I look?  I'm guessing that this is because my shaders won't compile, but there are 0 errors or warnings coming out of my shaders as far as I can tell.  It's obfuscated by the aforementioned code/warnings...  Furthermore, chrome mentions these warnings and firefox does not.  Neither can initialize the shaders though</p>