Author Archives: admin

21 things to build with the 21 Inc Bitcoin computer

The 21 Inc Bitcoin Computer is getting a lot of stick. Having a hasher in there is confusing the issue and becoming the focus of people’s view of the computer as an expensive miner. That is unfortunate. But…

21 Inc themselves say the point of this thing is to discover what might be possible when Bitcoin is native to the OS and there is a marketplace to buy and sell products and services. So it’s an exercise in learning. For all of us.

I am sure creative developers around the world will come up with uses for this thing that I cannot imagine, and maybe even 21 Inc cannot imagine – I think thats the result they want.

But even without having to imagine too much, I can see that one use of this device is to charge a tiny amount on a per request basis for all your existing web services. Translation services are what 21 Inc hint at in their launch of the device.

So here are 21 web services that could be easily migrated to a micropayment-per-request model:

1. Watermark a PDF or Jpeg. Charge per page or per watermark.
2. Apply photo effects to an image. If you used photoshop effect names and parameters, photoshop would be at the end of a URL. Nothing to stop Adobe doing this.
3. OCR. Post images, get back text.
4. Audio to text. Post an mp3, get back text.
5. Lookup Foreign Exchange rates. Charge one amount for live prices, another for 15 minute delayed prices, a third price for accurate to the day prices. Similar model for stock quotes.
6. An ad-free search engine, paying 0.00000001 bitcoin per request, say, instead of having to look at advertisements
7. Execute a nominated docker image with specified parameters.
8. Store this file for me.
9. Text to voice. Parameters might include: human or synthesised voice, male/female, accent. I want a human female with British accent to say hello world
10. Snail-mail a pdf to a nominated address.
11. Search 21 Inc services by richer metadata. For example, find me a text to voice service backed by a human that can deliver in 1 hour, that has a rating of 95% and costs 2c a word or less
12. Spamcheck this email.
13. Spell correct this text file.
14. Ad free twitter. Small charge per tweet. I wonder if this would work with Facebook? Certainly would with WhatsApp. Micromessaging paid for by micropayments.
15. Find me 10 images that are copyright free, 600×300 or bigger, and are associated with the word ‘goal’
16. Micropayments to send email. 0.00000001 btc (say) per email or per recipient. Would hurt spammers, and regular users would probably be happy to pay this tiny amount.
17. Send 1 btc to this nominated bank account. Integrate with legacy banking. Might be beyond our civilisation this one.
18. Give me last years accounts for this company as json
19. Give me credit history on this person as json
20. Give me a car insurance quote with these parameters as json
21. Find me sold house prices for the last six months in this post code.

Once you get going with this it gets easier. But like I said. This list was produced by mechanically adding the concept of micropayments to existing webservice ideas. The real fun will start when people start inventing new ideas based on having an api for internet money.

I read someplace recently that our advertising based model of monetisation on the internet was an inevitable consequence of not having internet money when the internet started back in the nineties. And the article dared us to ask when kind of internet we would have now if such a thing existed back then.

For older developers this might be hard to do due to being conditioned to this way of thinking. And it might also be hard for current consumers to envision as they too have been conditioned to expect “free” software. The chap beside me in work told me his dad was reluctant to pay the £8 a month to use Microsoft Office for his work. He thought it was outrageous. That’s the market we have built over the last twenty years.

But the new generation coming through have this opportunity now, to re-envision the internet in this new way. Money does now exist as a content type. Software has progressed from product to software as a service, and now it can move to software as a paid request. It will be exciting to see what happens.

How to find where a person is singing in an audio recording

I need your help. This is an audio waveform of somebody singing the first four lines of Happy Birthday. Click if you want to see if bigger.

The first line should begin about 1.5 seconds in, and should be finished before 4.5 seconds in. This is because the singer is singing in response to a karaoke style lyrics scroller. There should be about a 1.5 second gap between lines, so the second line of the song should start at about 6 seconds in, and each line should be no more than 3 seconds long. I say should here, but its somewhat inexact, due to peoples sense of timing, and machine performance characteristics etc. There could be a 0.5 second variation in any of these timings, based on testing.

Now, what I want to so, is identify in the waveform where singing starts for each of the four lines of the song. So I want 4 pairs of numbers. The first might be (1.3, 4.1), meaning the singing starts 1.3 seconds into the waveform, and ends 4.1 seconds into the waveform, making a 2.8 second singing clip. The second pair might be (6.1, 8.6) etc.

How can you help? I’ve been hand-rolling all kinds of amateur algorithms to pull this off, with a modicum of success (that I feel chuffed about 🙂 ), but I need something more robust than what I have been able to do. So what I am looking for is pointers either to papers or code for algorithms that are suited to this problem, or even the name of potentially suitable algorithms and I’ll do the research myself. Or else pointers to open-source tools that can do this, so I can dig around and see what they do.

My promise to you is, if anything interesting learning comes from this process, I will report back on what I learned.

Keep well!

A little fantasy

you know the way powerful people in movies say “Leave Us” when they want to be alone with somebody they want to give a right good talking too. I want to do that in my next meeting. To somebody talking shite, or being treasonous in some other way. Following the offending statement, I’d go all quiet, fix them with a steely stare and, in a deep and steady voice, say “Leave Us”, keeping the stare going, while the others scuffle out, backwards. Now we’re alone. I imagine the room dimly lit, by candlelight or burning torch ideally, but I suppose the dimmer switch will have to do. Health and Safety. I’d arrange the lighting further so only one side of my face is visible, the other in shadow, eye sockets deepened, maybe a bit of stubble. Nobody messes with somebody framed like that. I suppose at this stage it would be appropriate for me to tut-tut ominously, stand up and step slowly the long way around the table (still in half-shadow) stopping behind the seat of my wide-eyed subject. And pause. Unsheath my company pen, fix it purposefully across their throat, lean in and whisper menacingly…well, whatever it is I want to be clear about. “You WILL come for extra hours on Monday” or “I KNOW you took the last of my pink post-it notes.”, it depends. And now, another episode of Game of Thrones. Leave Us!