Recently, I had to answer to the questions:
What insight have you had lately in the realm of software development that you are excited about applying?
The answer turned out to be a little longer which made it a good candidate to post on my blog. So, there it is:
Well, there are a lot of interesting ideas that I am passionate to apply or improve in the technology area. Most of them are a few years old and there are successful examples of applying them, but still the majority of IT industry doesn't embrace them either because these ideas require a lot of effort and discipline or because it is mostly different mindset and vision.
If I can summarize most of the ideas in one sentence, it would be – using the web as a platform coupled with lean and lightweight business model to give the ability to strategically position a company as an middleman or automated intermediary between the user and his or her online experience, between customers and producers, between data providers and data consumers.
That includes a high accent on remixable data sources and data transformation, allowing users to control their own data and at the same time use their collective intelligence to generate new content or improve on the quality of existing data. (representing data in different formats –html, xml, json .. and on different platforms – mobile, browsers, desktop, real time positioning…., gather comments, ratings, reviews, adding own content, products…)
Support lightweight programming models that allow for loosely coupled systems and enabling constant changes and enhancements. I believe that by using lightweight frameworks, simple architectural design and more dynamic type programming a technology team could enable a business model to be more flexible and efficient. (conventions over configurations, simple web services –REST, syndication of data, autonomous distributed systems with smart ends )
For this to happen, I would think that the technology part of a company should concentrate on the core competency and re-use data or infrastructure services of others for everything else (storage services, virtual serves, emails, cloud computing and so on.)
Further, I think that businesses would have hard time in today's very competitive global economy if they don't go far and beyond for their users. From a technology point a view, I am very fascinated to implement features like real time monitoring of user behavior to find out what is valuable for them and what could be improve. Implementing features that would allow to enable and cooperate with users and not to direct or control them – simple user interface, intuitive searches, intelligently customizing application based on users behavior and data consolidation, different data formats, widgets, web service interfaces, content syndication and so on.
Last but definitely not least, I am very passionate about software development practices and methodologies. Exciting ideas that I would like to try or improve on are – extremely frequent releases, different types of collaboration and intelligent gathering of various project information including natural processing language algorithms to improve communications and common understanding.
Well, what are you excited about in the realm of software development recently?