What features need to be implemented from scratch:
- down for maintenance mode screen
- reverse proxy for load balancing, A/B, and green/blue deployment
- REST API layer for all of the business intel.
- Service for Static artifacts
- complete metrics gathering
- DEVOPS console including deploy button
- authentication APIs
- RBAC APIs
- database abstraction or API wrapper
- web sockets
- RPC/SOAP - probably not much different than REST but with a stronger type binding
- http/https -
- REST - use content-type and accept to specify the format of the params.
- business logic as state machine
- remove branching in the state machine to keep testing simple
- wrapper for clustered data like Redis or etcd
- configuration as code - no config files.
- feature flags in the code and not in config files
- store the code with the data so there is complete audit
- CI/CD by pulling the code from the database
- take the fossil-scm approach to code, wiki, blog all in one file.
- LDAP baked in
- plugin framework to extend the base language APIs.
- multiple source languages - I do not want to create a DSL but it would be nice to be able to support multiple programming languages. While I currently like Lua, GoLang, erlang and elixir for my programming. There is a place for C-like languages where there are opportunities to compile and link… this is a lot more pragmatic.
- Docker containers appear to be efficient
- Host security module (HSM) baked in
I cannot wait for my chance.
** It’s not your old hello world any more.