10 Ideas for Reinventing Software Development

I will not only make a living from advisory for concrete innovators, but give advice here.

Disruption from new market regimes, the coming contextual age and technologies, may force innovators of technical software to reinventing development. Ideas range from finding new abstractions over  further productivity boosting to closing client feed back loops.

  1. Progress motivates - Developers working out evolutionary development cycles will have more best-workdays.
  2. Technology revolutionizes workflows - Integrated model building and quick demonstration will help to explain complex concepts to non experts. A declarative programming environment, document centered interfaces and several deployment options will help to do the right correctly 
  3. A bank of innovation - Establish a lab to design, analyze and "fund" innovations and boost dynamism by requiring alternative methods, models and solutions.
  4. Get the tools required - Enhance your platform and workbench for hybrid, multi-language, system development of platform-agnostic, inherently parallel software solutions that go where its users go 
  5. A fast path from lab to market - Remove deployment obstacles and close the client feed back loop.
  6. Support rule breakers - Standardization is good, but often new methods and tools will empowering our developments more. Software development is more lab work than industrial work.
  7. Spotting errors in early stages - Needs automated precision analytics and control, ease of cross model testing and other analytics of operational risk.
  8. Development cities - Teams of developers who do everything from design-to-testing, deployment and support.
  9. Independent from usual roles - Why pretend that only sales shape client relations? Developers daily interact with actors and communicate via the underlying technology
  10. Inside-out knowledge - Developers shall not only provide product use training, but also seminars giving full explanation on theories, models and methods
This principles are part of the development and services compass of UnRisk and applied when uni software plus conducted projects, for complex technical systems, with other industrial sectors.

Our programming tools range from OpenCL for massive parallelism to Wolfram Language and Mathematica building our proprietary domains-pecific languages for high-level declarative programming (code in one line that would need two dozens of lines in, say, C++ or Java, ..)

As a consequence, we compete major players although we are a comparative small outfit.