Grady Booch: Industrial Strength Software of large and complex systems is beyond the intellect of a developer. An Application developer is able to build Industrial Strength Applications because he is applying a framework to master the complexity in order to meet the stated requirements

My IT career began in real time mission critical bespoke software and hardware development in the aerospace Industry. These types of companies are also required to follow best practices. The next company I joined used a simple framework Similar to the defence Industry adopting the use of Ada to get the best out of their developers.

keep it simple Software Solution Strategy for Success

Smiths Aerospace and defence, based in Basingstoke, hired me knowing I didn't have the specific programming skills they needed. bytel © based in Slough also hired me knowing I didn't have the specific skills they were using either. Both companies were following the same strategies for their bespoke software development.
Smiths Aerospace are still in business building bespoke software and hardware from scratch, following best practices. bytel ©, a single product software house, with a 250 table database, was the market leader until it was purchased by venture capitalists. The successfulness of the concepts and the smart working practices I was part of is one of my most valuable asset. I do not need any further commercial experience for improvement. I do not require any guidance on how to apply a framework to an OLTP use case.

Objective

Github
Code
Repo

Both of the above mentioned companies sent me on a training course during the first week of joining. The technologies they used were much simpler than the frameworks used for Web development. Web frameworks requires familiarity in mutiple programming languages [ css, html, javascript ] prior to getting started with the framework. I felt it better to take time out until I can reach the point of hit the ground running. Even with complex Web Applications, a good framework should supply me with everything I need to build commercial products otherwise it is not a good framework.

Easier and Quicker


Reactjs is all about composition, frontend made easy for maintainers. I have supplemented Reactjs in my skill set with remix in order to use reactjs as a fullstack framework so as to utilise features like SSR. GraphQL, data fetching layer, is also all about addressing network latency. There is a third layer in MVC which also requires optimisation, the need for optimisation will be dormant and will only come to light after the developers have left the project. Optimisation is of course important for end user experience.

OLTP

Model

database logo

View

Graphql

AI

OptaPlanner is a lightweight, embeddable planning engine. It enables everyday programmers to solve optimization problems efficiently. Constraints apply on plain domain objects and can call existing code. It is Object Oriented Programming (OOP) and Functional Programming (FP) friendly.There’s no need to input constraints as mathematical equations.

Under the hood, OptaPlanner combines sophisticated Artificial Intelligence optimization algorithms (such as Tabu Search, Simulated Annealing, Late Acceptance and other metaheuristics) with very efficient score calculation and other state-of-the-art constraint solving techniques for NP-complete or NP-hard problems.

Education - Computer Science HND [2 year]

Motivation when looking to define a career for myself was to look to the opposite of working on a conveyer belt in a factory. That to me would be a waste fo a life. Something that would be different each day, challenging and creative. Computer programming met these requirements. I enrolled in a Higher National diploma [HND] course in computing, a two years full time course at my local Technical college, Reading , Berkshire England was enough to get a foot in the door of software development.

The course taught four programming languages, RDMA ,SQL,report writing skills , project management. It was my third programming language C after Pascal & 68K Assembly when I had an epiphany, programming languages did pretty much the same thing but with different syntax.

Smiths Aerospace & Defence Division - Basingstoke UK, Junior Software [1 year]

The first week I was sent directly to a one week course to learn Ada, a 3GL programming language for real time mission safety critical systems. I guess there must be a shortage of Ada programmers. Smiths Aerospace Professional company which follow only the highest standards.

Before completing unit testing I was moved maintenance. A bug had been identified on an engine monitoring system. The system Architect had moved on. I was given the task of finding the bug. I was given printed pages of the Pascal code. Through a process of code walk through I identified the bug, communicated it to the hardware engineer, who in trun tested it on the testbed rig for verification.

First objective whether I was up to the job of making a living as a professional programmer was achieved.

bytel © - Slough UK Application Developer [2 year]

The first week was spent in training with bytel product users and support staff. The second week I sent on a commercial 4GL programming language course used for front-end development called Openroad. The backed was the Ingres database database used SQL.

bytel was a single product company used for customer care and billing to support the Telecom Industry. A two tier architecure.The database had 250 tables and the product was a market leader. Project lead in the software development lifecycle was a database expert, a top ten database expert in the world. Some of the Telecom companies who wanted their own product chose to buy the bytel product rather than build from scratch.

Each business service had a designated developer. The role of bug maintenance for the whole system was given to me when a new venture capitalist who took over bytel and decided to fire all the Application Developers because they were all contractors and such seen as an unnecessary expense.

The first Venture capitalist had invested in expensive staff infrastructure resulting in a market leader product. The second venture capitalist looked to save money, Outsource the migration of a large and complex software product, using developers without the necessary business knowledge. Personally I saw no Tehnical reason for the migration.

It was at bytel that I first came across my first OLAP experience, datawarehousing

Second objective to see first hand learn how successful Commercial Industrial Strength large and complex Applications are built. This was espeically important to me ever since I read in a HND course text book by Grady Booch Industrial Strength Software is beyond the intellect of a developer.

Logsys Solutions - Wokingham UK Software Engineer [2 year]

Logsys hired me because of Oracle Forms skills funded by the previous employer. The first project I was given was migration from earlier version forms to a current version of forms. Following the completion of that project I was floating developer helping out with other projects at various stages of the software lifecycle. This exposure boosted my confidence knowing I could tackle any kind of technology.

Logsys Solution won a contract converting a paper based system to digital. The project lead was a visual basic with ten years experience. Before I could say data analysis and design first he was busy developing screens and tasked me to test third party APIs for integration into Visual Basic.

I advised the Visual Basic tech Lead I have been looking around and we need to look at server side programming that is the future. The fear of having to learn a new skill led him to make a beeline to the door, found an even better paying job using the one skill he knew, probably doing software maintenance.

This is when I had an epiphany, I also need to find a framework, A framework is that both is current, intelligent, simple and flexible .

I got my first glimpse into dynamic web application at Logsys Solutions from a week long training course into Java servlets

I was then asked to take over the project. To be successfull I would have to restructure the company.


Only one of the above three companies is still in business.There is no substitue for best practices in software development.

MVC Architectures

Two tier

Too simple!


Monolith

Level 0 Professional Java Server Programming by WROX press published in 1999. a very helpful book.

Microservices

Microservices is the current approach to assist Application developers overcome the complexity of the stated requirements

bytel was using designated developers for the stated requirements twenty years before the inception of microservices. The use of designated developers was one of the keys to their industry leader success. It was not the only factor, but it was one of factor.

Essential Reference material

Industrial Strength Application prototyped with Microprofile
Analysis and Design of Applications, Always relevant
Microservices Concepts prototyped with spring.io.

Focus

Source Grady Booch

" The United States Department of defence (DOD) is perhaps the largest user of computers in the world. By the mid-1970s, software development for its systems had reached crisis proportions: projects were often late, over budget and they often failed to meet their stated requirements. It was evident that the problems would only worsen as software development costs continued to rise exponentially. To help resolve these problems which were further compounded by the proliferation of hundreds of different languages. The DOD sponsored the development of a single, common high order programming language. The winning design was originally called the Green Language (so called because of its team colour code during the competition), later renamed Ada.

Application Developer's Production Rate

How much can a developer's skills be worth if the developer is an application developer using one of the above mentioned application generators ?

Let's take this Shark Tank App as an example. The App is called BricksAndAgent. It is a property maintenance application. The Billionaire's son invested $750,000 in Software development cost. He wants now $250,000 for 10% equity from the sharks, which he gets, thereby making the app a $1 Million dollar app.

With a database design in hand, I would estimate it would take an application developer 3 months (add 20% contingency) to churn out a duplicate application with some enhancements thrown in. ssssh...
project duration 5 months; unemployed looking for another GIG after that.