Programming ^ 2
Software automates different aspects of our life bringing efficiency coupled with huge savings of time. But what about lives of software developers? There has always been a way to automate their work, but it hasn't been used widely. One of the reasons is that developers are quite efficient by themselves leaving business managers without a queston about boosting development efficency. Second reason is that automating work requires an understanding of action patterns, identification of repeated actions and creation a system automating those. While most of the business managers have no idea of how exactly programmer gets the job done and developers usually have no motivation of making their work more efficient, software programming still involves a buch of repeated actions that could be substituted with a program that writes software.
What developers basicly need is a program that writes code. Many programming languages like COBOL and Ruby have a natural ability to write code of its kind. Web Frameworks like Symfony have that ability as well. Using a config file to pass parameters into code generator one can generate a software program. Generated program and the way it functions is different depending on the config parameters passed. The job of a software programmer narrows down to writing code generators and passing parameters into them.
Programming of programming process results in enormous time savings when building large-scale software applications, as it affects all stages of software development: programming, testing and QA. Same code generators become re-used and tested from application to application, it is easy to change the way application functions through config files in a QA process.
Not only is it possible, it is very rewarding to automate software programming process: months of programming can be shrinked to weeks, time spent on testing can be almost eliminated and QA becomes a child's play.
Below is a screenshot of a sample config file for slideshow picture upload, rename and order interface using custom code generator and Symfony Framework

Leave a reply