Alas, the popularity of C has led to a number of programming languages’ taking significant cues from its design, and parts of its design are… slightly questionable. I’ve gone through some common features that probably should’ve stayed in C and my justification for saying so. The features are listed in rough order from (I hope)Continue reading “Let’s Stop Copying C”
Category Archives: Programming
PHP 1000
I’ve been working in PHP this year and it’s very refreshing. It did take me 4 tries to expunge all the .net baggage I’ve accumulated over the past 10+ years of “enterprise” software development. I’ve got my app down to about 1000 lines of code, plus another 1000 or so lines of utility functions. WrittenContinue reading “PHP 1000”
Cloud Dev
The future of developing-while-mobile is software like CodeMirror running on thin hardware and OS like the Google Chromebook, not running a thick OS like Ubuntu on such a machine. The cloud is not the target platform, the cloud is the platform, period. Written 2013-03-04.
Loving Logs
I’ve been thinking about loving a log-oriented architecture. I’m envisioning something like CQRS. But instead of separating commands and queries, I’m thinking of separating logs and the business data that’s produced from them. I think of it like this: The user interface appends to a log. Business logic handlers process the log and produce businessContinue reading “Loving Logs”
Step One: Normalize
My first step in a project dealing with data is to get the data out of whatever format or repo it’s in currently and into a reasonably normalized relational database. Written 2015-06-04.
JavaScript is Assembly
JavaScript is the assembly language of the web. This means some of our brightest minds are stuck navel-gazing. My work doesn’t get done when I implement higher level concepts in lower level code. I need to work at a higher level without having to think about the lower levels. http://raganwald.com/2015/06/04/classes-are-expressions.html Written 2015-06-05.
Keep It Simple
I’ve never had to scale anything. As a single full-stack developer I can only build something as large as I can manage myself. That means no requirements that put me in danger of needing to scale. If a single web server and database can’t handle the project, it’s likely too large for a single personContinue reading “Keep It Simple”
Every Programmer Should…
This style of Every Programmer Should Understand This blog post has been cropping up a lot lately. I disagree with this particular one. Let me try my own hand. Breaking problems down is the single most important skill of a programmer. I have in mind four different angles of “breaking down”. First, breaking problems downContinue reading “Every Programmer Should…”
A Tale of Two Use Cases
I’d like to see HTML deprecated and replaced by two then unrelated specs: one for documents, one for applications. I’ll spend some time thinking about the document spec here. The application spec will have to wait for another day. A purely declarative model, with no dynamic content considered. A purely semantic model, with nowhere appearingContinue reading “A Tale of Two Use Cases”
Filesystem Routes
https://www.strathweb.com/2015/01/asp-net-mvc-6-attribute-routing-controller-action-tokens/ Back in the day, folders and file names were your routes. It was a simpler time. Nowadays we of course have to explain to the framework how to do it, often in too-explicit detail. It seems a yearning for the old ways is creeping back into mainstream modern web development. Take this “routing tokens”Continue reading “Filesystem Routes”