In a recent post I described my first foray into…well now, what am I supposed to call them? CSS frameworks? No, that doesn’t work, because Blueprint and YUI and 960 and others are often described as such. CSS meta-frameworks? That appeals to me, but it’s rather obscure. CSS compilers? Yes, perhaps.
But wait. There are CSS compilers, and then there are the libraries and frameworks and plugins that are built around them. Well, I guess that’s where the term “meta-framework” comes in.
One such meta-framework is Compass, which is built around the core language and compiler Sass. I mentioned Compass briefly in my other post. At the time, I had dismissed it as being more than I required, or more than I … read on »
Archive for the ‘web development’ category…
E-commerce for Small Business in The UK: A Starting Point For Web Developers
NOTE: see the comments for updates about how this went in the end.
I think I’ve unearthed a conspiracy. In the wonderful world of the world-wide web (that’s WWWWW for short), with so much information available, and so many companies selling online, surely there must be a collection of standard procedures for implementing an online shop, and reliable sources of information covering them? Apparently not. How else to explain this except an evil conspiracy? In particular, an evil conspiracy against web designers and developers.
This post is drawn from an e-mail that I sent to a tech savvy client, a small business owner. The email summarized their options for e-commerce, in the specific context of the UK, and it was the result … read on »
CSS Abstracted
Half way through the development of my last site I decided to use PHP files for CSS. I had a few stylesheets, and I found I was constantly going from one to the other to copy and paste hex colour codes. And then later, if I wanted to change a colour, I’d have to change it in all those different places. That really is no way to work.
The answer to this, of course, is variables (or constants), so that you can define your colours in one place. Trouble is, CSS don’t got none. In fact, CSS is lacking in several important ways. What it boils down to is that we struggle to get around the fact that CSS doesn’t work … read on »
Mashing, Hacking and Bodging: The Django Adventure Begins
These have been on my to-do list for a while:
1. Write some site or application in Django
2. Begin doing test-first programming
3. Begin using Subversion
4. Learn Python
Notice the order of these items. My sensible self says I should do it the other way around. “You’re not hacking PHP now, you know. This is serious stuff. A strategic and organized approach will benefit you and others.”
I find it disturbingly easy to reject these sensible admonishments. Who wants to be sensible? So I’m taking the items in the order presented above, and I’m currently at step 1, tentatively building a real-world side-project in Django, which may come to something. In fact, I’m fairly sure we’ll use it just amongst ourselves, at least (here … read on »
Wordpress Woes and Upcoming Redesign
Update (March 15th): Since writing this the redesign and hosting move have both happened, and things seem to be running quite smoothly. And this time I installed Akismet rather than WP Spam Free to deal with the spam.
After my last post, in which I briefly sang the praises of Wordpress, I became increasingly troubled by the horribly slow page load times of this blog, so I spent an hour or two last night trying to speed things up. It’s a while since I installed WP Super Cache, and all this time I’ve been thinking that my troubles were over. I even tried pretending that the occasions when it took 10 seconds to load a page were just freak occurrences, only … read on »
A Nice and Simple Photo Gallery Solution for MODx
My third MODx site is about to launch. It’s relatively simple (no forms!) so I had the chance to really concentrate on refining my architecture, and the work I’ve done will stand me in good stead for a while (unless I give in to the enticements of SilverStripe or ExpressionEngine, or just ditch the PHP altogether and finally get up-and-running with Django).
“Refining his architecture? What does he mean?” For me, learning to use MODx well has been about working out how to combine templates, template variables, chunks and snippets in a logical and efficient structure. A good application – a small one, at least – should have a shape that you can envision (if you’re the kind of person who … read on »
The Magical MODx ManagerManager Plugin
My first MODx-powered website went live today (Pinnacle Telecom Group plc), and my intention now is to share some of my experiences. From a development point of view MODx is so flexible that there are several ways of doing most things, so if like me you constantly fret about your architecture and constantly refactor your code for re-usability, you might be confused about just what is the best way of doing things, especially if you’re just starting out. So in this and forthcoming posts I’ll be discussing some of my development techniques.
This post is mainly an introduction to the ManagerManager plugin written by Nick Crossland. In my opinion it is absolutely indispensable, unless you’ve come up with your own way … read on »
FoxyCart: Replacing A Cart Item
function add_pre_process() {
//Find the id of the existing registration in the cart, if it does exist
$.each(fc_json.products, function(key, product) {
if(product.name=="Registration") {
// Do the remove request, with parameter quantity=0
$.ajax({
async: false,
type: "GET",
url: "https://mydomain.foxycart.com/cart?output=json&cart=update&id="+product.id+"&quantity=0&callback=?" + fc_AddSession(),
dataType: ‘json’
});
}
});
// Add the new one
add_item();
}
function add_item() {
//Get the form data
var submitted_data = $("#signup").serialize();
//Do the add request
$.ajax({
type: "GET",
url: "https://mydomain.foxycart.com/cart?"+submitted_data+"&callback=?" + fc_AddSession(),
dataType: ‘json’
});
}
This javascript/jQuery code gets the contents of your cart (which is in the variable fc_json, made available by foxycart_includes.js), removes any item whose … read on »
Web Development Frameworks: Developing For vs. Developing With
I’ve been hunting for a web development framework for a few months. Back in the summer I was immersed in CSS and javascript, just sticking with my tried and tested server-side techniques. Using the TinyButStrong (TBS) template class I could put together a highly organized dynamic website pretty quickly. In retrospect it seems that I’d found my own path towards an MVC-like pattern: nothing but HTML and logic-less TBS tags in the templates; PHP pages acting like controllers, for form processing and manipulating data; and a class for each table in the database (more or less). Very neat. Framework junkies amongst you could tell me exactly why this isn’t really MVC, but I don’t care.
Anyway, my first intention was to … read on »
Web Development and Chopping Garlic
For this post it was a toss-up between:
1. My observations on Freud’s Psychopathology of Everyday Life (boiling down to my realization that I’m a tangle of complexes, but also that I’m actually doing alright and won’t be running to an analyst any time soon)
2. A vague and geeky ramble over the broken, scarred and unstable terrain of web development.
Since moving this blog over to my website, I’m conscious I may be losing those who enjoyed such posts as Sweaty Rectangle and My 25-year-old Earworm, but the geeky ramble won out this time. Bear with me though: I am large, I contain multitudes.
Though I’ve been doing web development off and on for ten years, I’ve never been as enthusiastic about it … read on »
©2010 Alistair Robinson