#387 From Gorillas to AWS CDK
first computer experience with an IBM 8086 and learning programming by modifying the QBasic Gorilla game, early programming journey from QBasic to Visual Basic and the discovery of event-driven programming, building a password security script for autoexec.bat as a childhood project, transition from Visual Basic to Java around 2005 starting with Java 1.4.2, working at a small bank in Stuttgart building a core banking system, experience with Eclipse RCP rich client platform and the overhead of plugin architecture in business software, migration from Swing to Eclipse RCP frontend with JBoss application server backend, building a custom Spring-based microservice framework called Dwallin (Icelandic for dwarf) before Spring Boot existed, using Apache CXF for REST and RPC over messaging with ActiveMQ, comparison of Java development trajectories between annotation-based and XML-heavy approaches, discussion of the infamous Java and XML O'Reilly book that popularized XML configuration, xdoclet as a precursor to Java annotations, contrasting approaches of JBoss-based thin WAR deployments versus Spring-based embedded server microservices, university experience learning Ada programming language and its strict compiler as excellent for learning programming, PL/SQL's Ada-based origins, brief experience with OSGi and strong criticism of its complexity and poor developer experience, comparison of OSGi with Java Platform Module System (JPMS), founding Taimos consulting company 10 years ago originally building BlackBerry enterprise software, pivoting to AWS migration consulting for regulated industries including banks and insurance companies, strong preference for serverless architecture with lambda Step Functions API Gateway and DynamoDB, criticism of running kubernetes on AWS versus using native services like ECS Fargate, the distinction between running "in the cloud" versus "on the cloud", detailed discussion of why GraalVM native images are unnecessary on AWS Lambda due to compliance overhead and memory allocation model, quarkus and SnapStart as solutions for Lambda cold start problems, Java's cost efficiency on Lambda due to fast execution times, involvement with AWS CDK since 2018-2019 including building L2 constructs for EC2 and AppSync, shift from code contributions to community organizing and prioritization work with the CDK team, launching CDK Terrain as successor to CDK for Terraform, nuanced discussion of open source economics when the project primarily benefits a paid cloud provider, using GitHub as a personal index and dashboard for reusable project templates, consulting perspective on contributing to open source for code reuse across multiple clients, teaser for a future deep-dive episode on CDK internals and promoting Java usage with CDK
Thorsten Hoeger on twitter: @hoegertn