Skip to content

Instantly share code, notes, and snippets.

View Steve973's full-sized avatar

Steve Storck Steve973

View GitHub Profile

After Thirty Years In Dev: Lessons From a Former Code Clown

I started my software development/engineering career in 1995 while I worked at an electronics company in Souderton, Pennsylvania. During the past thirty years, I have had a chance to reflect on my career, and there are several things that made huge impacts on my effectiveness in my profession. Make no mistake about it — my experience is not more profound or unique than yours or anyone else's. Let's see if we can all compare notes, and maybe we will find some common themes. Who knows? Maybe we can even give some recent grads and junior engineers a bit of a boost.

Are You Building Java APIs Incorrectly? (Hint: Probably. I was!)

Introduction

As software developers, we are all very familiar with the function and purpose of an application programming interface (API). We create them for different reasons, including project organization, or communication of operations to external actors, among other things. Ideally, we want to write really solid APIs with clean separation from the implementation to facilitate things like testing, clarity, expectation, and stability across versions. It sounds simple,

-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/path/to/dumps
-XX:+ExitOnOutOfMemoryError
-Xlog:gc*:file=/path/to/gc.log
-XX:NativeMemoryTracking=detail
@Steve973
Steve973 / Dockerfile
Created April 16, 2025 23:34
Devcontainer setup with minimal configuration
FROM myproj/base-java-gradle-dev:1.0.0-SNAPSHOT
# Copy certificate URLs file and script
COPY scripts/ca-cert-urls.properties scripts/configure-ca-cert.sh /tmp/
# Run certificate setup as root during build
RUN /bin/bash /tmp/configure-ca-cert.sh && \
rm -f /tmp/configure-ca-cert.sh /tmp/ca-cert-urls.properties && \
if getent passwd ubuntu > /dev/null; then userdel -r ubuntu; fi && \
if getent group ubuntu > /dev/null; then groupdel ubuntu; fi && \