Richard's Blog

Articles originally written for SwiftBend's blog

Feb 25, 2024 2:38 p.m.

I put together a page with a list of the articles I wrote originally for SwiftBend's Blog on web development and Linux adminstration tasks.

Production Readiness Reviews

Feb 17, 2024 9:39 p.m.

I put together a guide on production readiness review (PRR) and operational readiness review (ORR) processes.

Abstract

Software development organizations often have processes to ensure software services are ready for production, including operational readiness reviews (ORRs) and production readiness reviews (PRRs). These reviews help mitigate risks and ensure efficient service to users. They are useful for web applications, web services providing APIs, data pipelines, machine learning systems, and mobile applications relying on external services. They create written artifacts valuable for understanding service architecture and functionality among authors, reviewers, and other relevant parties. They provide insight when determining the best trade-offs for risks, features, dates, and staffing. They enable gathering timely feedback from subject-matter experts that may cause production issues, and can save organizations from major outages by taking a structured, proactive approach which also promotes accountability for operational excellence. This article proposes topics these reviews should cover with related information on best practices.

How to auto-deploy a static site from GitLab to Netlify

Nov 19, 2023 11:32 a.m.

The GitLab repo, make_netlify_gitlab_site, has the documentation and code for an example site at cicd-example-site.netlify.app.   -  

Decision Making

Oct 12, 2023 8:07 p.m.

Decision Making   -   This is an article about making better decisions. It covers the three components of every decision, different types of decisions, decision fatigue, the irreversibility of some decisions, processes for structuring decisions, and types of cognitive bias that affect judgment. The article concludes with the key takeaways for improving your decision making.

FlappyMech

Sep 8, 2023 7:02 p.m.

I spent a couple evenings a week for most of this past summer teaching my children as much C programming as I could get them to pay attention to and as a final project I helped them create a small arcade game which you can download the Mac or Windows build for from itch.io to check it out.

The only dependencies we used were SDL2 and libpng for loading sprite images. https://ranton.itch.io/flappymech

Flappy Mech Page

WebAssembly and SDL graphics example

Feb 3, 2023, 5:56 p.m.

I have been playing around with WebAssembly a bit. I set an example up that draws balls bouncing around the canvas using SDL. The code is at https://github.com/ranton256/wasm_bounce and you can see it in action on this page.

Bouncing Balls screenshot

Tech Job Searching and Interviewing Resources

Jan 19, 2023, 9:06 p.m.

Given the large number of recent technology industry layoffs and general economic conditions I put together an article with advice and resources for interview preparation and job search to try and be of some utility.

Some OpenGL Projects

Jan 7, 2023, 2:50 p.m.

GL rendering demo screenshot I have been working on some OpenGL projects lately. One is a setup tutorial for Macs for Xcode using glfw and glew. The setup is always a bit fiddly to me and has changed since the last time I went through it, so I created a separate GitHub repo for just the setup part and a small spinning triangle. It's available at https://github.com/ranton256/mac_opengl_setup_example

The second project is more interesting. I just wanted to get a relatively decent rendering setup going with some actual mesh models. I reused the SMF reading code from some grad school projects to load a few more interesting objects, and also coded in mesh generation for cubes, spheres, and pyramids. It uses Blinn-Phong shading and texture mapping. Several of the textures are generated procedurally using Perlin noise or a checkers pattern and several are loaded from PNG files. The libpng loading code is self-contained and probably useful to others.

When I have some time to return to this I would like to add shadows and environment mapping of some kind to make it more complete. You can check out the code and screenshot at https://github.com/ranton256/opengl_rendering_demo

Effective Developer Teams

Dec 26, 2022, 2:35 p.m.

During the holidays I wrote up some of my experiences and thoughts on how to run effective developer teams, mostly focused on testing, CI/CD, and using reviews and transparency to promote a culture of learning. It's available on LinkedIn at Strategy for Effective and Efficient Developer Teams

Algorithms and Fractals

Dec 16, 2022, 7:35 a.m.

snowflake

In order to show how fun (and visual) algorithms can be, I pulled together some visual examples and code for some of my favorite fractals

Timmy, Cave Explorer

Dec 7, 2022, 5:11 p.m.

bat

I finally got around to sharing the game I created with my kids a few years ago. It's a simple space invaders style game written in Python with Pygame Zero to help them learn about coding. We also used PyInstaller to create a distributable version. The binaries are in itch.io at https://ranton.itch.io/timmy for Mac and PC, and the source code is on GitHub at https://github.com/ranton256/timmy. I also put the lessons I wrote for them on programming, Linux, and Python up in a separate GitHub repo, https://github.com/ranton256/python_lessons. Hopefully these are useful to other beginners.

Python Lessons TOC

Influencing Others as a Technical Leader

Oct 23, 2022, 8:20 p.m.

This post discusses some approaches for influencing others to get alignment on plans and designs in technical organizations. http://www.ranton.org/g/influencing_as_tech_leader

Time Management Tips

Oct 14, 2022, 6 p.m.

Today I finally got around to finishing an article I wrote around time management since I had been asked for tips on this and how I manage my calendar at work. You can view it at http://www.ranton.org/g/time-management-tips.

Ray Tracing Fun

Oct 14, 2022, 11 a.m.

I recently took a course, CS 636, at Drexel on advanced rendering techniques. The project work was focused on ray tracing which was quite fun. You can see my final results and links to more information at Ray Tracing page.

Epictetus and the Enchiridion

Jun 5, 2022, 11 a.m.

I started a site recently to play around with Ghost CMS a bit, and for something of interest content wise I decided to make it about philosophy and inspirational quotes. This morning I wrote a short article around Epictetus, my favorite Stoic philosopher. I hope others will find it helpful. Stoicism has brought me some measure of peace and calm over the past few years.

What are SLOs and Why They Are Useful

Apr 22, 2022, 1:00 p.m.

I have found myself in a lot of conversations lately talking about SLOs and related things so I decided to put down my thoughts on why bother with them and why they are useful.

Favorite Leadership Books

September 10, 2021, 5:30 p.m.

I wrote an article about some of my favorite books on leadership.

Site rewrite into static Flask and PureCSS framework.

July 3, 2020, 3:14 p.m.

Revamped my site to use new style, and serve as static site generated with Flask instead of Django.

Lua programming resources

June 3, 2016, 1:54 p.m.

I am fond of the programming language Lua. I have put together some useful resources for aspiring Lua programmers up at luasprite.com which is the site for a book I am working on for beginning programmers using Lua plus some support C graphics code using SDL.

Uploaded the source for Meme

Sept. 17, 2011, 3:04 p.m.

Back in 2009 I wrote myself a nice little interpreted language as a learning exercise named Meme which I finally got around to putting up on the site.

Meme

Ranton.org v2

Sept. 17, 2011, 1:07 a.m.

New ranton.org

I finally got around to updating my site, and it's now powered by Python and Django instead of PHP which makes me much happier.