Engineering
Software development, synthesis coding, and DevOps
42 articlesThe research lineage from recursive neural networks to human-AI collaborative development
Tracing the intellectual thread from Richard Socher's compositional representations through DecaNLP to the systems-level engineering challenges of human-AI soft
From learned representations to engineered context: what Richard Socher's research tells us about working with AI
Richard Socher's research arc — from GloVe to DecaNLP to 'managers of AI' — maps directly onto the principles behind synthesis coding. The connections are struc
RAG Architecture Lessons from Practice
Building a retrieval-augmented generation system revealed patterns the tutorials don't cover. Contractions break search. Not everything needs an LLM. Full docum
The Foundation-First Pattern
Why the most effective AI-assisted projects start with humans writing code by hand. The counterintuitive pattern that makes everything else work.
What is Synthesis Engineering?
Synthesis engineering is a professional discipline for human-AI collaboration on complex work. Not just better prompting — a systematic approach with princ...
What OpenAI's Sora Build Teaches Us About Synthesis Coding
Four engineers shipped a #1 Play Store app in 28 days using AI agents. Their approach validates the patterns I've been writing about — and adds new ones worth s
Building ownwords: A Synthesis Coding Case Study
What separates synthesis coding from vibe coding isn''t the tools — it''s the decisions. This technical case study walks through the architectural choices,...
Why Synthesis Coding Still Writes Code in the Age of LLMs
The answer is not "just let the model do it" — and code matters more, not less, as AI gets dramatically better Last spring, my son Fitz and I had an aftern...
Vibe Coding and Synthesis Coding: Two Complementary Approaches
Why the conversation isn''t about which approach is better — it''s about knowing when to use each This blog post is for software engineers, engineering lea...
Polyrepo Synthesis: Synthesis Coding Across Multiple Repositories with Claude Code in Visual Studio Code
I wrote this blog post for software engineers, architects, and technical leads. It is code-heavy and implementation-focused. This weekend I was working acr...
Seventeen years ago, I built a tool for the open Web. This weekend, I modernized it using Synthesis Coding with Claude Code AI
In 2008, I released a WordPress plugin called Blogroll Links. The plugin displayed lists of links on WordPress pages using a shortcode. But the idea behind...
Synthesis Coding with Claude Code: Technical Implementation and Workflows
A hands-on guide to practicing synthesis coding (a.k.a. synthesis engineering) with concrete examples, real workflows, and lessons from production systems ...
The Synthesis Engineering Framework: How Organizations Build Production Software with AI
From individual practice to organizational capability: a systematic approach to human-AI collaboration in professional software development This blog post ...
Synthesis Engineering: The Professional Practice Emerging in AI-Assisted Development
Why the most effective engineering organizations are developing systematic approaches that go beyond vibe coding — and why this practice needs a name This ...
The Future of Software: From API to AI as the Communication Interface
As we look ahead to the evolution of how people and machines communicate with software, it's clear that artificial intelligence (AI) will play a key role. ...
Prompt Engineering to Generate Code to Solve A Math Problem
This weekend, my 12-year-old son and I visited our friends for a family BBQ. During our time there, we engaged in a series of math puzzles, competing again...
MatheMagic Card Trick
Introduction MatheMagic Card Trick is a fun and simple number revealing magic trick using math. Use the page generate-cards.html to generate your cards to ...
How do you launch a suite of Mobile, Web, and Voice products from ideation to go live in 12 weeks?
Check out the blog post by Very, the product development partner I worked with in my previous job at Thrive Global to design, build and launch multiple Mob...
Product Maintenance vs. New Development on Web Sites, Mobile Apps and Other Digital Products
Maintenance of a digital business product (e.g. a Web site, mobile app, or software) refers to the work that includes modifications made after delivery to ...
Social Graphs API: WordPress Plugin: Blogroll Links
If you already know what the Social Graph API and XFN are, you can skip the background information and go directly to the Blogroll Links plugin for WordPre...
Software Products: Own vs. Rent & Create vs. Get (Incorrectly Called Build vs. Buy)
Understanding the issue Technology executives are often asked about their preferences on build vs. buy. This question would be better articulated as two se...
List of Open Source or Free Software for Home and Business Use
Here is a list of some open source or free desktop software that you can use for personal use at home or at your business. Using open source software can s...
Sometimes extra steps in workflows are good
When implementing a content management system or other product, customers often ask for workflows that require the least number of steps required to any gi...
Google Web Toolkit: Develop and Test in Java, Deploy as AJAX
I'm building a pull-down-menu navigation for the rajiv.com site using the Google Web Toolkit (GWT) and I'm impressed by this Google product. It allows you ...
Java Progammer? Use BeanShell
BeanShell is a fully Java compatible scripting language, capable of interpreting ordinary Java source files. You can also use it for working with Java inte...
Content Management: Content & Search Technologies
Search, when effectively integrated with content, creates a combination that is greater than the sum of the two separately. Let us consider an example. A p...
New Company, Effectuation
Earlier this year, I founded a product development & consulting company called Effectuation (www.effectuation.net) with some associates. We are involved in...
Cofax Goes Open Source
Knight Ridder releases Cofax as open-source software on SourceForge, making newspaper web publishing technology freely available.
Building Cofax: A Content Management System for Newspapers
How a team at Philadelphia Newspapers built Cofax, a CMS that reduced web publishing time from 8 hours to 45 minutes.
Converting Numbers to Words in Perl
A Perl module that converts numbers to English words, handling everything from simple digits to quadrillions, with plans for Indian English and other language s
Sending Mail from Java Programs
A Java class for sending email via SMTP, usable from Java programs and ASP pages on IIS for web application notifications.
Including Remote URLs in Web Pages
A Java program that includes content from remote URLs into web pages, enabling ad serving and dynamic content assembly from multiple servers.
Multiple Default Documents on IIS
An ASP script that enables multiple default document names on Microsoft IIS, solving a common problem when migrating sites from Unix to Windows.
Making Unix Web Servers Case-Insensitive
Two Perl scripts that make Unix web servers case-insensitive by building a URL database and redirecting mismatched requests automatically.
Sharing Code with the Perl Community
On registering as a CPAN author, sharing Perl code freely, and why building software in the open makes everyone better.
A Date and Time Package for Perl
An object-oriented Perl 5 package for date and time formatting with support for today, yesterday, tomorrow, and arbitrary date offsets.
A Tour Guide Applet for Web Sites
A Java applet that guides visitors through a web site by reading a configurable list of links from a text file.
A toHex Function for Java
A Java function to convert integers to hexadecimal strings, written when java.lang.Integer lacked toHexString().
Netscape Acknowledged My Directory Listing Script
Netscape published my Perl CGI for custom directory listings as Tech Note 20021, solving a gap in their server software.
Building an Ad System for a Newspaper Web Site
Two Perl scripts for serving and tracking online advertising at Philadelphia Newspapers, built before commercial ad servers existed.
Reading GIF Dimensions in Perl
A Perl function to read GIF image dimensions and generate correct HTML img tags automatically.
Splitting Files for Floppy Disks
A Perl script to split large files into floppy-disk-sized pieces for transport across unreliable connections.