Subject
Forget Everything You Ever Knew about Date-Time Handling in PHP...
Finalists for the New Zealand FullCodePress team have been selected, and I'm one of them! Final selection is tomorrow. Good luck to everyone who has been nominated, especially the other two selected…
It's not a showdown between Javascript and Ruby, it's a race towards bioware. Language oriented programming is not a new idea, but it has taken a long time to become a significant influence on…
As I am now starting to discover, many of these ideas were originally considered by Alan Kay, and summarized at OOPSLA in 1997. If the true shape of object oriented programming is qualitatively…
John Rose talks about implementing support for tail call optimization in the JVM. I've been waiting for this one, as in my mind, it has long been one of the biggest holes in the leaky dike of…
There's a tide of opinion suggesting that PHP is threatened with extinction as standard hardware begins to favour widening multicore processors. This would be a fair argument if PHP was a general…
Not for the weak of heart, but the prospect of wrangling the call database with Django is a tantalizing hint of things to come...
I hate to agree with grouchy old Dijkstra, but unfortunately now it's impossible to deny: BASIC is what killed my ability to be a truly great programmer. Dijkstra was right, GOTO completely rots your…
In Hearing without listening, 37Signals screws up, then admits what they did wrong and how they fixed it. In the end, it's just a matter of several weeks downtime before the application is working…
Why is one person who cares about children learning to program, if Cut Holes In Shoes And Get A Mask is anything to go by. Many people would think this is completely insane, or merely reinventing…
Python 3.0a1 release hits the network, with significant backwards incompatible changes. The best way to describe this is a shedding of the snake's skin, sloughing off a whole bunch of weird ambiguities…
Since Ali posted 20 things I learned at FullCodePress, I thought I'd chime in with my own observations from the perspective of being programmer for the Code Blacks: Working side by side is…
Raganwald dissects the misguided metaphor from a software process perspective. I have come to believe that these kinds of problems are even more prevalent in the web development world than in…
Builder is a completely declarative library which makes it easy to generate XML from a cascade of Ruby method calls. But it's not completely smooth sending: working on an Atom feed, I ran into a…
It just wouldn't be fair to ask where are the women in open source and criticize open source usability without providing some kind of summary of how we can do something about it. Humanized…
PHP is flawed. Deeply, immensely so. I first discovered this over a year ago, when I made the naive assumption that PHP 5.1 had fixed a lot of the language level failings of its predecessor. Because…
MQL must be one of the most overused acronyms in todays technology field, including (but definitely not limited to) such specificities as search/analytics, automated trading, and molecular substructure…
When I first started playing with Erlang, I immediately noticed something, perhaps reflecting a more nuanced view of programming languages that I have slowly started to grasp over the past few months.…
Ruby programs can be written in unicode, meaning that you can label a real lambda. Once, when working on a school assignment to build a simple regular expression interpreter, I had a similar flash…
I fear that I'm beginning to sound like a stuck record by now, but I can't help attempting to push back against that particular form of inertia that has infected our discipline. First I saw this,…
"Agile" has balkanized, and the individual cults have - in some cases - become religions that are just as bad as the things they intended to replace. But at the outset, the interesting thing about…
Equality is a mathematical concept, not an object concept. It's contextual. So, what is the correct implementation of equals? Sometimes it's no implementation at all. On the Beautiful Code…
Learning how to forget the properties of programming languages themselves, and think about the context of what is actually written in these languages.
Been thinking a lot about granularity in programming languages, and the tension of common refactorings leading towards either larger or smaller volumes of code and complexity. I spotted this nice…
Frameworks are the shining stars of this current era of web development and there are many benefits for designers and programmers to focus technical solutions around a given framework as a platform…
For quick and dirty programs... Paul Graham has released an early version of Arc, his ongoing project to develop a Lisp dialect suiting a minimalist taste in programming style. Never one to shirk…
Unit testing can have productive side-effects that manifest in the emergent design of classes and API's. Testing objects in isolation from their interactions in the larger code-base pushes you to…
How can we close the perceptional gap that lies between two dimensional maps and the surrounding three dimensional reality? Enkin is a technology aimed at the Google Android platform that…
Y-Combinator has published a list of ideas they'd like to see new startups tackle. Aside from obvious criticisms (we're already well familar with Paul Graham's penchant for proselytizing certain forms…
In the last 30 years neuroscience has given us great insight into the workings of the human brain and as more information emerges, it becomes clear just how out of step with reality conventional attitudes…
I always enjoy reading interviews and discussions with Larry Wall - a brilliant language designer whose unconventional wisdom and humor makes his explanations of complex and chaotic issues seem…
This is an introductory guide to the theory and praxis of parsing and lexical analysis. All this material is a necessary basic foundation to the study of parsing.
Interesting research is emerging that explores new programming models for mesh connected mobile devices. The experimental language called AmbientTalk is a prototype based object oriented language…
Dog Bites Man Month. Or does it? The criticism is sharp, but I'm not sure how deep it cuts. Anecdotal evidence is no less valid than statistical reasoning if it is widely understood to be advice that…
Simpletest is quite possibly my all time favorite PHP library. The way it's put together greatly appeals to my sense of object oriented design symmetry and the high level API is absolutely fantastic…
The world wide web has led to a massive day-to-day proliferation of crap jokes that would have been unthinkable 30 years ago, and the programming culture is no exception. Interestingly enough though,…
Usually when I write spontaneously here, it's because a topic or idea has been percolating in my mind for a while, and I will stumble across a reference or blog post that provides the necessary…
People think that it is strange that someone like me who knows so much about programming languages chooses to program in PHP so frequently. They're probably right, and I appreciate where…
Software development is hard. A lot of people like the idea of couching this difficulty in a form of explanation by analogy. The most common comparisons are generally the most facile and glib, and…
Many people have wondered about the lack of support for nested URLs in a basic install of the SilverStripe CMS. There is a forthcoming module that will enable nested URLs as plugin functionality,…
If crap code is an unavoidable problem for the software industry, maybe the solution lies in trying to change the nature of the code, rather than trying to change the people who write the code.
After recently discussing the widely underestimated importance of visual programming, it’s great to see research like Visual Programming Environments For Kids.
Software industry zealots focus far too much effort on debating methodology for methodologies sake.
Donald Kunth – “I remain convinced that the patent policy most fair and most suitable for the world will regard mathematical ideas (such as algorithms) to be not subject to proprietary patent rights.”
A quote from Raganwald: “The correct response is not calling arbitrary features ‘magic’. It’s programming. That’s all.”
_why has gone. Left the intarwebs. And in the process, he tore down the house, and leveled the garden.
Results of a survey of over 3000 developers, regarding their approach to OO software design.
Why do we call programming languages “languages”? What is missing from the literary traditions of programming?
Watch the cascade from Ruby is Unix to Python is Unix to Perl is Unix.
I feel like my web skills have been swept out from underneath me. You go away for a few months, and come back, and everything has changed so much.
ditaa is a small command-line utility written in Java, that can convert diagrams drawn using ascii art into proper bitmap graphics.
Jon Udell’s literary appreciation of the Olson/Zoneinfo/tz database is flush with small details that will delight history geeks.
The Twitter API Wiki has one of the most practical explanations I’ve seen of some of the issues involving Unicode normalization.
Found this waiting in a Textmate buffer...
There’s still a lot of important dialogue about the standard features of modern programming languages that hasn’t happened yet.
Treating the entire visual interface of a program as data input to another program that modifies the original behavior.
It’s hard to explain the collision of forces and events that has occurred over the past several months.
A new skillset for interactive designers, who must now take direct evidence into account with every design variation that affects user flows.