tag:mrchucho.net,2008:/postswatch this &nbsp;2011-02-10T20:57:39-06:00tag:mrchucho.net,2008:Post/3812011-02-10T20:57:39-06:002011-04-20T08:56:30-05:00Ending support for Next Image<p>As of today, I am no longer maintaining or supporting the <a href="https://addons.mozilla.org/en-US/firefox/addon/next-image/">Next Image</a> extension for Firefox.</p>
<p>I don’t use Firefox anymore and, honestly, it’s just too much effort supporting a Firefox extension. Also, most of the functionality in this extension can be accomplished with a <a href="javascript:(function(){ var e,s; IB=1; function isDigit(c) { return (%220%22 <= c && c <= %229%22) } L = location.href; LL = L.length; for (e=LL-1; e>=0; --e) if (isDigit(L.charAt(e))) { for(s=e-1; s>=0; --s) if (!isDigit(L.charAt(s))) break; break; } ++s; if (e<0) return; oldNum = L.substring(s,e+1); newNum = %22%22 + (parseInt(oldNum,10) + IB); while (newNum.length < oldNum.length) newNum = %220%22 + newNum; location.href = L.substring(0,s) + newNum + L.slice(e+1); })();">bookmarklet</a>.</p>
<p>I have posted the code on <a href="https://github.com/mrchucho/nextimage">github</a> for anyone who is interested in reviving this project. However, most of the effort is administrative. Thanks to everyone who used and reviewed Next Image. Hopefully you will find an acceptable alternative.</p>
<p><strong>Update</strong> Here’s a bookmarklet that works well as a <a href="javascript:(function(){ var e,s; IB=1; function isDigit(c) { return (%220%22 <= c && c <= %229%22) } L = location.href; LL = L.length; for (e=LL-1; e>=0; --e) if (isDigit(L.charAt(e))) { for(s=e-1; s>=0; --s) if (!isDigit(L.charAt(s))) break; break; } ++s; if (e<0) return; oldNum = L.substring(s,e+1); newNum = %22%22 + (parseInt(oldNum,10) - IB); while (newNum.length < oldNum.length) newNum = %220%22 + newNum; location.href = L.substring(0,s) + newNum + L.slice(e+1); })();">Previous</a> button.</p>mrchuchotag:mrchucho.net,2008:Post/3792009-07-09T15:01:44-05:002010-07-05T10:51:43-05:00Next Image Updated for Firefox 3.5<p>Ready for Firefox 3.5:</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/7824">https://addons.mozilla.org/en-US/firefox/addon/7824</a></p>mrchuchotag:mrchucho.net,2008:Post/3782009-07-09T11:34:36-05:002009-07-09T11:34:36-05:00Next Image Firefox 3.5 Update Coming Soon<p>Submitted to <span class="caps">MDC</span>, awaiting approval.</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/7824">Next Image</a></p>mrchuchotag:mrchucho.net,2008:Post/3772009-06-19T00:32:55-05:002009-06-20T14:01:40-05:00Infinite Summer Reading Progress Tracker<p>I’m reading David Foster Wallace’s <em>Infinite Jest</em> this summer as part of <a href="http://www.infinitesummer.org">Infinite Summer</a>.</p>
<p>Since I love <a href="http://code.google.com/appengine/">Google App Engine</a> so much, I figured it would be fun to write a little app for tracking my progress in reading all 981 pages of IJ. Since Infinite Summer is a group effort, I’d also like to know who is ahead and who is behind.</p>
<p>So, check out the <a href="http://infinite-summer.appspot.com">Infinite Summer Reading Progress Tracker</a>. Because it runs on Google App Engine, you can login with any valid Google account.</p>mrchuchotag:mrchucho.net,2008:Post/3762008-11-11T09:43:11-06:002009-02-05T12:20:30-06:00JSON (and JSON-P) Weather Alerts<p>Inspired by <a href="http://simonwillison.net/">Simon Willison’s</a> JSON micro-apps: <a href="http://json-time.appspot.com">json-time</a>, <a href="http://json-head.appspot.com">json-head</a>, and <a href="http://json-tinyurl.appspot.com">json-tinyurl</a>, I created another <a href="http://code.google.com/appengine/">Google App Engine</a> powered site that produces Weather Alert information as <span class="caps">JSON</span> and <span class="caps">JSON</span>-P.</p>
<p><a href="http://json-alerts.appspot.com/">http://json-alerts.appspot.com/</a></p>
<p>Given a common place name (e.g. city, state or county name) or <span class="caps">ZIP</span> code, the current weather alerts for that zone will be returned along with location and timezone information. Place names are mapped to a county and timezone using the <a href="http://developer.yahoo.com/geo/">Yahoo! GeoPlanet</a> web service. Weather alerts are provided by the <span class="caps">NOAA</span>’s state-by-state <span class="caps">CAP</span> feed.</p>mrchuchotag:mrchucho.net,2008:Post/3752008-10-14T21:35:38-05:002010-01-21T12:02:50-06:00Next Image with configurable bindings<p>Next Image has been updated to a new version with configurable key bindings. It is now available via the official Firefox add-on site.</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/7824">https://addons.mozilla.org/en-US/firefox/addon/7824</a></p>mrchuchotag:mrchucho.net,2008:Post/3742008-09-30T12:04:20-05:002008-09-30T12:05:13-05:00The correct way to override ActiveRecord::Base#destroy<p>In order to correctly override #destroy in an ActiveRecord model, you actually need to implement #destroy_without_callbacks like so:</p>
<pre>
<code>
def destroy_without_callbacks
unless new_record?
# do your custom stuff here, then save
end
freeze
end
</code>
</pre>
<p>Simply implementing #destroy will short-circuit the callback chain and skip the destroy method on any associations marked :dependent => :destroy.</p>mrchuchotag:mrchucho.net,2008:Post/3732008-08-23T10:21:07-05:002008-08-23T10:21:44-05:00Times Tables<p>To help my daughter practice multiplication and to experiment with <a href="http://code.google.com/appengine/">Google App Engine</a>, I created a small app for doing your times tables.</p>
<p><a href="http://times-tables.appspot.com/">http://times-tables.appspot.com/</a></p>
<p>I’m pretty impressed with <acronym title="Google App Engine">GAE</acronym>. It’s very easy to use, the Mac App Launcher is helpful and the online Dashboard is well done. I especially like the ability to upload and stage multiple versions.</p>mrchuchotag:mrchucho.net,2008:Post/3722008-06-24T10:22:17-05:002008-07-09T08:00:24-05:00Next Image on AMO<p>I’ve started the process of having Next Image hosted on the official Mozilla Add-ons site. Once it receives enough ratings, it can be nominated for the public site.</p>
<p>Please rate or review Next Image via it’s sandbox page:</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/7824">Next Image :: Firefox Add-ons</a></p>mrchuchotag:mrchucho.net,2008:Post/3712008-06-23T12:21:51-05:002008-06-23T14:33:29-05:00Next Image Updated for Firefox 3<p>I’m in the process of updating my extensions to support Firefox 3. Unfortunately, there were some significant changes in how extensions can be served. So, at this point, only my Next Image plugin is working. Also, it might not show up via the Add-ons manager “Find Update”, so please install it directly.</p>
<p>Project Page: <a href="http://www.mrchucho.net/pages/projects#nextimage">http://www.mrchucho.net/pages/projects#nextimage</a></p>
<p>Direct Link: <a href="http://www.mrchucho.net/downloads/nextimage-0.9.xpi">http://www.mrchucho.net/downloads/nextimage-0.9.xpi</a></p>
<p><strong>Updated</strong> – My second extension, This Window, is now up-to-date and available, too.</p>
<p>Project Page: <a href="http://www.mrchucho.net/pages/projects#thiswindow">http://www.mrchucho.net/pages/projects#thiswindow</a></p>
<p>Direct Link: <a href="http://www.mrchucho.net/downloads/thiswindow-0.8.xpi">http://www.mrchucho.net/downloads/thiswindow-0.8.xpi</a></p>mrchucho