Life update

Posted on Nov 4, 2018 in Birding, Blog, Form Tools, Open Source Projects, Training / Conferences | 0 comments

Been a while since I posted here! I do rather wish Github would offer some sort of feature where I could mention things like “I’m on vacation for 2 weeks! Will not respond!” or “I’m sodding busy. Check back in a week”. Once that happens, this website will serve even less purpose.

Conferences

Compared to previous years I’d done gone to fewer and fewer events, sigh. Still, a couple of months back I attended the Open Source Summit 2018 here in Vancouver put on by the Linux Foundation. A big thanks to my company, Global Relay, for covering my ticket. It was extremely interesting – and cool to see Linus Torvalds in person – but overall, not too much that was immediately pertinent to my job as a boots-on-the-ground web developer.

Next week I’m heading down to Seattle for CascadiaJS, which I’m pretty excited about. I attended one once back in Vancouver a few years back: it’s a conference very much in the flavour of JSConf – earthy, but full of concrete information. Should be a fun couple of days – especially in light of the new React version that just came down the pipe. Curious to see people’s opinions on Hooks; I haven’t yet had time to play with them – just read the docs and see the flurry of Twitter posts about them.

Work / Life balance

The day job is going fine, I’ve slowly been hammering away at helping upgrade our old Sencha application over to React. I’ve almost finished a rewrite of a translation tool from java to node, which I’m quite pleased about. The code’s not bad and it gave me an excuse to play with esprima. Esprima’s a tool for converting JS code into an AST (abstract syntax tree) where you can manipulate and reconstruct the JS. Tremendous fun.

Sadly, a few months back the chap that runs a bus service from our island (Bowen) to downtown Vancouver ran into technical problems, so I’ve been mostly using BC Transit to get to and from work. Wow, does THAT suck. Commuting is now far more unpleasant and takes far, far longer than before. My spare time on a regular work day has dwindled to about an hour and a half: plus I’ve lost all that time I was able to work each morning/evening on the commute. Anyway, whine whine, I’m just saying I’ve had less time than ever to work on open source. Speaking of which…

Open source projects / Form Tools

Most of my focus has been spent on Form Tools, plodding my way toward 3.1 (rewriting the installation + upgrade code). It’s a little maddening: yes it’s a fair bit of work, but honestly if I had the time I could get it done in a few weeks. Instead it’s drawn out and out and out… sigh. Time, time, time. Today I’m going to try to get 3.0.9 out the door (just bug fixes) but it’ll be back to 3.1 very soon.

I also upgraded react-country-region-selector a couple of months back and if and when I get a little time I think I’ll rewrite it in Typescript. I didn’t particularly LIKE typescript – actually I thought it was an unbelievable pain in the ass & didn’t provide anywhere NEAR enough benefits for the difficulties that it introduces. But I’d like to give it one more shot where I have full control over how anal the linting settings are. The last time I used it it was in a Nazi regime where wasn’t permitted, Generics abounded and everything was cranked up to be as fastidious as possible. I strongly felt the Law of Diminishing Returns applies to Typescript usage and a more permissive configuration may make it worthwhile while cutting down on the “how-the-hell-do-I-satisfy-typescript?” headaches. Anyway, I’d like to give it one more go before writing it off completely, because there’s no question that working in plain JS after using Typescript you find yourself missing the odd thing.

Birds / Trips

A couple of months back, I decided to cut down on my local birding and I think this is the way it’s going to remain until something radical changes (like I become a millionaire). This was for a couple of reasons: not enough time and I was getting more and more into nature as a whole. I’d been using iNaturalist and started cataloguing and learning the various plants and insects in the area. Tremendous fun. But on the birding front, I just got back from a 2 1/2 week trip to Australia where my wife and went from Sydney to Brisbane to Cairns. Pictures here. I’d intended to track the other flora and fauna as I travelled, but there just wasn’t enough time on so short a trip so I just photographed the more outlandish things. Terrific trip though… I picked up some really incredible lifers: southern cassowary, bowerbirds (4 species), birds of paradise (2 different riflebird species), bustards, 4 more albatross species (including wandering!) and above all… rainbow bee-eater. I’ve wanted to see bee-eaters ever since I became a birder and these didn’t disappoint. Beautiful, charismatic birds, incredibly deft flyers that perpetually squabble amongst themselves. Great to watch.

Next year I’ve booked a trip to Costa Rica with my dad for mid-March. For the fall/winter it looks strongly like I’ll be heading to Kenya, and if I can afford it (and can get time off work) I may cram an trip to Singapore and Malaysia in in August. Then again, who knows. Lots of time for plotting…

Alrighty. Caught up. Now I’m off to pull up the potatoes from the garden and the rest of the day is on Form Tools. Seeya.

Read More

Open source, work, Hong Kong

Posted on Mar 30, 2018 in Birding, Blog, Form Tools, Open Source Projects | 2 comments

Things are good! First off, open source work.

Form Tools 3 is primed and ready to become the standard build next month. All the major issues were ironed out in the alpha so as expected, the beta period has been extremely mellow. A few issues have been reported and fixed, but nothing of any great consequence. Unless something remarkable happens I’ll be dropping Form Tools 2 from the download page around the weekend of April 15th.

I’ll also be doing some cleanup. The forums will be closing (end of an era!) and all support will be moved to github. It’s time. Maintaining a forum is a job unto itself, and much as I respect MyBB, none of the plugins I installed were able to fight off the neverending spam – that alone forced me to reconsider why we have the forums going. Once the forums are shut down, finally I’ll be able to get formtools.org off the blacklist from many search engines. Yup, it’s been that bad.

Best of all, I’ll be able to start work on the next release of Form Tools; after all these years, new code at last! FT3 was just a refactor, albeit a massive one. FT3.1 will be rewriting the entire installation and upgrade process so all users will now just download the FT core, and pick and choose what modules + themes they want right within the installation script. This will allow me to drop tens of thousands of lines of code running on formtools.org for the Custom Build script, download package generation, grunt build processes, etc. etc. Best of all it’ll be better for the user.

Work is going well too. I was assigned time to work on a project to investigate and demonstrate the feasibility of moving our client-side codebase to React/Redux, which has been met with approval so far. Let’s see how that all goes, but I’m extremely pleased – this would be a massive improvement for everyone.

Tomorrow I’m off to Hong Kong for the week to go birding so I’ll be mostly incommunicado until I get back and I’m de-jet lagged. I’ve spent the last 3 months swatting up on the birds of Hong Kong, so actually getting to see some of these birds in person is wonderful. Hope my gammy ankle holds up to all the walking I have planned… As always, I’ll post a few of the better pictures I take.

Read More

Open Source 2018

Posted on Jan 6, 2018 in Blog, Form Tools, Open Source Projects | 0 comments

Now a brand new year has rolled in, I find myself taking stock of where I’m at as a developer, and frankly I’m feeling pretty frustrated! Other than working an Electron project last year at my day job, I’ve been using exclusively old technologies for some time. That takes a toll. It’s not so much just working on the “cool new stuff” as is being aware that there are simple better ways to do what I’m doing.

Last year the majority of my time was spent working on the Form Tools 3 upgrade. It’s now finally approaching the end of the alpha phase with all modules, themes and the core having been converted to object-oriented, PHP7-compatible code. That’s pretty great, and in some respects I already trust it more than Form Tools 2.

Nevertheless, it still doesn’t use the most current of technologies. I’m deliberately supporting as far back as PHP 5.3 to maximize compatibility with people’s server environments, which of course prohibits using any of the more modern features of the language. And client-side it’s positively archaic: it still uses jQuery and per-page object namespacing to provide interactivity. Don’t get me wrong, I’m not knocking it: it’s served its purpose well. But holy cow do I ever need to do something more modern to keep me engaged.

So! Here’s the plan for the coming year. For the first couple of months I’m going to continue fighting the good fight to get Form Tools out the door. Once v3 is the official build I’m going to start converting parts of the UI to React/Redux, starting with a brand new in-app upgrade system. I learned my lesson with FT3 – a massive rewrite of an application of that size just isn’t feasible. From here on out, the approach will be incremental updates.

The current upgrade process relies on the user’s installation passing details of what they have installed to the Form Tools website, which then intelligently constructs a new package of available components with the appropriate compatibilities. The plan is to do two things here:

  1. phase out the website as the key player. The custom CMS powering the Form Tools website will continue to be the single source of truth for available component versions and compatibilities, but instead it’ll now simply provide a REST feed of the information which can be accessed by the individual installation.
  2. have the Form Tools installations themselves download the source code directly from the github repos and install/upgrade the components directly. No more manual downloading of content from the website and FTP’ing it to the server.

The backend of Form Tools will never be cutting edge, but the front-end has far more room to modernize. This is what I’m going to be focusing on. I think it’s a sensible way to stay sane. ;)

Read More

Dec 2017, project updates

Posted on Dec 3, 2017 in Ace-diff, birdsearch.org, Form Tools, Open Source Projects | 0 comments

Long time no post! I’m en route to Panama for a quick birding trip so I’m taking a hiatus from my open source work. Quick summary of where we stand with some of them:

birdsearch.org. This project has been pretty much unchanged since the first Beta release, but it was always pretty solid. I’d love to make a few improvements to both the architecture and feature list but so few people actually use the script I can’t justify the time. It’s a pity – I personally use the site daily to track bird sightings all over the place (such as the locations I’ll be visiting in Panama!) – but time is time.

Form Tools. This has been occupying the vast bulk of my time the most this past year. The Form Tools 3 alpha is coming along well: only 7 more modules to update, plus the API, plus a whole lotta testing. I’ve posted that I was hoping to get it into Beta by January and make it the standard build by the following month. That may have been a little optimistic (the Form Builder module update has taken an eon) but I don’t think it’ll be far off. We’ll see.

d3pie.org. Sadly fallen into neglect. Recently a chap offered to take over maintenance of ace-diff – another one of my older, less-maintained libs – I’m rather hoping someone will offer to do the same for d3pie. It’s a cool little script, but in dire need of a maintainer.

Anyway. Off to bird.

Read More

Form Tools 3 alpha!

Posted on Sep 24, 2017 in Form Tools, Open Source Projects | 0 comments

Last weekend I release a new alpha version of the next major release of Form Tools. This has been a loooong time in coming, hoo boy.

All code is on github.

At this point, only the Core, System Check module and Classic Grey theme are FT3 compatible, but that list should be expanding pretty fast.

But FIRST I need to get that upgrade script back online! I hoped to work on this weekend but had to patch an issue with generatedata instead.

Read More

Form Tools site rewrite

Posted on Feb 8, 2017 in Blog, Form Tools, Open Source Projects | 2 comments

Almost there…! I’ve been posting regular updates on the Form Tools twitter account, but the new site is almost ready for prime time. You can find the staging environment here:
https://next.formtools.org

Finding time to finish it off is the tricky part. If I could drop everything, I’d say it’s only 2 or 3 days away, but since I have a day job (and a helluva commute) it’ll probably be 2 or 3 weeks. Doesn’t help that our car died, so a lot of time is going into finding a replacement. But… coming soon!

Man, can’t wait for this to be done so I can return to the actual script itself.

EDIT: the new site has been released. Few issues here and there, but on the whole it’s been pretty successful. Form Tools 3 is now coming along. :)

Read More

birdsearch.org 2.0.5

Posted on Nov 26, 2016 in Birding, birdsearch.org, Form Tools, Open Source Projects | 3 comments

Alrighty! I just released another small update to birdsearch.org, the latest of a series of bug fix releases. I believe this release now fixes all the significant errors, so I’m going to be putting the site largely aside for a bit. The next task for that site is to add mobile support – something badly needed! But first I want to return to Form Tools for a little while.

btw, I’m off to Mexico for a week so sorry if I don’t respond promptly to anyone.

Read More

Taking stock

Posted on Nov 14, 2016 in Blog, Form Tools, Open Source Projects | 2 comments

Now that birdsearch.org is out the door and looking more solid by the day (maybe a week or two’s worth of bug fixes left, I think), I’ve tentatively pulled back the veil on Form Tools once again. Form Tools is a script I created well over 10 years ago, which grew and grew into something of a monster. But a good monster. Sure it lives under the stairs, drools a lot, and is pretty terrifying when you first meet it, but really it’s pretty great at heart. Honest.

Since departing the project a few years back, I’ve made two or three aborted attempts to return to the script. Question is: how? It’s so massive, each time I do, I get overwhelmed with the sheer volume of work required, something life-related comes up and I end up having to back off. But the bottom line is I think it’s a great script and well worth updating.

So anyway, I’m trying to come to terms with exactly how I can return it  – how I can split it up into smaller pieces to tame this creature. Let’s see how this goes.

Read More

Form Tools update. Or lack thereof.

Posted on May 13, 2015 in Form Tools, Open Source Projects | 12 comments

Feelin’ mighty discouraged, here.

A year ago this month I got back control of Form Tools and was extremely excited to return to work on it… and then something came up, and I had to put it off for a month or two. So then I returned to it, and something else came up. Wash and repeat.

Cut to one year later. What do we have to show for it? Well, the documentation has been ported out of a custom database and into github where (eventually) anyone can edit it – admittedly, that was a huge task – and I’m still working on the website re-write. But really that’s it. The old site is still just sitting there; I’m not helping out in the forums, and basically the whole script has gotten sadly out of date.

The problem is time, not motivation. In the two years that I took off from Form Tools I started numerous other projects include d3pie, grunt-search, country-region-selector, and I re-wrote my popular generatedata.com script. All of these, plus many others, take time to support. When bugs are found I have to fix them – and even finding time for that is difficult.

I absolutely don’t want to give up on the project, I’m just at a loss about how to proceed. July 1st my wife and I are moving to Bowen Island where we’ve bought a house. Initially that’s going to mean even less time while we get the house shipshape.

The goal with Form Tools was – and still is – to get it to a state where people are able to contribute so it can hum along on its own steam. But in order to do that, I need to do work myself – the website, considering the functionality it offers, has to be closed source.

Anyway, </vent>. Sorry the project seems to be stuck in limbo.

Read More

Form Tools Documentation

Posted on Aug 5, 2014 in Form Tools, Open Source Projects | 1 comment

The last couple of weeks I’ve been working on the formtools.org website rewrite. Sheesh, what a job! Huge bloody site – enough work to keep me busy for months.

First stop has been the documentation. As it stands today the Form Tools documentation is in a closed, custom MySQL DB that I wrote many years ago. It felt like a good idea at the time, but today I had something very different in mind. The new documentation is now generated by Jekyll, and fully editable by anyone via github. You can see a sneak peak here:  http://formtools.github.io/docs/

Because the documentation will be static it’ll load a lot faster, plus it’s also downloadable for offline use. I’ll be adding in searching and tagging soon, as well as porting over the remaining sections.

Ultimate the documentation will be moved to docs.formtools.org once the new website is ready.

There’s a huge amount still to do, but you can see the general directions it’s heading. And if you spot any broken links, typos or anything else, just click the “EDIT PAGE” button!

Read More