This Week in Programming: Seemingly Simple

This week’s story is part confession, part mea culpa, and part discussion of whether or not you really need to use the newest technology just to avoid using something old and “outdated.” As I mentioned ever so briefly a few weeks back, I’m working on building a set of image maps for a website that I have been maintaining for the last 20 years. I know, I know — image maps? I might as well be using TABLES, amirite?
Let’s just say, at this point, I may have considered those too.
What is it about trying to do something seemingly simple that can lead you down a path so dismally complex and convoluted?
Now, I’m about to out myself as to just how terrible, uninquisitive, and impatient a “programmer” I may be at times, because with every Reddit, StackOverflow, and other answers I seemingly find on the web to my query of “how can I possibly avoid image maps,” my eyes begin to dart anywhere other than the screen, I open up new tabs for Facebook, the weather, what have you, and generally do anything to avoid whatever potential solution is offered. They all seem like way too much effort in comparison to the tried and true method.
I don’t want to download some library, I don’t want to spend time learning to use JavaScript and JQuery and SVGs, and I don’t want to spend days digging through documents for this mostly one-off task.
Pretty claver pic.twitter.com/YfkDoephHP
— nixCraft (@nixcraft) August 15, 2018
So here I find myself, with a seemingly simple assignment — take these exploded diagrams and have each part and number hyperlinked to their corresponding part on the site — and wondering why it has to be so darned complicated?
I even went so far as to install trial versions of Adobe Dreamweaver and Illustrator (as if those were ever easy) to see if they might have some simple method for creating SVGs or image maps, but I just found myself in a never-ending maze of help docs again, that ultimately got me nowhere fast. Alas, it feels like these tools are just obtuse as they were when I last used them decades ago. So, instead, I find myself avoiding whatever modern solution you might be face-palming yourself over and using some free, web-based image map creator to create the base HTML and moving on from there.
And before, dear reader, you fully condemn me for using this archaic technology, I ask — is it all that bad? Every tutorial I see, every article I read, offers yet another solution that just doesn’t make sense for the circumstance. (I should also mention that we committed ourselves to Shopify, so past are the days of an open source shopping cart on our own, controllable server… so there’s that.) Is that excuse enough? Also, I do present to the court here today that I have found but a little JavaScript snippet that apparently resizes and recalculates my image maps to make them “responsive,” though I do doubt that anyone on a smartphone of any sort would find them so “smart” in this case.
Oh, and as many are quick to point out, image maps remain in the HTML5 specification, so… all good, right?
So, I guess that’s where I leave us off this week. Sometimes, just sometimes, I think that the archaic method — the table or the image map — is just a better, more appropriate solution to a problem than whatever new-fangled solution being bandied about. If you don’t mind, I’ll be getting back to creating my image maps… after some news from this week in programming.
I just figured out how to remove the stigma of remote workers. I now describe myself as a Cloud Native Employee.
— Darrel Miller (@darrel_miller) August 14, 2018
This Week in Programming
- Twitter Continues its API Carnage: Well, let’s just put this one in the column of “who didn’t see this coming since like, oh, a decade ago?” That’s right, Twitter has continued to show its true colors this week by (again) closing down a bunch of APIs that were essential to the apps that made up part of its ecosystem for pretty much the same reasons it gave nearly a decade ago when it did the same exact thing. I offer up Sarah Perez’s spot-on narrative and analysis of how Twitter has time and again “decided to give up on some of its oldest and most avid fans – the power users and the developer community that met their needs – in hopes of shifting everyone over to its own first-party clients instead.” Ahh, “platform risk” rears its ugly head, yet again.
We’re gonna party like it’s 2009. pic.twitter.com/tbeh0JwCiO
— Jared Smith (@jaredwsmith) August 15, 2018
- The 2018 State of Rust Survey Opens: Moving quickly on, Rust has announced the launch of the 2018 State of Rust survey this week, in the hopeful example of a project trying to take into account the hopes and concerns of all its users. We’ve often covered the musings of Rust core member Aaron Turon, which detail how that community is dealing with the trials and tribulations of working together. So for those of you with input, here it is — the 2018 State of Rust Survey, which will be up until September 8th and available in 14 languages. Last year’s results are also available for your perusal.
- Bings Tackles Time Zones: You may not have heard, but dealing with time zones is… tricky. Well, Microsoft has announced that the Bing Maps Time Zone API is now generally available and ProgrammableWeb offers a brief synopsis. Basically, “the API is a set of REST APIs designed to cover a variety of scenarios developers often deal with when it comes to time zones” and helps to “find a time zone, convert to local time, and list time zones.”
- Amazon’s Open Source Alexa Auto SDK: Having traveled thousands of miles around the country in the past year in an automobile, I had to agree — being able to talk to your phone is invaluable. So, I hope you go forth and build useful tools with Amazon’s newly released open source Alexa Auto SDK, which ProgrammableWeb again profiles. The SDK lets automakers integrate its Alexa service into their vehicles and “provides a runtime engine for communicating with the Alexa service, as well as interfaces for controlling audio input, media playback and phone control,” allowing users to “perform a variety of tasks, such as play music, initiate phone calls and manage climate control systems.” Check it out on GitHub alongside a sample Android application that shows how the SDK can be used.
One shouldn't open source when one is in a bad mood.
— James M Snell (@jasnell) August 13, 2018
- The Rise of Julia: It’s August, and RedMonk just released its June Programming Language Rankings, which saw little movement among the top 10 languages, but big moves among others. Although ADTMag writes that Swift has fallen from the Top 10, another move that is making headlines — and is paralleled in the most recent TIOBE Index, is the more rapid rise of Julia, the language that just released version 1.0 last week after nearly a decade in development. ZDNet is asking if Julia might be a possible Python rival, noting that it’s winning over developers. JAXenter, meanwhile, also focuses on Julia and points to the team’s recent Reddit AMA for a place to gain more insight.
- Furby’s ASM Source Code: That’s right, what better way to end the day with a .PDF of the original Furby source code. I mean, there’s nothing like a .PDF of a printout of an ASM source code for a 90s animatronic fur creature!
On your first day at the new job, squash every commit from the repo into a single commit with message "Legacy code" and force-push to master.
— David Winterbottom (@codeinthehole) August 15, 2018
Microsoft is a sponsor of The New Stack.