RezwanAhmed & His Team || Software Engineer



Automating Software systems reminds me of teaching a kid to ride a bicycle. A hands – on phase, in which you directly control the process, segues into a hands – off phase as the kid, having internalized the skill, asserts control. During that segue, however, there is a complex negotiation. Control is traded back and forth in varying degrees, governed by a sensitive two-way feedback mechanism.

Web software is easy to automate because there’s often a one – to – one correspondence between a hands – on action — “download transactions for these dates” — and its hands – off equivalent: the scriptable URL that expresses that action. This, for me, is the supreme benefit of the Web’s REST (Representational State Transfer) model, and the reason why I consider myself to have been a user of Web services since well before the advent of SOAP. 

On the other hand, GUI Software, doesn’t naturally display this one – to – one correspondence between actions and statements that describe actions. Yet, it’s still achievable or realizable. Using the macro – recording features of Microsoft Office I can, for example, convert a hands – on action — “build up the lines for each data series in the chart” — into a hands-off equivalent: the VB code that expresses that action. 

Either way, what’s missing is the sensitive feedback. To automate a task I turn on the macro recorder, self – consciously perform the task, analyze it, fiddle around with the script and then package it for reuse. So long as the context remains the same, the script will continue to work. Of course, the context never does remain the same, and I’ll end up adjusting the data sources read by my account exporter and tweaking the charts created by my log visualizer. 

It only takes a light touch to get the kid on the bicycle to sense and react to my cues, but I have to clobber my software to make it pay attention. Getting applications and services to share a common message bus should help. Easier said than done.


Suggestion ::

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.