This post got nailed by the voting ring detector, but I'm restoring it because we want to see original work on HN.
A "voting ring" is when people get friends to upvote their stuff. This is against the rules. We want stories to be on HN because they're good, not because they were promoted.
It's sadly common for a great Show HN post to get demoted because its creators, eager to get it on the front page, tried to game it. I've noticed a pattern, too: usually their gaming technique is pretty weak. Perhaps that's because they're creators, not promoters. Unfortunately, it has the side-effect of making it certain that the ring detector will nail their otherwise good post, while we carry on the usual cat-and-mouse game with people pushing crap.
I've got what I believe will be a sweet solution to this problem, but it awaits time for implementation.
Please everybody, don't ring-vote your posts; just take your chances with HN's randomness. If a post is solid and hasn't gotten any attention yet, a couple of reposts is ok. Be careful not to abuse that, though, since we penalize accounts for reposting too much.
I'm going to demote this comment as off-topic so it won't get in the way of the real discussion. Send any moderation questions to [email protected].
- I know! We'll set up a voting ring to game my blog post about a garage door opener onto the front page of Hacker News, even though I don't get any kind of benefit aside from exposure to my cool project!
- Hey $socialnetwork friends, check it out, I submitted last weekend's project that you helped me on to Hacker News!, followed by folks finding the link there upvoting it because it's cool.
You, and pg before you, apparently default to option 1. Even in the way you've worded this comment you are implying malicious intent, as if the author of the blog post tried to game the article onto the front page. Honestly, unless there's a tangible benefit to the traffic such as advertising or leads, there's no reason to game HN and most of the "voting ring" stuff you are likely observing is organic-ish, not intentionally gamed upvotes from social sharing.
Option 2 is something I have personally observed dozens of times and you should account for it in your thinking and code.
> I then jokingly opened siri and said “Open the garage”. Siri responded with “I can’t find an app named ‘The Garage’”. Lightbulbs went off. We realized we could get around the fact that Siri has no API by making apps named the phrases we’d like to recognize.
I find it curious that both Google and Apple have held back on this. It seems so obvious that there's an entire platform to open up here based on this kind of thing, but neither one seems to be interested in doing it. Instead they are privately noodling away, just incrementally building up their own vocabularies which are really pitifully small in the wider context of things. They must both know there would instantly be an explosion in 3rd party support the minute they add useful APIs, and it would be a major selling point for either OS ... I wonder why they are both so reluctant to do it?
You know, I don't hate that as a user experience. It kinda turns the house into an "intelligent" entity. "Siri, text house, I'll be home in 5 minutes" and it would turn on the lights five minutes from now or whatever you like.
That duct tape... and electrical stuff hanging off the ceiling... makes me cringe! EEs in my dad's company used to call that kind of project an "ikebana." :-)
A team at PennApps had a project [1] which used a DNS-override to take advantage of the fact that Siri defaults to Googling things when it doesn't have a native approach. They could then parse these requests and see if they could do something cool without before going ahead and just Googling it. The example they used in the demo was controlling a Phillips Hue light with Siri commands. I thought this was awesome, one of the better hackathon demos I've ever seen. There really should be an easier way to do this an spoofing Google DNS, which I'm not comfortable with even though I trust these guys.
Very cool hack! I would never have thought about implementing each command ("open the garage") with a specifically named app ("the garage"). I guess it'll work until you already have a (real) app called like the thing you want to open :)
An easiest way would have been to use Wit.AI API [1](disclaimer: Wit team member here). You can create any command in minutes and use any device capable to stream audio to the API (including your iPhone) as client. I'd be interested to have your feedback if you have time to check it out!
There is SiriProxy[1] which lets you respond to arbitrary commands by proxying requests to the Siri backend. Apparently doesn't work with iOS 7 yet unfortunately.
I see in the near future a folder named "commands," on your iPhone filled with long name apps just for automation. Are you using https or some type of SSH keys to authenticate?
I know you said your running wired instead of wireless, but it sounds like you have to run some type of lightweight server to listen to the http requests. I guess you could just port forward/trigger internally through the router.
Things like that are perfectly possible without any internet-connected services with open source software like CMUSphinx. And as an addition you can get better features like continuous listening (no need to push any button), flexible vocabulary and even speaker identification (only you will be able to open the garage). I really wonder what is cool in Siri doing that.
Nice hack! Could you elaborate on why arduino + ethernet shield will be a better choice than raspberry pi + wifi? I'm genuinely curious because I've been looking at both for a hardware project and would love to know the advantages (and gotchas) of both approaches. :-)
Consider Electric Imp too - very small, very cheap, wifi built in, and the web connectivity is handled for you so you don't need to set up/secure/manage an http server.
I've got one that will control my electric desk from my phone, one day soon.
I use a hack to have Siri retrieve my bank balance via a SMS. This comes in handy while in the car and you want to balance your checkbook in your head.
I mean, garage door remotes cost $5, the battery lasts for years, and all you do is press one button. I just can't see why you would want to make a voice-activated garage door remote.
(Integrating it into a phone is slightly more compelling)
[+] [-] dang|12 years ago|reply
A "voting ring" is when people get friends to upvote their stuff. This is against the rules. We want stories to be on HN because they're good, not because they were promoted.
It's sadly common for a great Show HN post to get demoted because its creators, eager to get it on the front page, tried to game it. I've noticed a pattern, too: usually their gaming technique is pretty weak. Perhaps that's because they're creators, not promoters. Unfortunately, it has the side-effect of making it certain that the ring detector will nail their otherwise good post, while we carry on the usual cat-and-mouse game with people pushing crap.
I've got what I believe will be a sweet solution to this problem, but it awaits time for implementation.
Please everybody, don't ring-vote your posts; just take your chances with HN's randomness. If a post is solid and hasn't gotten any attention yet, a couple of reposts is ok. Be careful not to abuse that, though, since we penalize accounts for reposting too much.
I'm going to demote this comment as off-topic so it won't get in the way of the real discussion. Send any moderation questions to [email protected].
[+] [-] jsmthrowaway|12 years ago|reply
- I know! We'll set up a voting ring to game my blog post about a garage door opener onto the front page of Hacker News, even though I don't get any kind of benefit aside from exposure to my cool project!
- Hey $socialnetwork friends, check it out, I submitted last weekend's project that you helped me on to Hacker News!, followed by folks finding the link there upvoting it because it's cool.
You, and pg before you, apparently default to option 1. Even in the way you've worded this comment you are implying malicious intent, as if the author of the blog post tried to game the article onto the front page. Honestly, unless there's a tangible benefit to the traffic such as advertising or leads, there's no reason to game HN and most of the "voting ring" stuff you are likely observing is organic-ish, not intentionally gamed upvotes from social sharing.
Option 2 is something I have personally observed dozens of times and you should account for it in your thinking and code.
[+] [-] hcarvalhoalves|12 years ago|reply
Priceless!
I wish Siri had an API though.
[+] [-] zmmmmm|12 years ago|reply
[+] [-] tomschlick|12 years ago|reply
[+] [-] sibbl|12 years ago|reply
[+] [-] Ogre|12 years ago|reply
"Siri, text house open the garage" was as close as I got.
[+] [-] coldpie|12 years ago|reply
[+] [-] foobarian|12 years ago|reply
http://en.wikipedia.org/wiki/Ikebana
[+] [-] nicklovescode|12 years ago|reply
[+] [-] vonmoltke|12 years ago|reply
Still, some sins are excusable in the name of proof-of-concept. :)
[+] [-] pearjuice|12 years ago|reply
[+] [-] habosa|12 years ago|reply
1 - http://betterthansiri.com/
[+] [-] ar7hur|12 years ago|reply
An easiest way would have been to use Wit.AI API [1](disclaimer: Wit team member here). You can create any command in minutes and use any device capable to stream audio to the API (including your iPhone) as client. I'd be interested to have your feedback if you have time to check it out!
[1] https://wit.ai/blog/2014/02/12/speech-api
[+] [-] michaelmior|12 years ago|reply
[1] https://github.com/plamoni/SiriProxy
[+] [-] arcticfox|12 years ago|reply
[+] [-] quackerhacker|12 years ago|reply
I see in the near future a folder named "commands," on your iPhone filled with long name apps just for automation. Are you using https or some type of SSH keys to authenticate?
I know you said your running wired instead of wireless, but it sounds like you have to run some type of lightweight server to listen to the http requests. I guess you could just port forward/trigger internally through the router.
[+] [-] MIT_Hacker|12 years ago|reply
Currently it's security through obscurity... so not great. I'll make the arduino only accept requests with a token next weekend.
Yeah if you take a look at the arduino code on github it's a super light http server. Currently I just do port forwarding to access it.
[+] [-] schappim|12 years ago|reply
[+] [-] hox|12 years ago|reply
[+] [-] nacs|12 years ago|reply
[+] [-] nshm|12 years ago|reply
[+] [-] amjd|12 years ago|reply
[+] [-] foxylad|12 years ago|reply
I've got one that will control my electric desk from my phone, one day soon.
[+] [-] MIT_Hacker|12 years ago|reply
I wanted to do this as quickly as possible rather than playing around with Linux and learning a new framework!
[+] [-] chaser7016|12 years ago|reply
I use a hack to have Siri retrieve my bank balance via a SMS. This comes in handy while in the car and you want to balance your checkbook in your head.
[+] [-] lcusack|12 years ago|reply
But when you say "app" what exactly does that mean? Can it just be a web app that you save a shortcut to? Or is this actually a native app?
[+] [-] MIT_Hacker|12 years ago|reply
Siri doesn't recognize the names of bookmarks you save to your home page.
[+] [-] hagope|12 years ago|reply
[+] [-] sliverstorm|12 years ago|reply
(Integrating it into a phone is slightly more compelling)
[+] [-] unknown|12 years ago|reply
[deleted]