Ongoing projects status…

Too much heat these days here… (it’s midnight, and I am coding in my terrasse…). And I need to make a quick summary of what’s going on @ onekilopars.ec… 

First, and foremost, iObserve. An update version in the 1.4 serie is in preparation. It will include some usual small fixes, one clear usability fix for the Fluxes converter, and more importantly an important improvement to the Coordinates converter. No more loading the full DB. An import/export will replace it. Since it is not the most fun to write, it takes a bit of time. Thanks however to some recent input from a user, I’ll try to also include exoplanets transit times in Airmass and Visibility Plots.

Some of the fixes of iObserve will probably need to be ported to iObserve Touch on iPad. The problem here is that the whole app needs to be updated (again). Apple is always moving forward, and I made a choice for that app long ago that prevent me to go a lot further today (buhhh). Yes, MultiTasking won’t be possible with the current configuration (with that super-cool-awesome-but-very-custom split view controller allowing you to have a master table – with tabs! – in the left, the detail on the right, a top times bar, and the whole master thing wrapped up in a popover when being in portrait). The planning for this is: Undefined, unfortunately, even if it is fun to adopt more recent technologies.

Next, the iObserve 2 story… The Desktop client is well underway. I have multiple-windows, and a lot more power features for big screens. But I wanted 2 major stuff for iObserve 2: a dedicated backend, and some advanced algorithms for planets (and not only Moon as I have today).

The backend is in preparation… but guess what, along the way, I found it very interesting and it opens tons of new possibilities. It is in a very pre-alpha state, and it will be called … arcsecond.io. It is very unstable, as I am struggling a bit with the Django-Python-HTML-Bootstrap-Heroku-Postgres stack. But I am actually pushing code now and then into the repo.

As for the algorithms, the obvious reference is Jean Meeus’ Astronomical Algorithms textbook. I have a copy of the book. And I implemented some of it. But there is an existing implementation that is a lot more complete than mine, and a lot more tested. It’s called AA+, by P.J. Naughter. After some discussion he agreed for letting me put hist code into a GitHub open-source repo, for me to write an Objective-C wrapper… which became actually a Swift wrapper! It’s open-source, so have a look!

Of course, putting my hands into Swift, I thought I could do some interesting stuff with it. And one very nice ESO guy suggested me to write an app for monitoring the ESO archive live, every night. That’s a great occasion to start a new app with all the amazing new stuff iOS8 introduced. So here it will be: SkyDataFlows.

Of course, to read correctly the ESO DB, one must parse the VOTable output. And there is no VOTable parser written in Swift… so here it is! SwiftVOTable, open-source, boum.

And beside this, waiting, is my iTiunes-For-FITS file app (which benefits from the progress of the development of iObserve 2), and some other web projects with a friend of mine. Dev is a lifestyle, a mental life with ups and down! #yeah

Swift 2 announced during Apple WWDC Keynote!

Not really convinced by MUSIC like myself? Not a problem, we have one major announcement for the developer sleeping in you: Swift 2! Moreover, Swift will be open source! Even better! Swift 2 will be open source, and available on Linux! Time for you to start looking at it, no?

<personal ad>SiftVOTable is an ongoing dev of yours truly to have a VOTable-parser in Swift, cool, isn’t it?</personal ad>

Now, the key thing is to know whether the release of Swift on Linux will also include the famous « Foundation » library. The blog post above only says it will include « standard libraries ». But Swift, like Objective-C, isn’t very powerful without the famous Apple libraries Cocoa and CocoaTouch. 

At the foundation of Cocoa(Touch), there is Foundation. And that would be a minimum to start writing server apps with Swift. I may need to reconsider what I am writing for iObserve 2…

Do not hesitate to leave comments about it below!

QLFits3 updated (v3.1.1)

I just discovered I left a damn NSLog instruction in the QLFits3 implementation. It was clearly slowing down every preview the generator was producing (in addition of filling up your logs).

You should quickly reinstall it. Here is the one-liner for that:

curl -fsSLk https://raw.github.com/onekiloparsec/QLFits/master/Scripts/install.sh | sh

Vibrant KPCTabsControls are coming

An interesting feature request from a user of my power tabs KPCTabsControl on OSX: make them vibrant in Yosemite. The effect is subtle, but I managed to implement it. It requires some additional work though before release, to make sure the core feature of KPCTabsControl continues to work on older versions. 

On Yosemite, make sure to use a NSVisualEffectView as container view, and that this view is layer-backed. The demo app will have everything for you to check.

QLFits3 has now options!

That’s it. I managed to implement options for QLFits3, thanks to the fantastic help from the BetterZipQL developer (Thanks Robert!). 

It has been quite an interesting challenge! Now a tiny “config” app is bundled with the QL generator and is running un background, listening for some custom URL scheme whose content is formatted in such way it is transformed into key-value pair, which in turns is saved inside a pref file… 

Let me know if it works for you! The one-line installer:

curl -fsSL https://raw.github.com/onekiloparsec/QLFits/master/Scripts/install.sh | sh

QLFits 3 options

QLFits is certainly the most well known of of my software. It all started just before iObserve, actually, back in 2010! Long ago, when QLFits was in version 2.0 (or even before, I think), there was the possibility to customise the output. This is a requested feature again. And indeed, some people want to customise the output, not really the look of it, but rather the presence, or not, of the headers, by defaults.

Given the very small amount of documentation that Apple is providing on that matter, I am struggling a bit alone. However, I got help from the developer of another great QuickLook plugin: BetterZipQL. You must definitely grab it. It’s free, and provide invaluable insight of your zipped files.