Etsy

Oh look, jewelry!

Things have been quiet here because I haven’t been doing much hacking; mostly I’ve been shipping things. Hello, busy retail season.

Somehow in all this selling madness I found time to eek out a new line. A line of jewelry, none the less! For those of you who don’t know, I actually got my degree in metalsmithing / jewelrymaking. So in some ways it’s not surprising. Except to the cheep viagra uk people who heard me swear up and down I was done with production jewelry years ago. I think I swore off craft shows around the same time. That might explain why I have 2 scheduled for December.

The pendants are all laser cut acrylic. There are 10 different designs, and they can be theoretically put on any color background although I’ve found there are only a handful of colors which look particularly good. You can find them at Everything Tiny, or on Etsy, or at either of the craft shows I’ll be doing this month:

Squidfire Art Mart – Baltimore, MD on December 12
Brooklyn Lyceum – Brooklyn, NY on December 19th and 20th

Hacking

Zipcar!

Last month I finally got around to joining Zipcar. I’d thought about it for years, but took the plunge when I was trying to find a doctor who took my health insurance. Most of them were sale of viagra in Deep Northern Jersey ™, and really needed a car to get to.

Today I took a car out for the first time. I’ve heard mixed reviews of ZipCars: some people love them, some people say the cars are never there when you need them. I’m assuming this is because people return them late. I booked a two hour slot for what I hoped was about an hour and a half long trip.

And it might have been an hour and a half long trip had I not a) gotten horribly lost and b) made the terrible decision to head out to the suburbs during a rainy rush hour. It took us about 45 minutes to get to our destination (Google Maps had estimated 15). Luckily there wasn’t a reservation after us, so I was able to extend it 30 minutes. We made our two stops (art supply store and hardware store) and I got the car back at exactly 5:30.

I have to say that after driving through suburban northern New Jersey I finally understand why everyone hates Jersey so much.  But the ZipCar experience was a pretty smooth one. I was embarrassingly a little bit excited about the fact that I could just go online and magically have a car for a few hours. There are a number of cars parked within a 10 minute walk of my house. The rates seem a little steep (our 2.5 hour excursion cost about $35 after taxes). Then I remembered how much it cost to insure and maintain my car back when I had one, let alone the cost of gas or the car itself. For as often as I need a car, maybe once or twice a month, the ZipCar is an obvious win.

I’m sure at some point I will have a run in with a missing or broken car, and curse all things ZipCar, but so far it’s been a pretty pleasant experience.

Programming

Etsy API Fail – Well, Ok maybe not.

I’m working on a new project which uses Etsy’s API. As far as APIs go, theirs is pretty neutered. There’s no user authentication whatsoever so the only data you can get from it is what’s available to the general public. Since you can’t authenticate, you certainly can’t write any data, so things like allowing users to add Etsy items to their favorites aren’t possible.

Working with their API I found another “quirk.” If you try to getUserDetails on a username which doesn’t exist it won’t return null or false or an empty object. Instead, it responds with HTTP status code 404.

Wait, what?

This means I have no way of differentiating between an error in my URI and a simple case of a defunct username. In fact, this behavior is contrary to what Etsy’s own documentation suggests. Their sample code dies on any status besides 200, which makes sense although you’d probably want to handle the error more gracefully. Now I have to look up the status code and try to guess whether I got the 404 because of a malformed URI or because the username was wrong. That will make debugging super fun!

404 is an HTTP error. A correctly formed API query with a null result should not return a 404. Argh. In english terms, a 404 means “I don’t have the information you’re looking for.”

You could argue that Etsy simply doesn’t have the userinfo for that user, because it doesn’t exist, and therefore 404 is appropriate. But that’s a cop out. Etsy DOES know that user’s info: it’s empty. If I’m querying a database of all known users, and getting back a subset of said users based on my input, Etsy’s response should be “there aren’t any matching users” not “I don’t have that information.” A 204 error would be more appropriate.

Edit: Apparently this is becoming a common thing.  Although I haven’t seen it with any other APIs I’ve worked with. And let me state for the record that just because other people do it doesn’t make me think it’s any less of a dumb idea.

Edit again: Someone who is less sleep deprived than myself pointed out that the body of the 404 responses does contain useful information, which I had missed earlier. So in this case I will concede to being wrong, although I am still not a fan of this approach because it means my script relies on the exact English wording of their error messages. Carry on.

Uncategorized

Imitation is the sincerest form of flattery

I have to admit, I’m more than a little confused by Mark Frauenfelder’s contribution to Mac|Life’s “Apple Products of the Future” article. Specifically, I’m astounded that nowhere in the article does it give attribution to Makerbot, despite drawing liberally from Makerbot’s design.

Makerbot

The imaginary iMake

I’m not sure if Frauenfelder himself directed the “finished product” rendering, as it’s pretty different from his sketch shown 25 mg viagra in the article. But any attribution to Makerbot is conspicuously missing from the article. And they clearly were inspired by it somewhere along the line. It’s extra confusing because Frauenfelder is with Make:, who is currently documenting the unboxing of a Makerbot for all to see.

It’s disheartening. I think this sort of failure to attribute ideas hurts open source. Let’s give credit to the people who are actively realizing their ideas, not just doodling them. The Makerbot guys are taking it in stride, because they’re classy like that, but personally I’m disappointed to see their work being passed off as an Apple Product of the Future. The printer, while still in an early stage and without a high gloss shell, exists. In fact, that “App Store” to download printable models exists too, it’s called Thingiverse. So why are people who clearly already know this acting like they don’t?

Hacking

Intro to Algorithms, success!

Thanks everyone who came out to Intro to Algorithms this past Sunday, we had way more turnout that I was expecting! About 15 people in all. 

We'll be picking up the course again this week on Sunday at 5. It's OK if you missed last week, just watch lecture 1 at home and take a look over the homework / reading assignments.

We've started a Google Group to further the discussion of the class materials: how to buy viagra in canada NYCResistor: Compsci. This group is open to everyone, including folks who aren't coming to the in-person classes but are watching the material at home. 

See you on Sunday!

Hacking

Sweet Classes at NYCR

Right now there is a super sweet list of classes coming up at NYCR, so many I wish I had the time to take them all.

I’m teaching my standby Intro to PHP class again, and also trying out a new one: Designing with QCAD. QCAD is used for 2D drawing, and is 50mg viagra retail price a great tool for designing things to be laser cut.

Aside from what I’m teaching there’s a DIY Vacuum Form class coming up this weekend, and a Hacking Classic Nintendo Games class I’ll sadly be missing due to Thanksgiving. Soldering 101 has been merged with Arudino 101, bringing you a class which teaches you to solder AND make things!

Overall I’m really excited and hope the classes are well attended. We’ll see how badly the holidays screw up everyone’s schedule. Stupid holidays.

Hacking

Introduction to Algorithms at NYCR

Introduction to Algorithms

What’re you doing Sunday evening? Nothing? Come down to NYC Resistor where starting this weekend we’ll be working through the Introduction to Algorithms course available through MIT’s OpenCourseWare project. What’s OpenCourseWare?

MIT OpenCourseWare (OCW) is a web-based publication of virtually all MIT course content. OCW is open and available to the world and is a permanent MIT activity.

We’ll start at 5pm and the lectures run about an hour and viagra and canadian a half. The time may shift a bit each week due to other classes happening at the space, but we’ll post it on the calendar well in advance. The class uses the text “Introduction to Algorithms” which you may want to pick up or borrow from a friend. We’ll try to scrounge up a couple copies to have on hand.

This event series is totally free to attend, but if you enjoy it please consider donating to the MIT OpenCourseWare project!

This week we’ll be watching Session 1: Introduction – Analysis of Algorithms, Insertion Sort, Mergesort

Crafting

Papercraft Nikon F

Tiny Prototype

For about a year now I’ve been trying to get some more models/kits designed for Everything Tiny. But it’s a super slow process, and admittedly one I don’t spend enough time on.

Today I prototyped a model of a Nikon F, the first SLR camera I used. I started fairly large, cutting with an xacto knife, and ended up somewhere which is still a little bigger than what I hope to get down to.
F Party
The largest model is about 1/2 the size of a real Nikon.

There’s still a ton I need to add (F stop / focus rings on the lens, the little button to open the back, etc) but they’re at a good stopping point for today.

After I was done modeling I googled “papercraft camera” to see what other people have done. I specifically waited until after I had my design roughed out. Olympus came out with some which make my little paper models look pathetic. Oh well. Since I want other people to be able to build these I need to keep it a little more sane anyway.