Time Flies When You’re Busy

Oh, I thought I could remember to write regularly here.  But, between work and rebuilding personal things, I just haven’t had the brain-space.

So, what have I been up to?

Building a form and preparing for a Christmas vacation, that’s what.  And, as usual, the summary doesn’t do the actuality any justice.

First, the form:  The last four weeks have been a self-inflicted crash-course in HTML5, CSS3, jQuery, and LocalStorage in all Windows and Mac browsers.  I’d love to share the actual file I’ve been working on, but it’s still all work-related and not for general consumption.  To summarize, it’s a 162-field form with collapsing sections, the ability to save progress locally and pick back up where left off, export to CSV and import CSV.  It’s a web-form that’s really a local browser-based app for processing clients.

Oh, and about the above – I didn’t make a typo when I wrote “file” – I am making this form single-file, non-compressed locally saved .html, which involves encoding images as “data:image/png base64”, and I have to keep all of the form-field values available for the eventual connection to a database.  Yeah, it’s not connected to a database to start with.

This exercise started as an attempt to make a form that multiple people could fill out and send to each other, with the requirement that results be stored in a spreadsheet that could be imported into a database eventually.  I started with Google Forms since it automatically connects to Google Sheets, but that just didn’t work – I cannot get Google Forms to handle required fields when passing “saved” values from an encoded URL.  (Not to mention the difficulty in assembling that URL from anything but the Google Form itself…)

I then tried to print out the Google Form to a PDF and construct a form using Acrobat, but the results won’t export outside of the form.  I’m not up on my Adobe server technology, but I suspect it’s because we do not have nor will we have a server-based Adobe solution any time soon, because Adobe licensing is silly and designed to give IT people headaches, not to mention the poor financial planners and accountants.

The next-to-final attempt was through Microsoft Word, but that’s just headache inducing.  I mean, I’m using 2010, so I’m not trying to do this with Word ’95 or anything, but it’s so obtuse and opaque.  I can see where the developers meant well, I really can, but intentions don’t build a form.

So, I turned to HTML – knowing full well that JavaScript can take form entries, turn them into an array, then pass the array into a CSV with a little mangling.  I’d worked with it before, albeit in a .ASP Classic environment.  I wasn’t sure exactly how it’d work, but I knew it had a better chance than the Adobe or Microsoft solution, and I wouldn’t be waiting on Google to get back to something it back-burnered because it’s development of features is… sporadic and unannounced, to be polite.

That was when I discovered HTML5 contained so much more than all predecessors.  It was the migration to a multimedia web that didn’t constrain itself to the tired old metaphor for a reference library.  It removed some of the stodgy insistence for structure and internal-grammar that HTML4 and XHTML introduced.  It became more content-aware.

I built the basic form and had the style working in one day.  (And it took me one day only because I was getting picky with placement and colors for blocking, and I kept forgetting that most browsers do width percentages based off of the parent container before margins were applied.)

With no direct experience with JavaScript, other than troubleshooting, I was able to incorporate jQuery and get a draft for expanding sections working.  Considering how jQuery is really just like short-hand inline notation for JavaScript, it’s been beautiful and very streamlining.

The rest has been considering data-structuring and naming ids appropriately for business need, which is a much better use for my time than trying to implement hacks for IE4, IE5, IE6, etc.  (Yeah, I’m old school like that.  I learned how to HTML when IE4 was still a thing.)

I will maintain that I am not a programmer – I need this level of abstraction that HTML5, jQuery, and CSS3 provide.  But it’s been fun rolling up my sleeves and returning to an earlier incarnation of this website.

Next, the Christmas vacation:  In a pre-Thanksgiving call to my mother, she pointed out how we haven’t gathered together for a non-tragedy in a long while.  I agreed, telling her that I had vacation time and I thought I could probably travel down that way in February.  I realized that she had just set up her hand with that and she said she wanted Christmas with her boys.

Many conversations later and I’m going to Florida for Christmas.  She even bought the tickets.  It’s a great thing, really, but I haven’t been away from “home”, wherever that was, for more than three days over the past four years now, quite probably even longer than that.

And in that time, I’ve completely forgotten how to plan for a vacation.  I mean, the basics are still there – you need to get to the airport about an hour early to check in, you need to dress nicely and simply for security purposes, et cetera.

But I’d forgotten how to make sure all the other things get taken care of.  How to live the final week before vacation without dying (keep groceries to things that won’t spoil while away, have something that I can eat once I get back).  All that stuff.

I have two cats that have never been away from me for longer than three days before – I have to make sure they have enough food and water while I’m gone, not to mention the litter box needs taking care of.  I mean, when I went to Montreal, that was a short trip, and the cats were glued to me when I got back home.  I can’t imagine what they’ll be like this time.

I’ll have mail piling up unless I have someone checking it, or have a vacation forwarder put in place.  I’ve switched as much as I can to paperless, just because I hate getting paper just to throw it away, but there are still some things that need paper mailings.

I’ll have bills I’m used to putting off until last-minute come due, and where I’m going I’m not sure I’ll have steady Internet (which isn’t bad)…  I’ve gotten apps for most of my bills, and pre-paid as much as I can, and run my budget numbers through the end of the month just to satisfy that money-wise control freak in my brain.

All these things and more have been creeping into my brain, while developing the above-mentioned form, and I’ve been slowly taking care of them.  But I persistently feel like I’m forgetting something, so I’m double- and triple-checking things, with the occasional “Aw, crap, yeah – gotta take care of that, too…”

I’ve a really good friend who will check in on the cats while I’m away, but they’ve been anxious lately and I really don’t want to put them through this stress…  But Florida…!

While tooling around taking care of things, I have washed my bed sheets and pillowcases, just so I have a nice and comfy place to collapse into when I get back.

Yes, so I’ve been busy.  Not in a bad way, not at all.  Just using around 80% of the N8OS processing queue on things, and probably around 130% of RAM, hoping for a positive payout to all this work.

So, now that I’ve written this blog post, I s’pose I should get back to things.  They never do themselves.  I’d really like to get the cats into cleaning, but they just won’t scootch along the floor, into corners and dusty-areas like Roombas will.  Selfish little furries, I must find a way to make them sing for their supper…


Thanks for reading.