I am a programmer at heart, and I write far more code than prose. This is a log of everything I write rather than just the occasional screed or missive on some inane topic. This, then, is a truer "web log", a brief history of what I've been writing lately. If you're not interested in the code, or the prose, or whatever, you can always filter that stuff out using the toggles in the left column.
Listening to the Okami soundtrack. I miss playing it. More games should have magic paintbrushes.
- 3 edits2 adds in /
Converted hash-based schema tables to a case-insensitive Table class (fixes #1)
* Created a new Treequel::Schema::Table class which provides case-insensitive (as well as struct-like method) access to schema information.
* Aliased Treequel::Directory#bind to #bind_as
- 2 edits in /
Adding system-config methods to the Treequel methods
- 8 edits2 adds1 delete in /
Checkpoint commit
- 10 edits1 move4 adds6 deletes in /
Adding command-line tool,
* Added a new command line tool for setting up, starting the server, etc.
* Switched to a simpler logging solution
* Removed fancy configuration stuff, as I don't think we'll need it.
* Added MUES::Environment, MUES::Player, and MUES::Client classes.
* Merged some of the more-useful utility functions and mixins from
other projects.
- 19 edits5 adds in /
Finished parser tests, bugfixes,
* Fixed a possible segfault when formatting a query result failed.
* Made Redleaf::GRDDLParser#parse and Redleaf::RSSTagSoupParser#parse require a baseuri.
* Added Date <-> xsd:date literal conversion.
* Finished up specs for the rest of the parser classes.
* Changed the pending note in the specs that cover DESCRIBE SPARQL queries to
include the URL to the bug that's tracking the implementation of DESCRIBE in
Rasqal.
- 1 add in misc/rasqal-0.9.19-formatter-nullbaseuri.patch
Adding a patch to fix a bug in Rasqal 0.9.19
Updated a bit.
(diff)Updated.
(diff)- 2 adds in /
Adding experimental ditz issue-tracker ( http://ditz.rubyforge.org/)
- 7 edits in lib/mues
Subversion ID -> VCS ID
- 1 edit in spec/treequel/branchcollection_spec.rb
Finished specs for BranchCollection#empty??
- 7 edits1 move10 adds in /
Checkpoint commit
- 5 edits in /
Treequel shell bugfixes, #empty? on Branchsets and BranchCollections?
* Handle tab when the command line is empty in the treequel shell. (Thanks Mahlon)
* Add an #empty? predicate method to both Branchsets and BranchCollections? (one
spec still pending).
- 3 edits in /
Added an 'irb' command to the treequel shell, fixed build-number parsing.
- 1 edit in Rakefile
Updated build system.
- 1 edit in spec/redleaf_spec.rb
Fixed build string spec pattern.
- 35 edits in /
Added hash-append interface, Redleaf.generate_id method, and qnames hash to serializer methods.
* Added the ability to append whole subgraphs in a Turtle-like Hash via Redleaf::Graph#append.
* Added a generate_id method to the Redleaf module to facilitate the generation of IDs for bnodes.
* Added a hash argument to serializer methods to pass through a hash of qnames to namespaces for the
output prefixes.
- 1 edit in bin/treequel
Implemented the -b bind_dn option.
- 2 edits in bin/treequel
Merged 233:1d06d28159a6
- 6 edits in /
Adding the beginnings of ActiveDirectory? support, treequel shell options, server introspection.
* Treequel shell:
- Added a few initial command-line options for connection type, bind DN, etc.
- Made colorization of encoded and URL attributes consistent with regular ones.
- Downcase attribute names before using them in the 'cdn' command.
* Added more server-introspection support to Treequel::Directory; added more control OIDs,
and new methods for fetching supported extensions and features.
* Adding ActiveDirectory? support to Treequel::Schema:
- Made alterations to the parser to support ActiveDirectory?-style non-standard schema entries (OIDs in quotes, descriptors in attributeType SYNTAX attributes, etc.).
- Handle the case where the schema doesn't have syntaxes, matching rules, and/or matching rule use entries.
- 27 edits13 adds1 delete in /
Committing some outstanding changes from an old svn checkout, starting conversion to RSpec
- 2 edits in bin/treequel
Merged with 230:b994d8d9d608
- 4 edits1 copy1 add in /
Initial (untested) implementation of the sorted results control.
* Added Treequel::SortedResultsControl?
* Added an experiment for testing the sorted results control.
* Re-sorted the OID constants to be in OID order
- 1 edit in .hgsigs
Added signature for changeset 961801a5b88a
- 1 edit in bin/treequel
Convert the option parsers to a class global instead of a constant
- 1 edit in lib/bluecloth.rb
Bumping version to 2.0.7.
- 2 edits in /
Backing out the m17n fix
* I'm backing the m17n fix from #63 out, as it causes Ruby to segfault
when the results of #to_html are inspected in some situations. I'll re-release
a fix for it later.
- 1 add in .hgsigs
Added signature for changeset 0cc074237b75
- 1 edit in Rakefile.local
Rakefile changes:
* set the binary gem version
* clean up empty binary lib directories
I’ve been playing around with the Webkit-based HTML view that TextMate provides for HTML command output, especially to see if I could use its fancier features to make an RSpec runner that was a little shinier and had some features I find myself monkeypatching into the default TextMate runner for every project.
I’m in love with the ‘Resources’ view that bleeding-edge WebKit’s Web Inspector includes, so I set out to adapt the progress-bar half of the page to reflect the status of examples, and ended up with something I’m pretty happy with.
After many weeks of pointless tweaking and perfectionist procrastination I released BlueCloth 2 yesterday, but the announcement seems to have been swallowed by the ruby-talk list server (I tried to post it twice). I’ve posted it here if anyone’s curious.
I’ve been working for the last 7 months or so on an RDF library for Ruby based on the Redland C library. I tried to use the bindings for it that are distributed under the redland-bindings package, but like with most SWIG-based bindings to C libraries, I found it brought me out of thinking in Ruby whenever I had to call into it. It’s not the author’s fault — a custom binding for any language takes time and a sense for its idioms — but I felt like RDF and Ruby could mesh better than the functional interface could express. I felt like scratching the itch I was feeling would not only help me learn more about Redland and RDF, but it would make the barrier to entry lower for other people interested in using Ruby together with RDF.
So I started Redleaf, and it’s pretty much at the point I wanted it to be for a 1.0 release. There’s still a few features that Redland has that aren’t accessible from Redleaf (graph contexts and transactions are the big ones), and I haven’t even tried it under 1.9 yet. I’m also pretty sure my string translation back and forth from Redland’s unsigned char *s to Ruby’s char *s will cause problems down the road (with UTF8 data, maybe?). Ruby 1.9’s strings-with-encoding are looking pretty good for that, but I have a lot of code to port before I can make the leap to 1.9.
Mostly what’s left to do is documentation work. The API docs are pretty solid, but the manual is only about 20% done. While I think I can probably release without having it done, I’d at least like it to cover the library well enough that people can start using it without too much experimentation.
So I’m off to write some more docs. Hopefully I’ll be far enough along by March that I can release it then.
We recently decided to ditch ActiveRecord for our domain classes at work for Sequel. We’ve already been using Sequel for a great deal of the database work we’ve been doing lately with our usage and trending analysis tool for our NetApp GX and our render farm, and it’s really a solid piece of work that makes interacting with a database a breeze. It’s nice to be working with datasets for this kind of stuff instead of having to pull out tons of objects just to grab a sample of a single column and throw them away again. Sequel lets you use all the features of your database, but the easy stuff is just as easy.
We’ve been feeling the pain of trying to track ActiveRecord updates, and it keeps making moves further away from being a useful library in environments other than Rails. I’ve been using Sequel::Model for this site’s back end, and the ORM parts of it are just as clean and powerful as the core. We’ve already done conversions of our most-complex and most-connected classes, and we’ve spiked out all the stuff we weren’t sure of and in every case the code shrank, things got a lot less magical, and the functionality stayed the same or improved.
A salute to Jeremy Evans, Sharon Rosner, and all the other people that made Sequel so great. It’s going to be a lot of work, but I’m looking forward to it.
The last two years has given me renewed respect for PostgreSQL, too. It’s performing like a champ under a steadily-increasing load (~ 8M inserts/day), and its partitioning, tablespacing, and triggers make doing data-warehousing stuff relatively painless. It’s in big part due to the genius of our DBA that set stuff up for us initially, but it was partly his enthusiasm for it that made me motivated to dive in and start learning more.
Hopefully I can convince Mahlon to write up the work he’s been doing with partitioning and tablespaces at LAIKA.