Skip to content

Fun with Lego® Mindstorms – the Color Sorter

January 4, 2012

LEGO® Mindstorms is a robotics platform that allows builders to construct and program a variety of different mechanisms using familiar bricks and an easy-to-use computer application that is built upon LabView. I’ve been exploring this platform for the past few months, including building the model seen in the video below:


Read more…

Further Adventures with 123D Catch (formerly Photofly)

December 17, 2011

I wrote last month about some work I’d done with Autodesk’s photo-stitching platform, 123D Catch. Since then, I’ve continued to experiment with the platform – with mixed results. This post attempts to summarize the lessons that I’ve learned.

Read more…

3D scanning from photographs

November 13, 2011

I’ve been interested in representing spaces in electronic terms for almost as long as I’ve been using computers. Some technologies, like VRML or ActiveWorlds or Second Life, tried to provide an interactive 3d experience via the web. Outside the internet there are also a bewildering array of scanning platforms that allow users to capture 3d geometry and export CAD-friendly files. These can cost significant amounts of money, although in the last few years there have been some intriguing low-cost systems.

It was in this context, then, that I discovered a new service from Autodesk several months ago: Photofly – which has just (November 10th, 2011) been re-branded with the unwieldy name “123D Catch.” This cloud-based service can create textured 3D models from digital photographs. No specialized hardware needed. Read more…

Using jQueryUI within Drupal 7

August 11, 2011

jQuery is crazy powerful – and the jQueryUI set of plugins is excellent for adding commonly-needed user interface controls like accordions, tabs, carousels, etc. Even better, with the release of Drupal7 we now have jQueryUI included in the core. But how do we actually get to use all this magic? I just had to figure this out, so in the hope of paying it forward, I’d like to share what I did, and how. There may be better ways to do this, but this is what has worked for me – if you can find a better way, please let me know! Read more…

Revisiting MergeQuery_mysql

July 20, 2011

I wrote a few weeks ago about a problem I’m running into with Drupal when I attempt to run update.php. Specifically, I’m getting a White Screen of Death, which when I put in the three lines of debugging code reveals the following error message:

Read more…

Testing Processing Export

July 13, 2011

screenshot of Processing sketch showing six "cars" driving toward a single spot

A friend and I have recently decided to start teaching ourselves Processing as an entry into some visualization work that we want to pursue. We aren’t following a formal course of study, but thankfully the Processing website has a number of tutorials and encourages people to hack away at their examples. Over many years I’ve come to realize that this is the way I learn best, by tinkering with a vague goal in mind – so I’m encouraged that the brains behind the language are encouraging people to learn that way. Read more…

Drupal 7 problem: Class ‘MergeQuery_mysql’ not found

July 1, 2011

This is a quick note of frustration about a problem into which I’ve been running mercilessly. I have a site on Drupal 7.0, that I have been trying to upgrade to the new 7.4 release. As preparation, I’ve taken two different development sites through the same upgrade, and the dev sites moved fine. With the real site, however, I run into the following scenario:

  1. Make backup
  2. Put site in maintenance mode
  3. Delete all 7.0 files/folders
  4. Unpack all 7.4 files/folders other than the /sites directory
  5. Copy the old connection string to the new default.settings.php file, save as settings.php

At this point, the site works, and the status board shows green – with the warning that some updates need to be done to the schema. So, I go to update.php.

And…the site breaks. Hard. White Screen of Death hard. Update.php fails, the site root fails, everything.

So, I throw on the three lines of debugging code from http://drupal.org/node/158043 to peek under the hood and see what I can find.

This is the output:
Notice: require_once() [function.require-once]: 1. h->opened_path=[E:\sites\knowlton-stage.96\includes\bootstrap.inc] h->filename=[E:\sites\knowlton-stage.96/includes/bootstrap.inc] in E:\sites\knowlton-stage.96\index.php on line 23
Notice: require_once() [function.require-once]: 1. h->opened_path=[E:\sites\knowlton-stage.96\includes\errors.inc] h->filename=[E:\sites\knowlton-stage.96/includes/errors.inc] in E:\sites\knowlton-stage.96\includes\bootstrap.inc on line 1971
Notice: require_once() [function.require-once]: 1. h->opened_path=[E:\sites\knowlton-stage.96\includes\common.inc] h->filename=[E:\sites\knowlton-stage.96/includes/common.inc] in E:\sites\knowlton-stage.96\includes\errors.inc on line 73
Notice: require_once() [function.require-once]: 1. h->opened_path=[E:\sites\knowlton-stage.96\includes\unicode.inc] h->filename=[E:\sites\knowlton-stage.96/includes/unicode.inc] in E:\sites\knowlton-stage.96\includes\common.inc on line 1557
Fatal error: Class 'MergeQuery_mysql' not found in E:\sites\knowlton-stage.96\includes\database\database.inc on line 826

I’ve done what I consider a fair amount of Googling, both within the WSOD error and the MergeQuery_mysql function. Nothing has worked. I have backups, and obviously a dev site – but I’m a bit flummoxed as to why I’m seeing this error. Any input on this would be greatly appreciated.

Supporting a Dynamic Learning Environment with Custom Application Development

June 18, 2011

Earlier this week, my colleague Lorrie McAllister and I presented some of the work we’ve been doing with Drupal to a group of developers at Ohio State. We focused on two platforms that we launched this year – the Digital Library and Community.

The slides are here:

Supporting a Dynamic Learning Environment with Custom Application Development

XML data transfers between Drupal sites

May 6, 2011

With the launch of the KSA Digital Library last month, and even more sites anticipated in the very near future, we can finally begin working on something I’ve wanted to tackle for a long time – the use of XML feeds to transfer data between Drupal sites. This post is an attempt to map out that process for myself, hopefully help others who are thinking about similar questions, and get feedback from those who have already put this in place. Read more…

Announcing the new KSA Digital Library

April 20, 2011

On April 1st, we (Lorrie McAllister and I) launched the new Digital Library for the Knowlton School of Architecture:

Entrance page of the KSA Digital Library

The library is built in Drupal 6, running on a WAMP stack. The site’s search functions are handled by a separate Solr server which is running Tomcat. We were able to build the entire project without building a module of our own (although that may be changing as we roll out new features). There are 55 modules in sites/all/modules, including such usual suspects as CCK, Views, Panels, and Workflow. The theme is based on zen_ninesixty.

This project was definitely a learning experience, and was easily the most complex endeavor I’ve tackled on the web (significantly larger in scale and complexity than the MatchNight scouting engine). While I’m very grateful to everyone in the Drupal community for making this platform so robust and powerful, I’d like to especially note the people at Lullabot, Cyrve, and the singular merlinofchaos. While I didn’t directly interact with any of these people, I found myself using the modules and techniques they developed a great deal.

Lorrie and I are working on a more formal announcement which will review the details of our process and the outcomes. For now, though, I’m just incredibly happy that the process has reached this point.

https://ksamedia.osu.edu

KSA News article: “KSA Digital Library re-released with new features and content

(this post also appears, with a slightly different focus, and Lorrie and I’s co-authored blog, “Adventures in Open Education“)

Follow

Get every new post delivered to your Inbox.