
Bot written to buy random things each month from Amazon - dmarinoc
http://randomshopper.tumblr.com/
======
jaysonelliot
If you look at what he's doing from an art perspective, he's engaging in
Generative art, art that is created by process outside the control of the
artist: <http://en.wikipedia.org/wiki/Generative_art>

I usually think of John Cage when I think of generative art, and the way he
let the environment or random events become part of his music.

One of the coolest things I've learned about recently in this realm is Joseph
Nechvatal's Viral Symphony, a musical work composed by a C++ program that
seems similar to Conway's Game of Life:
<http://en.wikipedia.org/wiki/Viral_symphOny>

~~~
elteto
"If you look at what he's doing from an art perspective"

What exactly is an art perspective? I buy stuff every month from Amazon to
serve different purposes, so that they are pseudo-random if looked from
outside without context. That doesn't make me an artist, at least not in my
book.

I don't want to start a modern art flame fest, but where do we draw the line?
I mean, it seems like nowadays _anything_ is or can be art. And if I say that
I don't get it, well, then it is my problem for not looking at it from the
right perspective.

~~~
WalterBright
I define "art" as something I (the proverbial unskilled layman) couldn't do in
a weekend.

I was in a Syndey art museum recently, and there are a lot of beautiful art
paintings I couldn't create in a thousand years. There are a few proudly
displayed "things" that I could create in a couple hours with zero skill. I
have no idea what people see in those "things".

~~~
Osmium
>I define "art" as something I (the proverbial unskilled layman) couldn't do
in a weekend.

Art is also about context. Look at prehistoric cave paintings: I have no
technical skill as an artist, but I could easily recreate the paintings
myself. But does that mean they're not art? Of course not. To take another
example, how about the hasty sketches of a soldier in the trenches in the
First World War?

I only use such a stark example to prove the point that technical skill isn't
all that makes art _art_. If you don't know what people see in these "things"
then perhaps you just need to look a little more carefully. A lot of modern
art is taking the mundane, that which we are used to, and challenging our
assumptions about it. Assumptions that we didn't even know we had.

I'm not commenting on this post in particular, but all too often I see this
dismissive attitude towards modern art, and I think it's unfair and deserves
more careful consideration.

~~~
WalterBright
Consider a painting I saw on TV a while back that is suspected of being done
by da Vinci. If the experts concur, it would be worth millions. If they do not
concur, it would be worth $20,000 because it's old. If joe starving artist
down the street painted it, it would be worth $500 at best.

The exact same painting.

------
tubelite
You know what would be really cool? Write a mini-me program, with enough money
that hosting can be funded on interest, with a little left over for gifts.

Then, you die (painlessly, after a long and happy life, etc. etc.)

The program keeps running, tracking your descendants over time and gives them
little random, appropriate gifts from the ghost of great^n grandpa or grandma.

I wrote about this in 2007
([https://tubelite.wordpress.com/2007/09/10/autonomous-
softwar...](https://tubelite.wordpress.com/2007/09/10/autonomous-software-
agents-as-trustees/)). Perhaps Facebook is in the best position to do this,
help people plan and create their ghosts.

~~~
rijoja
Let's say that you save 10'000 $ in an account with 5% interest, then you'll
have 500 $ a year to spend on presents. If every child has two children the
amount children in a generation is 2^n. When they grow up we stop giving them
presents for mathematical simplicity. Then it's possible to give every child
in the 9th generation a $1 gift a year. Which is quite neat. If we have a
generation length of between 25 and 30 years this will be between 225 and 270
years in the future.

~~~
tubelite
In the long run, it is highly likely that you will either be an ancestor of
every single human, or none of them.
(<http://www.bbc.co.uk/news/magazine-19331938>) You don't need to give every
single one of your descendants a gift. Give 2-5 gifts a year, randomized after
filtering out undesirables using a naughty/nice algorithm.

Assuming total population remains roughly the same, if enough people did this,
it would actually work. Most kids would get gifts from grand^n Santa.

~~~
rijoja
Nice idea and an interesting article. If the goal is to be remembered for as
long as possible giving more presents is obviously better. After 9 generations
only a small part

But some might feel that a enormous list of children with ratings of their
behavior would be questionable.

------
citricsquid
This was done a few years back as the result of an XKCD, the original article
is gone, but there's a few articles about it:
[http://www.wired.co.uk/news/archive/2010-11/09/xkcd-
packages...](http://www.wired.co.uk/news/archive/2010-11/09/xkcd-packages-
script) <http://news.cnet.com/8301-17938_105-20022153-1.html> it's a cool
idea.

Not sure if I'm imagining it, but I think that someone built this into a web
service that you could subscribe to and it would buy things for you every day.
Does anyone remember this? I can't find anything via HN search, but I'm sure
it was a show HN at some point.

~~~
bieh
I'm the guy who built the original XKCD-inspired bot -- the original blog post
is still around at <http://bieh.net/wordpress/2010/11/08/xkcd-576/>, though
the images have since broken.

Possibly the web service you mean is <http://www.eachdayisagift.com/> ?

~~~
redact207
bieh's had a pretty good run when it was live!

I wrote eachdayisagift.com and it was funny to see all this come back on HN
today. I had to freeze mine as it was buying a lot of stuff from Hong Kong
that Australian customs classed as 'weapons' (laser pointers, throwing stars),
that got me a stern letter from the government.

~~~
three14
Wait - what? You actually wrote a bot as in <http://xkcd.com/576/> and
_actually had the problem in the comic_?

------
viseztrance
I normally don't like when someone posts an xkcd link, but this was the first
thing that came in my mind <http://xkcd.com/576/>

------
drcube
Cool. You could use this to set up a "Random Amazon Purchase of the Month
Club" and have a decent side business.

------
alpb
Off topic: I'm wondering when HN users will figure out how to get permalink of
a Tumblr post. Everybody is linking to blog home except companies hosting
their blogs on Tumblr.

~~~
omaranto
Just to be clear, this is off topic because here the intention probably _was_
to link to the entire blog (all of which is about the bot in the submission
title), right?

~~~
dmarinoc
As the OP, I can confirm the intention :)

------
Zolomon
Being a native Swede very much into electronic music I was very interested in
learning about Ákos Rózmann! He was a complete stranger to me until now. Thank
you very much.

------
ErikAugust
I hope the bot buys an ebook about horses.

~~~
thirdtruck
In this (amusing) context, I presume?

<http://horseecomics.tumblr.com/>

~~~
ErikAugust
Yeah. Wow, these comics are amazing too, thank you.

~~~
salgernon
Older, but my favorite set of flow of consciousness comics:
<http://spamusement.com>

------
jrabone
This is a really cool idea - and it shouldn't be too hard to get it to talk to
recommendations, personalisation & wishlist if those APIs still accessible as
a web service? However, I haven't used the E-commerce service for a long time
and I think it might have been turned off or replaced with something more
advertising-oriented.

~~~
ErikAugust
I think that's what it does:
[http://randomshopper.tumblr.com/post/35454415921/randomized-...](http://randomshopper.tumblr.com/post/35454415921/randomized-
consumerism)

It also bought him a Chomsky book on Linguistics and a electronic music CD.
And if the bot did that on it's own that'd be a little too spooky.

~~~
jrabone
No, the article says right there it uses search results (presumably by
scraping). ECS used to be WSDL - real easy to drive from eg. PHP back in the
day. I wouldn't want to be the poor sod parsing the retail website HTML
(although perhaps the last redesign improved it).

~~~
dariusk
I'm actually not parsing the HTML at all. Not really. I'm using PhantomJS,
which is a headless web browser. Each time I load a page, I inject jQuery and
just do a simple JS command like

$('#whatevertheIDisfortheform').submit();

It's the equivalent of opening up your console on each page and interacting
with it via jQuery rather than a mouse and keyboard.

~~~
jrabone
So something has parsed the HTML - but at least _you_ didn't have to reinvent
that wheel :)

Still, you might want to look at [https://affiliate-
program.amazon.co.uk/gp/advertising/api/de...](https://affiliate-
program.amazon.co.uk/gp/advertising/api/detail/main.html) \- the Product
Advertising API looks like the latest evolution of the E-Commerce Service API
and might let you do things like stop the bot from making duplicate similar
purchases, or accidentally fulfilling your wishlist.

------
qbrass
Reminds me of: <http://xkcd.com/576/>

------
zdgman
How is he actually completing the amazon purchase solely via a bot? I know
there is no API to automagically buy an item from Amazon.

Would love to see a write up of how this is accomplished.

EDIT: Noticed he is using PhantomJS and running the process through a browser.
Very interesting.

~~~
jastr
Apparently <http://zinc.io> does provide an API for placing orders on Amazon.

~~~
zdgman
Learn something new everyday on HN! Didn't know this existed and I am
wondering how they actually achieve this via Amazon but that's their secret
sauce.

------
j2kun
I'm surprisingly intrigued by this. It sounds really fun!

~~~
kyllo
Good for a conversation piece at parties, if nothing else. "Hey, you guys
won't even believe what I got from my random shopper bot this week!"

~~~
lutze
Personally, I'd rather not risk having to explain why I just got 55 gallons of
lube and an anatomically correct blow up donkey through the mail.

~~~
eclipticplane
... or did the bot give you a reasonable excuse to family and friends as to
why you have a 55 gallon drum of lube and an anatomically correct blow up
donkey?

Hmmmmm. I sense a startup: "we hide your filthy, disgusting pornorgraphy
habits from your family by hiding them amongst 'random' automated purchases.
Get six days of boring things like glitter and used wing nuts and the seventh
day you'll get your favorite, delicious porn. BUY NOW!"

------
jastr
Really funny idea. Are you using <http://zinc.io> to ship the stuff from
Amazon?

~~~
dariusk
Nope, I'm using PhantomJS, a headless web browser that's mostly used for test
automation. I programmed it to log in to the Amazon account, fill out the
various forms, and buy/ship the stuff.

------
filipeximenes
dxRoulette uses an non automated, but similar approach. Although you have to
manually buy, it still very fun to sort the item wait for it to arrive in a
random date since the product comes from china. <http://www.dxroulette.com/>

~~~
JaggedJax
Hmm, no mater how many times I try, I always get a V for Vendetta mask as the
result.

------
stevewillows
The two purchases are fascinating. I am curious as to what other purchases of
his suggested the CD.

------
sounds231
I will be writing a bot to buy me random things from musiciansfriend.

------
adv0r
you have no respect for the value of money, time and our planet. You better
use your spare time write a bot to feed 80 human beings in poor country. :\
disappointed how this can get so high on HN. Srsly, you guys are loosing it.

~~~
johngalt
And you spend your time commenting on work you don't respect. Why weren't you
out farming?

~~~
adv0r
what is the purpose of your comment?

~~~
illuminate
To point out that there are more things you can be doing for others than
getting outraged at a person's lost productivity, if that is your prime
concern.

~~~
tossacct
I'm not sure that the OP was "outraged at a person's lost productivity". It
seems like badv0r may have thought that the project could have potential merit
if it focused on something like "feeding 80 human beings in poor country"
instead of "Buying random things from amazon each month".

To be more general, the bot currently buys:

<unneeded thing> for <person who can afford it>

while it could buy

<needed thing> for <needy person, who can not afford it>

~~~
illuminate
Then they should offer suggestions instead of chastising.

Most persons buy unneeded things whether they can afford them or not. The OP
ought to take the time and energy they squander on judging others and devote
it to helping the needy. Less anger, more good.

