Why would [git push] fail to push annotated tags as well?  That just results in another disruptive layer of potential synchronization issues.  They finally added sane behavior, but you have to turn it on with:

git config --global push.followTags true

Or, use rad-scripts!  Which has [git-sync], and, as of today, always uses –follow-tags.  I’m loving my Node.js lifestyle.  😛

Some people argue that Semantic Versioning fails to deliver. Why they expect miracles, I’m not sure. Other people propose entirely new schemes for schemas, because they want to get some different meanings out of their versioning system.

My current approach:

  • Using SemVer gives you compatibility, feature and build information that you would otherwise not get; it may not be absolutely precise to use these big buckets, but having them is good
  • Using SemVer for schemas works for me, in this way:
    • to represent database incompatibility, bump the major version (“don’t fear the major bump”)
    • to represent the need for a database upgrade, bump the minor version
    • perk #1: database upgrades can be completely driven by just the minor version (major versions must match, of course, but patch can be ignored)
    • fallout #1: you MUST consider dbs with older major versions to be incompatible, even if the major bump was not db related
    • fallout #2: you MUST run an upgrade on databases with older minor versions, even if the minor bump was not db related; the upgrade will simply update the internal db version

Works for me.  Upwards.

Node is fun!  Except when it’s not.  It’s pretty easy stuff, but I was burned by a couple things today while debugging.  Take note!

  • You can – and MUST, at times – mess with installed node modules; hack away directly at their source for instantaneous satisfaction!
    • find them here:
      • linux (always easier): ~/.npm
      • Windows: C:\Users\#name#\AppData\Roaming\npm
    • however, watch out that you follow dependencies properly; if a module requires another, it will often keep a copy underneath its folder; there may also be a global copy in the root npm folder
  • debugging is most easily accomplished by the good old-fashioned “jam in print statements” hacker methodology
    • via console.log(“WHAT IS HAPPENING!?);
  • when you grow up and want to get into serious debugging, use linux, and sling your code into the Chrome debugger, via node-inspector

I’ve documented my Phabricator workflow on the wiki.  It’s working great.  The very-configurable workboard column configuration can make querying difficult. But epriestley works hard to keep the whole thing driving forward without it spinning into chaos.  I just did a [git pull] and got the new features I was looking for that allowed me to save sort defaults for my workboards, just perfect.  I’m still waiting for one more feature, but I have workarounds described on the wiki to keep my flow pretty damned tight.

Simple reason: because it’s open source software.

Specific advantages that Scite has over Sublime, because it is OSS:

  • It runs on Pi (because, like, WE HAVE THE SOURCE)
  • With a solarized setup, it’s just as pretty
  • No NAG SCREENS OMG kill me now

Sublime is great.  Scite is better.