Arduino Diary – Week 2

It’s been a busy week.  So much so, that I notice my last post here was… ah, a week ago, about this.

And so busy, indeed, that all I managed at our wee Arduino collective thing was two and a half hours.  Enough time to unpack, play a bit, and pack up.

I have a vague short term goal in mind, which came up last week:

“…an idea for short term project to focus on, something to aim towards; a very basic sliding potentiometer, that has a series of LED lights that light up as it’s turned up, and then a “send” button that tweets the status.  A kind of sliding mood status, or perhaps a productivity gauge I can score out of ten, and find peak productivity times.”

 

So, things about that I couldn’t do then:

– a series of lights that turns up, and down.
– a “send” button that sends an action back to the computer
– the understanding of how to send it to the twitter

With the little time I had today, I focus simply on the two things I think I can do… the LED lights, and a related send button.

Now, some trawling around in the backstreets and bazaars of Amazon resellers helped me find these little fellas:

LED bar graphs; each one an individual LED, with separate controls, but together as a unit.  Plug it in to the breadboard, wire each to a separate port on the Arduino, and then write/find some code which will work.

Actually, note on wiring; I seem to be developing a form of specific OCD about wiring wherever possible.  I may have wasted too much time on the green & yellows below, for instance.  I shall continue to convince myself I’m doing it so I can better see what I’m doing.

 

 

Funnily enough, I have not developed the same OCD about the code in Arduino, despite Pete’s best efforts to explain why it’s better / neater.  The indenting is a pattern I have yet to recognise as beautiful, perhaps; I wouldn’t necessarily consider the below to be a logical, easy to interpret way of understanding where you are.  I’ll either learn, or just make up a way that works better for me, I guess.

 

 

Another thing about the code; it’s always seemed like I should learn it from scratch, and understand every line.  There are tutorials for these things.  But… I’m basically a Lego coder at best; I think about the ‘size, shape and purpose’ of the bit of ‘Lego’ I need, I search on the internet for it, and find someone who’s done it already.

Which is exactly how I get this working…

 

Turn the dial, ramp up the LED display.  I didn’t put any resistors in, just to see what would happen.  It’s really bright.  So much so that I blew one of the lights, so the red display has been replaced with a blue one.   It’s more Jedi now than Sith, I guess.

Anyway, that was a very pleasing moment.

What was less pleasing was that I couldn’t get the “send” switch working on the same board.  I managed to do a simple switch last week.  I couldn’t today.  Two steps forward, one step back.  I’ll crack it next week.

 

 

Arduino Diary – Week 1

Every Wednesday, from now until Christmas, I’m spending Wednesday afternoons with some friends doing a bit of R&D on Arduino, the open source microcontroller.   I’m a novice, as are a lot of the others,  but luckily there’s a couple of people who know a bit more about what they’re doing.

I’ve mentioned Arduino before, and shared this film too I think, but for a recap it’s lovely and worth watching when you have time.

Arduino The Documentary (2010) English HD from gnd on Vimeo.

Anyway, I thought I’d do a very quick weekly roundup of progress, as much for my own records as anything, so I can look back at progress.  This is week one.


Week one

Arrived with Arduino in hand, a cable to connect to Mac, and that’s it.  I actually missed the first week, so I spend the first hours learning how to do the basic first exercises, borrowing some of Matt’s peripheral electronics to do it; really simple, yet hugely gratifying stuff…

‘Here’s how to make a button send a 1 or 0 to the computer, here’s how to make a light go on, and off, and on, and off…’

There is a light that frequently goes out.  Then comes on again.  On a loop.

 

Suitably enthused, it’s a quick trip to Maplins to pick up some of my own peripheri.

“Don’t go mad, like I did, and buy lots of random stuff” says Matt.

I go mad, like Matt did, and buy lots of random stuff.

The rest of the afternoon is spent, with the the help of Pete, playing around with potentiometer (analogue turny dial things, if you prefer), writing code that determines how much the light goes on by, using two LEDs so that as you turn the dial one fades and one lights up.

 

Which gives me an idea for short term project to focus on, something to aim towards; a very basic sliding potentiometer, that has a series of LED lights that light up as it’s turned up, and then a “send” button that tweets the status.

A kind of sliding mood status, or perhaps a productivity gauge I can score out of ten, and find peak productivity times.

Or maybe something I can set as an aspiration for productivity, so that I set a level, and then force myself into an “8” for the next hour.

 

Maybe it’s a mixture of the Bachman Turner Overdrive level in Smashey and Nicey (enter a certain ZONE) and Mean Machine Angel’s Dial in Judge Dredd (set a level of desired performance).  That’s a combination you don’t hear about often…

 

Anyway, once I got home, and had eaten dinner, I tried for a few hours to make the potentiometer tweet the value it was outputting, by cribbing various bits of code from examples here and there.  But with absolutely no success.

Having hit the wall, I retired to bed, feeling both delighted with progress of the first day, and narked that I hadn’t managed to make a turny-knob write something stupid on the internet.

That’s next week’s aim sorted though.

And in eight weeks time, I’ll have a dial in the centre of my forehead…

 

More Perfect Competition evidence from latest Mary Meeker roundup

The latest Mary Meeker goldmine of stats is out, which you can flick through here on Business Insider.  (HT @graemewood).

One chart in particular grabbed my attention:

 

 

It reminded me of the Perfect Competition stuff I wrote on feeding the puppy about two years back:

“The advances we are making are pushing us further towards ‘perfect competition’, which is increasingly making it hard for companies (especially retail ones) to generate the profits they used to.”

(full post here)

Perfect Competition has several key market characteristics that bring it about:

  • Infinite Buyers/Infinite Sellers – Infinite consumers with
    the willingness and ability to buy the product at a certain price,
    Infinite producers with the willingness and ability to supply the
    product at a certain price.
  • Zero Entry/Exit Barriers – It is relatively easy to enter or exit as a business in a perfectly competitive market.
  • Perfect Information – Prices and quality of products are assumed to be known to all consumers and producers.
  • Transactions are Costless – Buyers and sellers incur no costs in making an exchange.
  • Homogeneous Products – The characteristics of any given market good or service do not vary across suppliers.

In the retail space, the rise of the smartphone is rapidly bringing about a situation where perfect information is available about price & quality of goods in the retail environment…

So although smartphones alone will not bring about classic theoretical perfect competition (where no company is able to make any profit, just enough to keep them going…), it makes it a damn site harder to make decent profits.

So if you’re a retailer facing this problem, what might you do about it?

Play on the other factors, perhaps, and move them to your advantage.  Which strays into behavioural economics, which as always is no bad thing, but it naturally strays into some quite Machiavellian ideas, it seems… (five days being exposed to the cash-rinsing exercise that is Vegas was proof of that).

To wit; three mildly evil ideas for shop owners…


Decrease the feeling of “infinite sellers”

If you’ve got a shelf full of products, people are more likely to think “well, they’re still going to be selling them in half an hour, I can shop around”.  Keep just two of any product on a shelf, and as soon as one goes through a till, have backroom staff replace it when the customer has left.


Create some Exit Barriers

As people enter the store, hand them a voucher for free home delivery/5% off/free fitting (whatever is relevant) that only lasts 30 minutes, and states ‘only one voucher per customer per day’.  Suddenly if they walk across town to another store, the thirty minutes will have lapsed…


Only trade in limited editions

Homogeneity is your enemy; if your competitor offers the same product, here’s nothing to stop people shopping around.  So do whatever you can to make your products unique, individual, and only available on your floor.  Free gifts, special designs, signed editions… what’s the thing you’re offering that’s stopping the customer walking?

 

There’s lots more you can think about, of course, but the list of five perfect competition characteristics is a good place to start looking for inspiration.

If you’re mildly evil, that is.

If This, Then That: the brighter future of a Lego internet

I’ve been playing around for a few days with IFTTT.com – thanks to Conrad, Darrell & Brian for putting me on to it.

It stands for “If This, Then That“.

It’s brilliant.  I thought I’d write two quick things about it:

Firstly, run through an example of what it does, so that you can have a play yourself.  It’s not a hardcore geek thing, either, it’s easy for anyone who has got an idea of something they want to do and a passable knowledge of the internet.  DON’T BE SCARED.

Secondly, I’ll go through the glimpse of a brighter future of making, learning, sharing and doing that I think it gives us.


A demo of IFTTT.com

Their own description is pretty to the point:

 

Essentially, it’s turn of of your little web profiles and channels into Lego blocks of webness.

So you look at your lego box full of different blocks, and think ‘hmmm, wouldn’t it be great if this block connected to that block’, and you make something new…

 

 

Except, of course, the different lego bricks you’re using look like this:

 

Let’s give it a go.

I’d suggest the first thing you do once you sign up to IFTTT is head to the Channels page.

This is where you grant IFTTT access to all the channels you might want to use, Facebook and Twitter, LastFM and Instagram, Evernote and Dropbox.  All the things that, for the most part, do what they do very well, but sit in isolation.

Once you’ve done that, head to Tasks, and click ‘Create a task‘.

This is where you just have to think in terms of “If This Happens Here, I Want That To Happen There”.  Here’s an example of one of the Plumpton Mornings tasks I created.

Every photo I put up for this project on Instagram has the #plumptonmornings tag, like so:

 

What I want to happen is for it to appear on a Tumblr blog as a new photopost, with a specific comment underneath that tells me when the photo was taken.

 

So IF THIS (Instagram photo with the #plumptonmorning tag)…

 

THEN THAT (create Tumblr photo post with date tag)…

 

Which means that rather than have to collect them all together and load them up to a separate site myself, I can automate a very personal, particular service to make life easier.  Off the picture goes to the Tumblr, without me having to lift another finger…

The possibilities of what I could do with just the #plumptonmornings photos are almost endless… I could add all the photos to Dropbox or Evernote if I wanted to keep them somewhere, or upload to a specific Flickr group…

…I could make a note in Google Calendar to say “in London”, to work out how often and when I tend to go up to London…

…or I could check in on FourSquare automatically to a certain location (trains, by time, stations, by the direction, or just Plumpton station itself).  If I used FourSquare anymore.

 

As soon as I’ve completed a task, and found that it works, the final thing I can do is share the Recipe – so that other folks don’t have to recreate what you’ve successfully done, they can just copy your recipe and make a new task of their own from it.

 

Which also means that the Recipe page is a great place to go and

In short, if you haven’t guessed already, I love IFTTT.com – it’s not just a wonderful service in its own right, but it also gives us a peek of a bright future…


What does IFTTT.com mean for the future?

I’m really bad at coding.  I mostly operate on a cut, paste, stick & guess level.

That is, I basically know how to use Google, so I ask it questions about doing things in code, it returns a page that might have some code that’s useful on it,  I read it, understand as much as I can, guess where to tweak it and stick it in, then press save to see what I’ve broken, or inadvertently changed.

It’s really haphazard, and only works after a fashion.  It’s hacking, but only in the mental image of someone blindly swinging a machete though an overgrown jungle path, looking for something…

 

But the very principle of IFTTT works at a meta level for what the service itself succeeds at doing… someone has sat down and thought…

“If there was THIS site that took away some of the harder work of coding from APIs, then THAT would mean lots more people could do fun/good/useful things with their internet stuff…”

As a very broad principle, all technology tends to become easier to use over time, and at the same time as a larger percentage of the population knows how to use it…


And at the centre of these two trends, occasionally ideas crop about how to make the technology a good bit simpler, and there’s a little boost in the speed of change.

Which is great news not just for us, as it helps us do things today we couldn’t do yesterday, but for the generations coming up behind us too.

Not only will they be more attuned from an early age to the devices and platforms available, and the instructions & gestures they employ to affect them, but they have access to lots and lots of material and learning resources online to help them get under the skin of making the internet work for them.

And every time someone comes up with another IFTTT.com, a way in which to simplify the complexity, they will to bring people into a world they thought was previously beyond their grasp.

Which, given the increasingly unattainable cost of going to University for many kids, offers hope that the disenfranchised can find a different path in the world.

Anyway, enough talk, more action – spend a bit of lunchtime today, or this evening,  playing with IFTTT.com – I’ve no doubt you’ll be delighted to find out what you can make.

Happy hacking 🙂

————————-
For further reading on teach children or novices about coding, Emma Mulqueeny, who runs the excellent Rewired State / Young Rewired State, have an excellent post all about those resources:

How to initiate kids (or anyone) in coding

The death of Myspace… and lessons for everyone else

Last weekend, I had to build a Myspace equivalent.

 

No, not the whole thing from scratch.  That’d have taken longer.  Five days, maybe…

 

Nope, just a page for our band, Gamages Model Train Club.  Over the course of an afternoon, by stringing together bits of Tumblr, Soundcloud, iTunes, Facebook, Google Analytics and Feedburner, I made something that meant we’ve got somewhere where people can:

 

i) listening to / buy songs
ii) declare their love for the GMTC (or ‘like’ as Facebook would have it)
iii) follow what we’re up to
iv) subscribe for future updates

 

It’s here, if you’re so interested:

 

Pastedgraphic-1

 

 

But hang on, you say, Myspace is still in existence, and gets millions of people sailing through its straits every day.

 

And what’s more, they’ve recently launched their new version.  It’s easier to use than before.  It’s got lots of different and new features…

 

Why not keep using it?  Why leave now?

 

Well, there’s three things contributing, from a personal ‘end user’ perspective, all of which I think are good lessons for Facebook or indeed any social platform that’s being built to last.

 

And these are they…

 

 

Never stand still

 

Nobody can ever accuse Myspace of ever having been terribly easy to use.  Wanted to change your profile?  You had to learn some HTML (or at least have the ability to copy it from other places).

 

But before the News Corp takeover, at least there were piecemeal improvements… week by week, new things would emerge, be talked about, asked for by the community or created internally by the team.  And it gave the people at myspace something to talk to people about.

 

Then it stopped.  Dead.

 

I think what happened is the same that happens when any big, old company takes over a small, nimble, new company.  The new company becomes subject to the same rules and expectations as the new one.

 

Don’t launch things small and often, let’s launch things infrequently, but talk about all the changes we make at once.  So don’t talk about anything in between that spoils this, please.  Oh, and we need a major review of what we’re doing with the site, platform, tech, so don’t do anything till that’s complete….

 

…and so and and so forth.  By trying to sort everything all at once, as old, established companies want to, and as you’d have to do with a newspaper redesign, Myspace stopped evolving.

 

It was dead in the water whilst the new crew sat around debating, discussing and analysing what it was that made the engine work best.  And the good ship Facebook sailed right on past…

 

Lesson one:  keep evolving in the open, trying things consistently with the people who know your platform best (i.e. NOT you, your keenest users)

 

 

 

Aim for simplicity 

 

Here’s the new Myspace home page.

 

In between the ads, it’s and endless array of buttons, options, drop down menus, updates, messages waiting…

 

Pastedgraphic-2

 

 

Every time someone has a good idea, it seems to get ladled on top of what’s already there.  I’ve started to lose track of where everything is, and how to do things.  I can no longer work out how to remove some old songs from our profile (and believe me, I’ve looked through all of these options).  there are ten ‘major menus’ along the top.  TEN.  And then, to add to the confusion, the eleventh is a drop down offering ‘more’…

 

It’s an awful user experience that keeps getting worse.  And this is the new improved version.  No wonder people leave never to return… they probably can’t work out what they were there to do in the first place.

 

Lesson two:  if you do keep adding stuff, then more sure you keep taking stuff away too… clutter sucks

 

 

 

Small networks can make you… or break you

 

Despite the other two being important, I think this one is the killer.

 

Myspace for the GMTC has become a cold, dead world, inhabited by the occasional spectre of another band pleading ‘…please… come and see our band…

 

Of course, this is just our little corner of Myspace, where our friends, fans and other bands we like have stopped participating.  It’s not true for everywhere.  Not yet, at any rate.  So why is it important?

 

If (as Shirky, Watts et al propose) we are tightly connected as small groups, and loosely connected as large groups, the disappearance of a small group can have bigger repercussions than just the people within that group.

 

 

 

 

 

When a social network passes out of favour in a small network, the large network suffers.  The loose connections that held the wider network together start to disappear.  So the occasional thing which crossed over into different tightly knitted groups has also disappeared.

 

Our group has stopped functioning as a node in the network.  Just one small network has disappeared, yet the repercussions go beyond just that group.

 

There feels like there’s less going on, there’s less diversity.  If this starts happening with more and more small networks, it’s obvious that the large network suffers.  It becomes a less interesting, less lively place.  It becomes more boring.

 

And when it becomes boring, people have got no reason to come back.  Which is a pattern which can start repeating across the whole network, but spreads like a virus from small group to small group, as they’re loosely connected to each other.

 

All common sense, really.  And something you’d try your hardest to stop happening, if you were running a social network.

 

However, it’s really hard to spot it.

 

The more you’re focussed on the big, overall network numbers (this many unique users, that many daily hits), you’re going to miss the disappearance of small networks.

 

Or, rather, you’re not going to miss them, because the picture you’re looking at is far too big.

 

You really need to focus on early groups that were once hives of activity, but have dwindled to nothing.  Or those who were in your first 10% of users, but haven’t logged on for a month or more.

 

Lesson 3: Large network numbers are important, but put attention to what’s happening in your small networks. 

 

 

 

 

So, three things, admittedly all from a very small network viewpoint too.  But it’s really important for social platforms to develop and keep that perspective as they grow (or indeed are bought by bigger companies).

 

Because people aren’t on your platform because they’ve invested emotionally in your platform.

 

They’re there because they’re emotionally investing in the relationships with their friends.

 

And if their friends move on… so will they.

[PT] – “The Promoted Tweet”

As reported here in The Guardian, the latest OFT crackdown wants celebrities to reveal if they’re being paid to tweet about brands and products.

 

Screen_shot_2011-01-12_at_11

 

Which is, you know, fair enough I reckon.

 

And I don’t think people are daft enough to think that in the modern age of celebrity, it hasn’t been going on anyway.

 

But with only 140 characters to play with, it’s going to be pretty hard for people to add in a full statement along the lines of “This tweet was sponsored by The National Geographic Society”…

 

…so what I suspect we’ll see is some form of user-created shorthand for ‘promoted or paid-for tweets’, perhaps something like:

 

[PT]

 

It’ll be short, clean and clear enough to be included at the end of a message.

 

Crucially, it won’t be something controlled centrally by twitter (which would be an unmanageable task), but a common practice that emerges from the PR & social ends of the industry.

 

What’ll be most interesting, if it happens, is seeing just how many tweets in the stream start to feature [PT] or equivalent… or do celebrities really just tweet about stuff because they like it…?