Monthly Archives: July 2013

Indexing by ID

I have a new strategy for iQ. Inspired by Information Retrieval, HTML5 WebWorkers, and Set objects. Here’s the problem:

Continue reading

The Git Trinity

I use Git for personal projects. I got frustrated with the Git UI clients. I would get myself into tree conflicts (or other problems I still don’t fully understand), and the UI couldn’t get me out. Plus I’ve been compelled to learn more about console programming.  So I started using Git Bash — the Linux-like console. And I learned a lot.

Continue reading

Python Docstrings 101

Good code is self-documenting code.

That’s why I’m getting into the habit of using Python Docstrings.

Here is a summary:

  • Where
    • First statement in module, function, class, or method (the “thing”) definition
  • Why
    • Becomes the __doc__ special attribute of the “thing” it’s documenting
  • What
    • Don’t document the “thing’s” name or “signature”; you can get that with introspection.
    • Do document the return value; you can’t get that with introspection.
  • How
    • Triple double quotes (can be r (raw) or u (unicode))
    • Prescription > description. Method’s effect, not only its result.
  • More

iQ, meet DOM

I’m spending some time on iQ today.

I’m trying to stay mindful of performance impacts.

  1. I anticipate users may want to work on large iXBRL documents. MassiveDynamic is 2.8MB.
  2. Or users may leverage iXBRL document sets, that they should like to query as a single document
  3. Or iQ tools might make it possible to stitch together disparate iXBRL documents (i.e. Google vs Apple)

iQ is document-based. It’s not supposed to handle database-sized quantities of data. But I don’t want to be short-sighted.
I wanted to apply what I’ve learned recently about document.querySelectorAll.

The results are enlightening!

Continue reading

Tagged , , , , , , ,