Double Skeumorph Lightbulb


I noticed that these flame tip light bulbs are a DOUBLE skeumorph.

Obviously the shape of the glass outer container is supposed to bring to mind fire from a candle or gas light.

But this is also an LED bulb whose light elements are arranged to bring to mind an old fashioned incandescent bulb.


Services I’d Like to See: Stripe for Purchase Orders

Business-to-business purchases are a huge part of the economy, but the way they’re typically implemented just doesn’t line up with how e-commerce is conducted.

The traditional purchasing process goes like this:

  1. The operations or engineering department of a business needs some widgets. So they tell the purchasing department that they need some widgets with a certain specification.
  2. The purchasing department sends out quote requests to one or more widget suppliers.
  3. The sales department of each supplier replies with a quote.
  4. The purchasing department picks a winning quote and replies with a purchase order (or PO) to the winning supplier. This is a legally binding document that specifies what they’re buying and at what price. These typically have an associated PO number that is unique within the buyer’s organization.
  5. The supplier ships the widgets. The supplier’s accounts payable department sends an invoice to the buyer.
  6. Some time later (as negotiated), the buyer’s accounts payable department pays the invoice.

Compare this to a typical e-commerce purchase:

  1. The customer finds the widget online.
  2. The customer adds the item to the shopping cart.
  3. The customer checks out and pays using a credit card or PayPal.

There’s a lot fewer steps here. It turns out, though that the traditional purchasing process has certain advantages. By having all purchases go through a purchasing department, it’s much easier to keep track of expenses. And by negotiating payment terms, the customer can take their time paying: a great help to a business’s cash flow.

Also, it turns out, many large purchasing departments simply don’t have access to a credit card or PayPal to pay for stuff. They can pay via PO and that’s it.

As a small business owner, I like the purchasing power of companies that have a traditional purchasing process, but don’t like dealing with waiting for them to pay, sending reminders when payments are due, and handling physical checks.

So what can be done to smooth out this process? How about a payment processor that deals strictly in purchase orders! The first half of the purchasing process would be the faster e-commerce model: the customer finds the widgets on the vendor website and adds them to the shopping cart. But when it comes time to pay, they can simply use their PO number.

Sending reminder emails, collecting the money, assessing late fees, and so on would all be handled by a third party. This would be the “Stripe for Purchase Orders“. Let’s call them SFPO for short.

SFPO could offer an API, much like Stripe, PayPal, etc. that would ensure that the customer is approved for purchase orders. The API would do typical payment processor stuff, like providing a form, registering a sale, and so on.

SFPO could also provide other valuable associated services, like running credit checks on companies who want to pay via PO.

You could cobble all of this together yourself, but if you’re a small shop, why would you want to spend time chasing after customers to pay, when you could be building your business?

This is potentially a HUGE business as it touches many of the high dollar business to business transactions.  If you build this, please let me know.

Services I’d Like to See: Improved Webmaster Tools

I started looking at my Google Webmaster Search Console to research a small drop in traffic from organic search results. Using it was painful to figure out what was going on. I suspect this is on purpose: Google doesn’t want people gaming their results (unless they want to pay for ads, of course). That’s why there are so many companies out there that offer SEO services.

Here’s the type of info I’m looking for that Search Console doesn’t offer, at least not directly:

  1. If I experience a drop in visits from organic search, is it because of
    1. fewer people searching for the term I’m ranking for
    2. my page showing up in lower ranking spot
    3. my page not showing up at all, or
    4. people just not clicking my link
  2. Keyword search data for more than 90 days
  3. Charts that go by week or month instead of day in order to better see trends
  4. How much traffic is people searching for my business name or variants vs. keywords

Anyway, it turns out that Search Console (formerly known as Webmaster Tools) has an API that lets you access data. So some enterprising individual should be able to make this happen. If something like this exists, let me know. If it doesn’t exist, somebody please create it!

Upgrading Joomla, Recommended Extensions

I’m in the middle of upgrading a bunch of stuff on the website to the latest versions. The website is Joomla based, because at the time I created it, Joomla looked like the best option for integrating a CMS with a shopping cart. Of course, nowadays I’d probably use something WordPress based, as it seems to be improving much faster and has a larger community than Joomla.

Of course, as part of that process, I have to do a bunch of testing. It amazes me that there seems to be very little use of staging environments  for common CMS and shopping cart platforms. The attitude seems to be: “install the software or update on your production server, then go back to a backup if there’s a problem.”

(Also, much of the Joomla/Opencart documentation suggests uploading by FTP. I’m not sure if people are really still using File Transfer Protocol in this day and age, or if the meaning has drifted (like GIF), and people really upload stuff to their server over an encrypted channel, the sensible way.)

Some Joomla extensions I use and can recommend:

Recommended Mijoshop/Opencart extensions:

I’ve got a few others that I’m evaluating to help regain some of the functionality lost in the upgrade process.

New Printer: HP M506dh

I just bought an HP M506dh printer after spotting it on Slickdeals. It normally retails for $1300+,  but this was only $300 with free shipping from MacMall. Plus HP is offering $150-$200 tradeins. Since my old Brother laser had leaked toner all over the inside (cheap aftermarket cartridges), this was a no-brainer for me. It was speculated on the Slickdeals thread that this HP model is some sort of government surplus.

It’s really nice compared to my old Brother laser, in a lot of small ways. The setup was simple, and made good use of the LCD display and input buttons. There’s little guide icons and instructions for all the adjustments like on the upper paper feeder and the paper tray. All the adjustable tabs are in light blue, making the adjustments easy to find.

The upper paper feeder can hold a good amount of paper in reserve; I’m using that just for shipping labels, and keep plain paper in the lower tray. The feeder can be used as a tray; the printer seems to be happy grabbing the top page off of a stack, again, unlike the Brother where the feeder was one sheet at a time only.

The lower tray holds more than a ream of paper. There’s a paper level indicator on the outside of the tray. My Linux desktop recognized it right away on the network. It prints on both sides of the page, which should save on paper.

My favorite part is that the removable pieces like the paper tray and toner cartridge slide in easily, unlike with the Brother, which had to be slammed in place and required a few tries to get it right every time. Though everything slides in and out smoothly, I still feel like you get a positive lock when sliding things in.

Sadly, these are no longer in stock.

Power outage and extension cables

We had a power outage this week due to inclement weather. When hooking up some critical appliances to the portable generator, I noticed that I was using way too many extension cords and power strips in 2 areas: the home office and the aquarium. I managed to free up at least 2 power strips, 3 extension cords, and 1 power splitter by mounting power strips on the wall and routing the cables more cleanly. this inspired me to order some power and network cables of the correct lengths from Monoprice in order to reduce the snake’s nest of cables, as well as some hook-and-loop cable tie material.

Robot Battles 2017

I competed at Robot Battles 2017 this past weekend at Dragon*Con. I drove the bot, Flipper, and my son operated the weapon. Here’s a video showing our best fight, the rumble, where we outlasted about 10 opponents.

Some lessons learned:

  • The spot where the topmost round bar passes through the center lifter claws needs to be thicker. This area broke during testing on both claws. There should also be some sort of shock absorbing material for when the claws slam into the ground after a lift. I may also want to switch to #8 screws on the clamp to reduce the hole size.
  • I need to be careful when tightening the clamping screws on the weapon claws; one broke during testing.
  • A separate clamp piece on the weapon claws is probably more useful, rather than a clamp with a single slot. It distorts the claw geometry less, and makes it easier to get out broken screws.
  • The general construction technique for the lifter of clamping waterjet cut 3/8″ 7075 aluminum claws onto 1/4″ round 6Al-4V titanium bar was good enough.
  • The lifting claws shouldn’t come out so far. I had to add an outrigger bar in the center to prevent the robot from faceplanting. Few robots got way up onto the claws anyway. Plus shortening the claws should save some weight, desperately needed in other sections of the robot.
  • The claws should be thinner in the front, with a smaller tooth.
  • The inner teeth on the claws looked cool, but didn’t do much. I’ll probably have 1-2 teeth at most on the next version.
  • This outrigger bar worked OK as a wedge itself, but prevented the lift mechanism from being able to move 360 degrees. This would have been very useful when Flipper gets stuck on top of another robot.
  • The single center outrigger did its job OK when lifting a robot using the center claws, but the whole robot tended to go over on one side when lifting using the side claws.
  • Both the center and side claws are useful in a fight.
  • I can create an attachment point for a side outrigger on the idle side of the lifter, but alignment might be tricky. No idea how to create an outrigger yet on the driven side that will allow 360 degree movement.
  • I need to be able to push while lifting. Right now, the front of the robot comes down too far when lifting to make this work well.
  • The lifter works great with a load of 12 pounds that’s siting still and positioned just right. On a moving robot, with just a small section hooked, not so much. We only managed one full lift/slam of an opponent.
  • The rear wheels can probably afford to come back another 3/4 inch or so. This will make lifting better by moving the center of gravity toward the back and reducing the angle of the baseplate of the robot.  But if I do this, the wheels will stick out proud of the back. I noticed several robots at this event with wheels proud of the back side, and most seemed to have no problems. In the past, I have seen this become a problem when robots attempt to push backwards on another robot, and just end up running over the opponent.  I may have to extend the side plates to create a sort of bumper.
  • Pushing power and traction were adequate. I figured out a few driving tricks to get around being high centered, stuck, or pushing a stubborn opponent.