Goodbye Flash

So, I finally uninstalled Flash Player on 31 December 2020 as it ceases to be supported by adobe.

Adobe Flash Player was removed from your system.

Consequently a number of the older articles on this blog, if they didn’t already, will cease to make sense. I started the blog back in 2006 when I had decided to freelance and focus my programming skills on flash.

I now have couple of archive boxes books and DVDs of redundant material.

The first time I encountered Flash was around 1996/1997. I was at the time developing CD-ROM applications using Macromedia Director. The web was starting to take off, although outside of corporate networks everybody’s access was via a dialup modem. Very slow. Browsers were pretty crude and inconsistent in behaviour for all but the most basic interactions.

We had a visit from someone at Macromedia that excited our manager at the time, but I didn’t see the potential in Flash. Yes, it used vectors. Yes, it had animation. But there was little or no interactive capability – no programmatic language – Director was so far ahead.

My career moved to project management, and Flash did make it’s way into our studio, primarily in the realm of designers – interactions remained extremely limited but Flash had two key valuable properties that I think gave it a solid foundation: It looked and behaved the same, no matter what browser or platform, and that being vector based, it was extremely bandwidth efficient compared to anything that could be built in Director (or Authorware)

Next step in my career was server side, and xhtml/javascript. Flash added a further string to its bow by enabling video streaming – mixed with vector animation and more sophisticated interactions – again maintaining consistent appearance across platforms and browsers while the browser wars raged.

As the dot com boom went bust, I went freelance, but having to decide where to focus. I spent time learning Java and Flash, and eventually Flash won my attention – I have always enjoyed working on ‘creative’ projects along with designer and other creative types.

I enjoyed programming ActionScript 2, but Flash felt somewhat buggy at the time. The ActionScript components were good in principle, but again, buggy – so much time spent developing workarounds against a tight deadline.

I really enjoyed programming ActionScript 3 – It was far more solid. capable and better structured, Flex provided a solid framework that did not suffer the problems of the earlier UI component framework.

Flash with Flex remained great at:
* Being consistent across platforms
* Providing a video playback platform
* Proving an animation platform and intuitive ways of tying interactions together with ActionScript
* Enabling designers and developers to work together on really interesting creative projects

In 2010, I was really disappointed by Steve Jobs thoughts on Flash, but more disapointed by Shantanu Narayen’s response. It didn’t feel like there was a technical initiative coming to solve the issues raised by mobile. On reflection, Steve Jobs was right. It is true that performance was poor on mobile devices – certainly on my HTC Desire. And using flash to attempt to emulate the new touch controls, even the scroll inertia was hugely wasteful of cpu cycles compared utilising controls already built into the mobile systems.

I quite liked AIR, and used it with Flex on a few projects. It worked well, although it exposed the perennial issue of the UI controls not necessarily behaving as a user would expect. Yes it continued to provide consistency across platforms, but when we move into an application space, compliance with the expectations of the host system becomes more paramount than ensuring the application looks pixel-for-pixel the same across platforms. Attempting to adapt (testing for OS to decide where to position things like dialog button defaults and window controls) became tedious. The end result – spend the extra effort, or release an inconsistent product.

Most of my discussion is from a programmatic / application point of view. For all it’s faults Flash Platform created a great community of designers and developers and a few who could wear both hats, working to build some wonderful projects while the browsers were somewhat chaotic.

Having seen the full life cycle of a product makes me feel old. From its humble beginnings, to massive dominance, to falling back as other technology caught up and surpassed. I still have a sealed copy of Flash Builder 4. I wonder what I’m going to do with that.

Here’s a search that will return my old flash related bloggings

As reported elsewhere

Posted by creacog, 0 comments

Speaker repair

I have an old NAD-320 amp and pair of JBL Control 1G speakers attached to the TV, but hadn’t used them in a while. Trying out Netflix and finding Hans Zimmer Live in Prague, the TV speakers were certainly inadequate. But what an awful crackling sound from the JBLs. They were about 20 years old, but hadn’t had too much use. Taking off the grill, and the reason was clear…

The foam, around the main cone had gone crispy, cracked and started falling apart. Even 20 years on it is still possible to buy JBL Control 1 speakers new, but I didn’t want to dump these if they could be repaired.

There are a number of repair videos on youtube (search for “jbl control 1 foam repair kit”) and I found a kit on eBay (though the seller doesn’t appear to be there at the time of writing) consisting of replacement foam baffles and glue.

(edit 9/9/2020: A decent repair video published this year)

Armed with these and a screwdriver, I set about it. Taking photos before disconnecting anything to make sure I could reconnect properly…

Then it is time to get rid of the old foam, held in place by glue in addition to being clamped to the speaker case. Firm but delicate screwdriver action required, especially where the foam is glued to the cone…

Since the foam had denatured it was quite difficult to clean away from the metal frame.

Kicking myself when a slip of my scraper slightly damaged the left part of the cone – though not enough to go through, and not damaging performance in any detectable way.

That done, glue applied around the metal frame and to the back of the cone, and the new flexible foam pressed into place and reassemble…

End result – looking like speakers again, and more importantly sounding crisp and clear.

Posted by creacog, 0 comments

cPanel and mail subject filtering

If you are using ‘User level filtering’ of email in cPanel (v11.28.83), applied to the Subject header of an email, you may encounter circumstances where sometimes the filter fails for no obvious reason. On investigation of the email headers, it turned out that a certain sender was folding email subject headers over multiple lines. If the phrase being searched for was split over two lines within the header, the filter would fail.

For example, with rule : Subject contains ‘testing 123’

1. this would work:
Subject: line 1 testing 123

2. this would work:
Subject: line 1
 line 2 testing 123

3. this would NOT work:
Subject: line 1 testing
 123 line 2

It turns out that this is because cPanel simply passes the filter information down to exim, and it is here that the behaviour manifests.

I have posted an entry to the feature requests forum of cPanel, for it to be configured to better tolerate multiline subject headers. If you are encountering this problem, it would be helpful if you would contribute to that thread.

In the meantime a workaround is to use the ‘matches regex’ filter, replacing spaces in your match-phrase with ‘\\\\s+’. For example the following rule works in each of the three samples above.

Rule: Subject matches regex testing\\\\s+123

Posted by creacog, 1 comment