Showing posts with label projects. Show all posts
Showing posts with label projects. Show all posts

2013-07-26

It's here

The stuff I promised in my last post is now live.

And perhaps least interesting if you're a user of the site - unless I get run over by a cable car or something - is that the source code to travellermap.com is now up on github.

Also:
  • Slipped in a few bug fixes. Probably slipped in a few bugs, too. Let me know.
  • Added a ton more tests (unit tests, API tests).
  • I still need to post T5 data format documentation. (Writing good documentation is much harder and time consuming than writing code.)
  • The old-style SEC data output has been changed to match the column widths from the ancient GEnie data drop. This means names get truncated and all that fun stuff. If this breaks anything that consumes the data I would recommend changing to consume the tab-delimited data, which is inherently more flexible.

Ω

2013-07-23

Coming soon: Open Source, T5 Data, RESTful URLs, MSEC parsing

I'm taking a week off from work to catch up on personal projects that require more than the usual 20 minutes a day of unbroken concentration I can scrounge up. For TravellerMap.com my big goal is getting the code open sourced, up on GitHub. As a prelude to that I needed to do some cleanup, such as moving some authentication strings out of the code itself, and general polishing. Don't expect it to be beautiful, though!

A few things got done as part of this process:

  • More RESTful URLs will be added, with the ugly SomeAPI.aspx URLs relegated to legacy. For a hint of what this might look like (if you're not familiar with the terminology) look at a COTI thread on RESTful Traveller APIs
    • Nit: it won't be truly RESTful as the site is stateless, so there's no state to transfer. 
  • I've implemented T5 "Second Survey" data parsing and a formal format description. Short answer: column-based, but variable width fields with a header that self-documents field widths.
  • I've implemented support for sec2pdf's MSEC file format. Not every feature (like label tweaks) is supported, but it will save you from learning the XML metadata format.
  • Added honest-to-goodness unit tests for a handful of things. 
  • Converted most of the C# to use System.Linq where possible to make the code more readable.
  • Squashed various bugs
Expect shiny things over the next few days, and as always forgive the mess.


Ω

2013-06-08

Hive Federation Completed

Mark Humphreys has submitted the sector data, borders and routes for the last of the hitherto uncharted sectors of Hiver space, as well as updates to the other sectors, so it's all filled in on the map:

Awesome work, Mark!

Ω

2012-07-15

Another Non-Update

Nothing to report yet (June got busy!) but I have been doing some behind the scenes work.

The tiled, dragable map display logic used for the main map (and iframe) and the touch version were completely separate code. If you've played with the touch version you know it has some nicer features, such as intermediate zoom levels and using available images while others are loading so zooming in is a much more pleasant process. I've been working to unify the code between these, and it's almost done - I just need to get the overlay and the you are here features for the iframe API ported over and I can push the update.

As a side effect, this will allow devices supporting touch events (iOS, Android, etc) to interact with the main map page, although the interface will still be kludgy. That'll be the next thing to fix, followed by those data updates I was promising. Ω

2008-01-20

LBB Generator

I played a bit more with the sector.htm page - adding a title page, tweaks to the layout, and so forth. The page code is also slightly more interesting to peruse - to make it easier to modify I wrote a JavaScript Template mechanism that defines the transform using XSLT-like constructs (if, foreach) embedded in the HTML as attributes (jt_if, jt_foreach) itself, and JSONT-like expression embedding sequences ({$.index}, {$.title}), and operates over a JavaScript data construct. The expression language is JavaScript itself and "$" is set to the current object as the parse descends. Check the page source for details.

It ended up working pretty well, once I sorted out some cross-browser issues (IE doesn't have a convenient mechanism for enumerating explicitly specified attributes, alas). Tested in Firefox 2, IE7, Opera 9 and Safari 3 on Windows XP. Ω

2006-12-03

Third Imperium fanzine

A very preliminary secret project is ready to see the light. Head over to:

http://www.travellermap.com/thirdimperium/

(Short summary: trying to get copies of an awesome Traveller fanzine from the 1980's available online.)

UPDATE: The project is complete as of 2007-01-11, with all issues and supplements available for download. Thanks to all of the contributors! Ω