ShrimpTest – how to fix incompatibilities with WordPress v3.3

ShrimpTest is a WordPress plugin with a LOT of promise.  Basically, it is an A/B testing tool for WordPress.  The plugin author, Mitcho, does a great job of explaining A/B testing and why it is important.  If you are already familiar with A/B testing, you can skip ahead to 16:03 in the video to see a demo of Mitcho presenting the plugin

Unfortunately, and this is truly a shame, the plugin also suffers from an almost complete lack of development and updating.  There must have been some change in WordPress v3.2 that stopped the plugin from working.  The effect was that the “A/B” icon in the rich text editor was missing.  Fortunately, someone figured out a work around.  The super quickest way to apply this change to the plugin is to do the following:

  1.  Make sure you’re logged into your WordPress website of choice
  2. Navigate to `http://[DOMAIN].com/wp-admin/plugin-editor.php?file=shrimptest/plugins/variant-shortcode/tinymce.js&plugin=shrimptest%2Fshrimptest.php`
  3. The second line down reads:
    1. ”     tinymce.PluginManager.requireLangPack(‘variant_shortcode’);”
  4. Comment out this line by adding two slashes before the code as follows:
    1. “//     tinymce.PluginManager.requireLangPack(‘variant_shortcode’);”
  5. Click “Update File”

You’re done!  Now you should be able to see the icon in your WordPress rich text editor.

DrawBot – How to Recover from a Stalled Print!

I should really have entitled this post “How to mostly recover from a stalled print.”  Several times now I’ve had a problem with the DrawBot stalling out and stopping a print.  When this has happened, hours can pass and the little ‘bot will do nothing at all.

Such as last night.  It was probably 80% done drawing Starry Night when it … just… stopped.

Here’s what I saw and here’s how I (mostly) fixed it:

  • The Symptoms
    • No DrawBot movement1
    • No scrolling of the command queue
    • The ‘bot status read “BUSY [insert normal seeming string command I didn’t write down]”2
    • The motors were quite warm
    • And the poor little Motor Shield was warm as well3
  • The Fix45
    •  I figured that, for whatever reason, the little ‘bot just seized up – but that perhaps if I could get it to respond to commands I might set it back on track.
    • The control software was responsive enough that I could “Queue->Export Queue“, which I did.
    • The problem with trying to reset the board or the control software and just feeding it the remaining part of the queue is that it wouldn’t remember where it was.  So, I figured if I could convince it that it was already where it was supposed to be, it might just continue on as if everything were okay.
    • I had seen from prior command queues that the code, “C09,NUMBER1,NUMBER2,END” appeared to be the way the machine would apply “Input->Set Pen Position.”
    • I then looked at the code that I had exported from the queue.  The first item was:
      • C05,3103,4350,29,133,END
    • So, I edited the text file so that it read as follows:
      • c09,3103,4350,END
      • C05,3103,4350,29,133,END
      • …the rest of the command queue
    • Which I believed essentially tell the ‘bot that it was where it was supposed to be and to continue on as if everything was normal.
    • I then disconnected the USB cable
    • Closed the control software
    • Restarted the control software
    • Reconnected the USB cable
    • Reestablished contact with the ‘bot, “Setup->Serial Port” and selected the port of choice for my laptop
    • Clicked the queue to start it up again…
    • It seems to have worked – but may possibly have shifted up one pixel.  This is why I say this was mostly a recovery.  I suspect that if I should have moved the pen down a little and see if I could get it to draw the next pixel in line.

I’ll scan and post this drawing as well and will point out the spot where I tried this little fix.

Posts in the DrawBot Adventure Series
  1. Wanna make a DrawBot?
  2. DrawBot Resources and Links
  3. DrawBot, the Adventure Begins
  4. DrawBots for the slow learner
  5. DrawBot - Parts Ordered!!!
  6. DrawBot - The Breakdown
  7. DrawBot - Parts Shipped!!!
  8. DrawBot - What would you draw?
  9. DrawBot - The Plan!
  10. DrawBot - The Delivery?
  11. DrawBot - The Delivery, Part II
  12. DrawBot – The Delivery, Part III
  13. DrawBot – The Assembly, Part I
  14. DrawBot – The Software, Part I (and an existential conversation)
  15. DrawBot – The Delivery, Part IV
  16. DrawBot – The Assembly, Part II
  17. DrawBot – The Assembly, Part III
  18. DrawBot – The Assembly, Part IV
  19. DrawBot – Design Considerations
  20. DrawBot – Halp!!! No - seriously, a little help?
  21. DrawBot – The Face Palm
  22. DrawBot – The Delivery, Part V
  23. DrawBot – The Silver Lining of Failure
  24. DrawBot – The Delivery, Part VI
  25. DrawBot – The Assembly, Part V
  26. DrawBot – The Assembly, Part VI
  27. DrawBot – Printed Parts
  28. DrawBot – The Assembly, Part VII
  29. DrawBot – The Operation, Part I
  30. DrawBot – The Breakdown, Part II
  31. DrawBot – Printing!
  32. DrawBot – Printing, Part II
  33. DrawBot – Why are you crying?
  34. DrawBot – Pen Selection
  35. DrawBot – How to Recover from a Stalled Print!
  36. DrawBot – Drawing Success(ish)!!!
  37. DrawBot – Pen Selection, Part II
  38. DrawBot – Onwards and Upwards!
  39. DrawBot – Another Successful(ish) Drawing!, and an Update
  40. Restarting a Stalled DrawBot Drawing
  41. TSP FTW!
  42. Two new DrawBot links! And an update!
  43. Excellent DrawBot Slides
  44. Another Drawing Robot!!!
  45. DrawBot Practice Tip: A Watched Pot
  46. The biggest inkjet printer ever
  47. Why do DrawBots draw on walls?
  48. All New Polargraph on the way!!!
  49. Ideas for improving my DrawBot
  50. DrawBot Aesthetic Re-Design Ideas
  51. The Eagle Has Landed
  52. Every Body Needs a Skull
  53. I think I know what I want to draw next...
  54. This project is not going to overengineer itself
  55. Overengineered Spools
  56. Overengineered Stepper Motor Mounts, Filament Guides
  57. Overengineered Bolt Endcaps, Case Holder
  58. Sourcing DrawBot Parts
  59. DrawBot - A Tour!
  60. DrawBot - A Preview
  61. Building an Arduino Drawing Robot - On The Cheap
  62. DrawBot - Printed Parts Tour
  63. Unidentified Foam Object
  64. Arduino Powered Drawing Robot - Take 2 (Or 3)
  65. DrawBot, now ACTUALLY wall mounted!
  66. A Study of Drawing Robot Pen Holders and Design Considerations
  67. Drawing Robot Pen Holders, Calligraphy Pens, and Thought Experiments
  68. Ideal Qualities in a Drawing Robot Pen Holder
  69. Enough talk! Finally a pen holder!
  70. DrawBot Pen Holder Post Mortem
  71. To Maker Faire!!!
  72. Skipping! How could I forget the skipping?!
  73. Drawing Robot Penmanship
  74. PlotterBot at Maker Faire Bay Area 2013!
  75. - a new site dedicated to drawing robots
  1. Doctor, she’s been acting listless… []
  2. … and unresponsive… []
  3. …and has a fever!  What should I do?! []
  4. VERY nearly almost called this the Cure and linked to a YouTube video.  It’s really just too damn early in the morning for me to write such a thing or you to read such a thing.  As much as I like the Cure, they’re not morning music, you know? []
  5. Like the Smiths []

Have you turned your MakerBot or RepRap into a robo-cutter?

I’m curious – has anyone out there retrofitted their MakerBot Cupcake CNC, MakerBot Thing-O-Matic, or RepRap1 with a cutting device?  I recall seeing an example of someone creating a laser cutter, but I was particularly interested in whether someone had made a cutting device using a blade.

If so, what kinds of blades did you use?  Did you create your own?  Did you use off-the-shelf replacement parts for a commercial robo-cutter?

  1. Or other DIY 3D printer, for that matter []
August 27, 2011 | Comments Closed

How to clean an “” SQL injection

Well, that was exciting.  Apparently my website had been attached by some kind of SQL injection.  I was curious if my self-hosted WordPress website had been attacked like 4,300 others.  After some digging around, I found that this was not the case.  A scan by revealed nothing unusual.  However, a scan by Sucuri’s SiteCheck revealed some Javascript malware entries in some posts.

I say “some” posts.  By this I mean 3300 posts and post revisions dating back to the very first blog entry on this website going to as recently as July 13, 2011.  Not including this post, I’ve got 721 published blog entries – with almost all containing this little gem:

<script type=”text/javascript” src=”″></script><script type=”text/javascript” src=”″></script>

Here’s what I did to clean this infection:

  • Copy my entire “_posts”  to “_posts2”
  • Copy my entire “_posts” to “_posts3”
  • Downloaded “_posts3” as a CSV
  • Find and replace all instances of the above script in the CSV with “”
  • Deleted the contents of “_posts3”
  • Uploaded the altered CSV into “_posts3”
  • Renamed “_posts” to “_posts1” and “_posts3” to “_posts”
  • Done!

It’s definitely possible to create a little WordPress plugin to clean this kind of an infection out, but there’s little incentive to do so when the manual fix is relatively easy.  If you’ve got this kind of an infection in your site and don’t know how to take care of it, drop me a line.

Is a lasercutter for me?

After consideration, maybe not.  Following Maker Faire Bay Area 2011 I was again prompted to investigate the feasibility of a lasercutter.  Now, I don’t have any great big grand plans for one – I just think it would be awesome to have one and I would be able to think of some pretty sweet uses for it if I had one lying around.

In any case, from what I can see there are some small and very professional looking fully assembled models starting around $8000. 1  As a hobbyist with no actual plans for immediate use of a lasercutter, this is way way too much for random projects.

I’ve seen a few websites that purport to have models for around $2,500 or so with kit options starting around $1800.  The way I look at it, there’s not a lot that can go wrong with a 3D printer.  A laser on the other hand…  could blind, burn, and cut from an arbitrary distance.  Besides, if a company can’t put together a simple WordPress website, I’m hesitant to drop thousands of dollars on their product. 2

There’s also two DIY options – the open source and the promised-to-be-open-source Lasersaur.  It’s not exactly fair to criticize them for incomplete documentation. appears to be a collection of people documenting their laser cutter builds and aren’t advertising themselves as a complete tutorial.  Lasersaur started off as a very popular Kickstarter project but their site was almost devoid of information or developments until they re-surfaced at Maker Faire Bay Area 2011.  Going through the Lasersaur’s bill of materials I stopped tallying the cost once it hit $4,000.00.  At that point, it probably doesn’t make sense for me to try building my own.

For the time being, I don’t think I’m going to invest in a lasercutter, DIY kit, or open source project.  Besides, there are plenty of places in the Bay Area nearby I could have something cut or rent time on a machine.  If there was a project for up to, say, $2500 and had really great documentation, I might reconsider – but I don’t see that happening soon.


  1. I was thinking of the lowest Epilog model and one referred to as a “Turnkey Laser Business.” []
  2. And, really guys, come on. []

Skeinosaur – I choose you!

A printable knitting machine?!  Awesome.  Everything about this is just plain awesome.

3/9/2008:  “Homemade knitting machine using old printer parts, two servos and a Picaxe-18x microcontroller”

2/7/2009: “Faster machine with new carriage, needle and wool drive designs.”

4/30/2009: “Semi automatic machine where the needles are fixed.”

11/7/2009:  “Simple to construct and use knitting gadget”

Dang.  I have zero desire to knit – but I really kinda want to build these…

Also, obligatory reference to evidence of my evil lazzor dinosaur army defeating Team Buser.  Also, thanks to one Tony Buser for the above info and links!

March 30, 2011 | Comments Closed

I would like to thank my agent…

…the Hollywood foreign press…

Actually, huge thanks to Dave Durant for the math and answering questions, Renosis for exhaustive testing and feedback.  Thanks also to all of the other beta testers of whom there are too many to name.  Um, they’re playing the music,…  uh, uh, Honey – we did it!  Um…  Free Tibet!  and… um…  I’m King of the World1 !!!

In seriousness, since the launch of the first ProfileMaker v1.0 less than a week ago there have been 152 profile settings generated and the beta testers generated 270 profile settings through ProfileMaker v2.0.  Version 2.0 incorporates many of the things mentioned in the recent poll. 2  Here are some of those improvements:

  • ABS as well as PLA
  • Works with 1.75 and 3mm or any filament diameter you choose
  • Ability to change the feedrate, the mysterious gear swell, and gear diameter

I’ve already begun work on ProfileMaker 3.0.  If you want to help as a beta tester, or get the math involved, or want to help kick the tires of the user interface please drop me a line or leave a comment.

  1. of web based 3D printing calculators that solve for flowrate for stepper extruders []
  2. Still active as of right now – but get your votes in if you want to let your voice be heard []
March 26, 2011 | Comments Closed

ProfileMaker Version 2.0 is coming!

A few cosmetic details to work out yet…  but I’m almost ready to launch the second version of my ProfileMaker.  I released the first version late last night.

I’d like to think that I’ve increased the number of options while still keeping a slim and intuitive user interface.  I would really appreciate any comments, criticisms, or questions you may have.

March 20, 2011 | Comments Closed

Cross-Platform Profileinator Web App

Some of this write up is over at Thingiverse and some of it is at the end of the ProfileMaker page.

Dave Durant’s program for solving for flowrate is really incredibly helpful.  It is truly a shame that it isn’t more widely used.  I think part of the problem might have been people were intimidated by all the buttons and part of the problem was that it was a Windows only application.  There has since been a port to Java, but that’s not as convenient as a truly web based version.

I’ve hard coded the most common options, but fully intend to bring them back later as advanced options.  For now I just wanted to whip something together to help people out and show them just how easy calibration can really be.  Give it a shot.  If you haven’t printed at 0.2mm layers before, give it a whirl!

I’m really really looking forward to being able to enter values into Skeinforge from my cell phone.

Your suggestions, comments, questions, criticism, e-mails, etc are all welcome and invited.