I posted earlier about an article that James Nicol had up on this blog. The long awaited (well, long awaited for 6 days) article is now up, Real world apps with CodeIgniter: part II. Clever title!
He delves deeper into the black art of Code Ingiter, and discussing integrating with third party systems, validation, and my favourite understatement of the week.
Before we even went live the clients came back asking for more features...
<sarcasm>What!?! That hardly ever happens!</sarcasm>
At any rate, its a great read, and I hope James keeps writing!
There''s a new version of BambooInvoice up and live at http://www.bambooinvoice.org. Its the humble 0.75.
I think its a big step forward in user friendliness. Since I originally released Bamboo as a proof of concept code for Code Igniter, it has been gaining a lot of popularity even amoung non-coders. For this I'm incredibly impressed, and eternally grateful. Its so gratifying to know that other people find your work useful. But due to its humble beginnings, Bamboo suffered from a few "bugs" mostly due to perception differences between how it "should" work, and how it did work. So this release is a combination of bug fixes, user interface enhancements, and installation improvements.

Inspired by Matthew Inman's "How to Make Square Corners with CSS", I hereby set out on a journey to reveal the one true technique to create coloured, non-gradient backgrounds for divs, paragraphs and other XHTML elements. After literally seconds of painful research, I'll show you how to do this technique yourself. Here's a sample of what you can expect to see.

Code Igniter programmer, and good friend, James Nicol has written up a wonderful summary of his experience using Code Igniter in a production environment that he's called "Real world apps with CodeIgniter: part 1". His company developed a scheduling and logisitics management application for one of the candidates for the next US federal election (he isn't saying whom yet). His solution included building in table relationships, dynamic PDF generation, AJAX and javascript effects and CI used in a real-world app.
Pssst' wanna know a secret? Let me let you in on how tech support works at ExpressionEngine.
Most of you reading this from the Code Igniter community are probably familiar with John Fuller and my posting patterns on those forums (where let me remind myself - we are volunteers). If you aren't - well, we're pretty prolific. Now, imagine John and I, joined by 2 other support staff who are flipping unbelievable in their own right - Robin and Lisa. Now imagine that we're all paid. We're paid for the express job of sitting on the forums, waiting for questions and then answering them and improving the ExpressionEngine resources and community. Getting good?
Now imagine we're also joined by 2 active developers (Paul Burdick and Derek Jones), then by the vice-president Leslie Camacho (who is also highly technical), and then the Grand Poo-Ba and original author, Rick Ellis. Now imagine that a hosting company with their own team of support techs also has an active interest in participating in support. You picturing it?
Now imagine all that, and a community of people, who are passionate and engaged and active.
And THAT my friends, is how ExpressionEngine support works, and it is a scary thing to behold!
For a project I'm currently working on, subscribed users get up to the minute most current information (as outlined by a date field in MySQL). Unsubscribed users get the information still, only it is a day behind.
Due to the way the information is going into the system, there could be multiple entries for one date, and then no entries for a few days, then new, etc. Basically, the information cannot be predicted by the application. Retrieving the most recent date is trivially easy with a MAX command, but there is no "almostMAX" command, so I found myself staring at the screen wondering what the most efficient way to approach this was. Here's my solution:
SELECT * FROM table GROUP BY dateIssued ORDER BY dateIssued DESC LIMIT 1,1
Fortunately for me, LIMIT accepts offsets, and I can specific to grab only the second entry. If you can think of a more elegant way to do this (or heck, if you just want to comment), please leave a note below.
In the last ten days I've gotten three separate emails from people about something that, I have to admit, really surprised me. They were concerned about my use of the words "colour" (two emails on this one) and "favourite" (this one appeared in my post on Code Igniter Wiki resources). And honestly, "concerned" is probably a good choice of words. I've written back to 2 of them with a brief explanation - but since 1 of the notes came from my contact form with an obviously fake email, I couldn't respond directly to the writer. I also don't mind quoting a few lines here.
...if you're trying to show people professional resources, maybe you should use the accepted international spelling don't you think?...
Go ahead, read that again, I needed to read it three time before it made sense. Look, I have absolutely NO problem with how you choose to spell colour, or favourite, or centre, but please, please, please don't think that the rest of the planet should spell it like that simply because you want to.
Finally, maybe there was a time when people didn't recognize that some words are spelled differently in other countries (I'm Canadian), but I don't think its been in my lifetime, so lighten up - there are SO many other things you could criticize me for anyways.
As if you needed a reason to stay up to date, but its worth noting that a validation error in the processing of certain tags has been reported in the Sage RSS reader extension for Firefox. This can be exploited to insert and execute arbitrary HTML and script code in a local context by tricking a user into adding a malicious feed and then viewing its contents.
I've recommended Sage in the past, and fortunately this was fixed some time ago in Sage 1.3.10, so run your updates.
Come March 9th I’ll be on my way to Austin to partake in a few days of nerd revelry at South By Southwest. The main reason I’m going to to hang out with the guys from pMachine, (I’m a card-carrying member of Team Festering Carbuncle), but I’d love to meet as many people as I can.
If you’ll be heading down (I know Matt’s going to be there) then drop me a note so I can keep an eye out for you.
A beautiful piece of work! Bas Wenneker has written Plotr, a charting engine in Prototype that uses canvas. Now if only IE would support SVG, my world would be complete (until I found something else to complain about). The library is released under a BSD license, and requires prototype to run.
The rendered graphs are not bitmap graphics (no GIFs or PNGs here), but rather plotted using SVG or Explorer Canvas, as is appropriate. And if I may say so, the output is sexy as hell.
