Archive for the ‘programming’ Category.

I just don't get it. (An "I ♥ SQL" rant)

What's so bad about liking SQL? About enjoying the beauty of a really damned well-written and concise query? Seriously, I just don't get the hype about ORMs versus writing the queries yourself.

Don't give me the "but it makes everything portable!" argument. How many times have you designed something, only to have to switch to a different RBDMS partway through? Or had to switch to a new one after the project's done? *snort* Yeah, that's what I thought. If you're that worried about this elusive and inchoate thing called "portability," design the system so all the queries can be put in one directory or file, and provide a way to swap out the optimized queries for each database-specific version. You know, kinda like we already provide language translations.

Please explain to me how a system that takes hours (eight and counting) to debug and runs a separate query for each fucking result is superior to the single optimized query I can write in less than thirty seconds and which produces the exact results that I need and no more, with none of the tearing out of hair and hours of frustration?

Also, if you're going to write a framework that alleges that the ORM can be easily decoupled from the framework so that you can write your own SQL? An easy and—most importantly—well-documented way to get the damned results into the format the rest of the framework expects would be really nice. (The crap that makes up 99% of all documentation for programs—open source or commercial—is a rant for another day.)

Django snippet — Template tag: split list to n sublists

This is the code for a Django template tag I adapted (also posted here). It was based on this snippet, adapted to split a list into n number of sublists, e.g. split a list of results into three evenly-divided sublists to enable display of the results in three columns on one page with CSS.
Continue reading 'Django snippet — Template tag: split list to n sublists' »

Arrrrrrrrrrrgh.

I like CodeIgniter so far (I've been fiddling with it on and off for a bit), but I've run into an issue that is driving me insane, so if anyone sees a typo that's causing the issue, I'd appreciate it if you'd let me know. *g*

I posted about the issue on the CI forums this afternoon, so all the relevant code's over there.

The gist of the problem is this: I'm using the same form for both adding a record and editing it. The model, view and controller work fine for the form when adding a new record cheap viagra. They also work fine when I submit the edited information. However, where it doesn't work is when I initially load the record to be edited by grabbing the data from the database and then filling the fields on form. Text and textarea inputs get filled in just fine, but radio and checkboxes do not get checked to match their stored values. *sigh*

Any ideas out there?

New work project up

Online school directory for El Paso and Teller counties, Colorado, USA (broken now). (The much better, non-corporate mush version is here on my site. [Also dead now, as I don't want to update the code for newer versions of php and mysql.]) I have a ton of additions and improvements that I want to add as I have time, not the least of which is point clustering and geocoding/adding an address marker and displaying schools within a certain radius.

To be added at a later date:

  • point clustering
  • figure out how to scan a JSON file to pull out just certain records from the array (all records in category c) so I can load everything once, rather than having to make a php/mysql call for each option; otherwise I need to figure out how to get an animated "I'm loading, dammit!" graphic to work with the asynchronous data call
  • zoom to district boundaries when displaying that district's schools
  • link to district info/schools from legend
  • label district polygons
  • display schools within x radius of a user input address (temp fix in the meantime: directions to and from links)
  • swap KML polygons out for encoded polygons for districts
  • display district data when brining up the district's schools
  • standardized test scores (and other associated CDE annual benchmarks) for each school and district

Suggestions and comments welcome, as they always are on everything I work on. :)

Google maps geocoder

Found a batch geocoder for Google maps a couple of weeks ago. It's pretty simple, and returns accuracy and status codes to help weed out the addresses you might need to check by hand. (Yay for not having to write one's own geocoding interface for Google!)

References: API docs for the status codes and address accuracy