10 ms·
Huginn, an Open Source IFTTT / Yahoo Pipes
- tectonic 14y agoThis has been my side project for the last few months. I'm very interested in your feedback!
- cjbprime 14y agoAwesome. Thanks so much for releasing the source; this looks like an extremely significant contribution. Kudos!
- Stwerner 14y agoThis is awesome! We were just talking about building a desktop IFTTT. Can't wait to play with this tonight and learn to make agents.
- tectonic 14y agoPlease let me know if you have questions. I'm planning to make a screencast tutorial on how to make and link Agents.
- tonyedgecombe 14y agoI've got a Windows desktop product that does something similar for file activity. The plan is to expand the triggers out to other areas http://www.folderagent.com http://www.folderagent.com
- frio 14y agoI've been building something similar in Erlang/Elixir (OTP's a very good match for an event-driven system which connects a series of inputs to outputs), but never quite managed to get it integrated beyond a few minor inputs/outputs (the fact Erlang is less popular makes finding decent OAuth libraries difficult, for instance). The web interface you've made in particular is impressive; so far my "pipes" are just more scripts. Well done on this, I'm looking forward to playing with it tonight.
- rektide 14y agoSeeing a Haskell project on github (https://github.com/frio/ifrit https://github.com/frio/ifrit) that sounds similar under your handle- post the Elixir one! Would love to see some Elixir code in such great project area, whatever the state!!
- frio 14y agoHeh, I'd forgotten about that one :D. I've had the idea kicking around for a long time, and have spiked it in a few different languages (the Haskell version was mainly to try out FRP and reactive-banana; I've got the furthest on a Python one that hinges around agents tied to RabbitMQ as my current "production" deployment). I'll try and get the Elixir stuff cleaned up and published over the next week :). The only source I've implemented so far is inotify (for eventing off Dropbox, so I can rebuild my blog); so far I've spent most of my time digging into the vagaries of the OTP and Erlang as a platform, rather than implementing.
- utopkara 14y agoAwesome project! IFTTT should really be part of every service that has a little bit of interactivity, even at a corner. Too bad I don't know ruby. Please give us updates on your experience as you use it as well.
- jnazario 14y agothanks for sharing, looks useful. i'll have to play with it, i have plenty of uses.
- jmathai 14y agoWow, that's one hell of a side project. Looks really awesome. Do you have plans on having a hosted version people can use? I love the idea of hosted open source projects which allow you to easily export your data if you decide later to run it yourself.
- tectonic 14y agoThanks! I'd like to make a version that's trivial to deploy to Heroku, or perhaps a pre-build micro EC2 image? I'm not sure I want to host more than a demo version because it could be used for scraping. The core idea is that this is something that you run yourself because you care about who has your data.
- adambenayoun 14y agoThis is a great project and will surely help a few people down the road starting their own clone of IFTTT :)
- jmathai 14y agoAwesome. Great work. Looking forward to digging in.
- cjbprime 14y agoCool. FWIW, I'd use a micro image (or instructions for installing on top of a standard Ubuntu 12.10 image) if it was available.
- coopdog 14y agoA Heroku or EC2 build would be amazing Hosted would also be good though, I think there are a whole class of people who don't care all that much who has access to their data so long as they could self host it (or have someone else host it for them) if the service ever stopped running.
- cbhl 14y agoI don't understand why those people would be using Flickr, Facebook and Twitter instead of, say, OpenPhoto, Diaspora, and StatusNet.
- frenchman_in_ny 14y agoGreat project, though the name is confusingly similar to an existing open source tool [1] for photographers. [1] http://hugin.sourceforge.net/ http://hugin.sourceforge.net/
- jfim 14y agoInteresting project. Were you aware there's also an unrelated project called Hugin[1]? [1] http://en.wikipedia.org/wiki/Hugin_(software) http://en.wikipedia.org/wiki/Hugin_(software)
- tectonic 14y agoNope, I wasn't. :) Do you think I should change the name?
- bithive123 14y agoFWIW at first I thought this thread was about Hugin.
- cjbprime 14y agoRegardless of the hugin conflict, it'd be nice not to have to spell the name out to people when recommending this. Maybe even something ambitious like just calling it "Tubes"? (I'm not aware of anything else with that name.)
- skeletonjelly 14y agoI vote yes. It's one consonant different from an existing application/thing. Having said that I'm terrible with naming things and can't offer any alternatives.
- skeletonjelly 14y agoAh just saw the reason for the name on github. I thought you chose it out of the blue. What about a line from Anchorman: "Great Odin's Raven!" or something to that effect :P
- icebraining 14y ago@Metapony: you're hellbanned, for quite a while now.
- Metapony 14y ago
- mat3001 14y agoDoes it also run with postgres?
- ericcholis 14y agoWithout diving into the code (which I plan to do over coffee tomorrow), what would the User-Agent string of the spider be?
- tectonic 14y agoAt the moment, it's the curl default I believe.
- arunbahl 14y agoThis is really fantastic. I've been working on a new UI for something like this and I'd love to compare notes once I dig in a little bit. Great stuff!
- tectonic 14y agoSend me an email :)
- mindcrime 14y agoAs a side note, there is another "pipes like" project out there, called DERI Pipes[1]. Development appears to have ended some time back, but I've created a fork[2] of the Github project and am planning to do some work on this. Anybody else who's interested in this sort of thing, give me a shout. We also have a demo server setup where you can play with the thing, at: http://demo2.fogbeam.org:8080/pipes/ http://demo2.fogbeam.org:8080/pipes/ [1]: http://pipes.deri.org http://pipes.deri.org [2]: https://github.com/mindcrime/semanticwebpipes https://github.com/mindcrime/semanticwebpipes
- eclipxe 14y agoThis is nicely done - not just the idea and code, but the documentation and examples. Very nice, I look forward to using this, thank you for sharing it!
- sebul 14y agoReally cool! Did you consider using phantomjs thru capybara in order to use webkit to interact with javascript websites?
- pitchups 14y agoThis is great! Since it allows combining and parsing RSS and XML feeds - do you think it could be used to build a personalized RSS / Google Reader replacement? Just a thought.
- tectonic 14y agoWell, that's very hot right now. :) Yes, actually, I use it to scrape a couple of RSS feeds myself since I couldn't be bothered to use a reader when I had this.
- pitchups 14y agoThanks, that is what I was thinking of doing. Maybe even set up a list of the RSS feeds on a simple text / HTML page; then use Huginn to pull the entire list from the URL, combine, sort, remove duplicates and output the HTML. Anytime you wanted to change the list of feeds, you can just edit the HTML page.
- fasteddie31003 14y agoReminds me of my side-project that I just decided to work full time on, Process Smith https://process-smith.com https://process-smith.com
- urza 14y agoOh nice! Can I use it (create custom agents) if I dont know any ruby? Also I will need to intall ruby on my debian personal server.. which I'd rather avoid (I already have there python, php, perl..), but having custom IFTTT+pipes is just too tempting :)
- smogzer 14y agoShould have been coded in python :( . Whenever i see a project that i think is cool and then see that it has been coded in languages other than js, c++ or python i consider it just for my usage, and not for my contributions as developer.
- outside1234 14y agohai Google employee!
- ichirotherager 14y agoYahoo pipes is the bomb. I wish they would have maintained it. Thanks for building this, I can't wait to put it through it's paces!!
- frabcus 14y agoLovely! Is there a ready-hosted version, so I don't have to install it?
- anigbrowl 14y agoGood stuff, although I'm not a Ruby user. Tools like this should be much more widespread. Code Is Bad because you can't write code without a minimum level of vocabulary and syntax, and that excludes a lot of people. True, code offers the most flexibility, but 99% of the time people don't need all that flexibility and want to accomplish fairly straightforward tasks - which is why GUIs are the norm. With GUIs and visual network design, users select from a palette of what's available and can connect components together without wasting time on syntax. The oft-repeated cry that 'everyone should learn to code' is wrong, wrong, wrong. It's like telling a kid to learn CAD and use a makerbot instead of providing them with a Lego set. Coding is great when you want to make a procedural something generator. If you want to make something specific, then coding often imposes an annoying and unnecessary layer of abstraction. For example, you can write music and/or perform sound synthesis in a superbly powerful language called CSound, but only a tiny number of academic masochists bother to do so. Commercial DSP engineers write in C or assembler, commercial sound designers use Max or Reaktor, much as most electronic engineers use SPICE rather than describe their circuits in code. In short, keep up the good work!
- lifeisstillgood 14y ago>> The oft-repeated cry that 'everyone should learn to code' is wrong, wrong, wrong. It is right, right, right. We don't tell our children, it's ok to stop at crayons and comic books. Yes, DSPs and CAD are much more productive at their niches than coding in a "normal" language. I find Chrome more productive than "telnet 80" - but knowledge of coding helps me structure my excel spreadsheets more usefully than those produced by intelligent people who cannot code. Code literacy is important not just because there are faster or easier ways to express ones ideas in a given domain. Literacy is not about using one language - it's about learning to structure thoughts and express them in the best way possible - something learnt cover thousands of years and code literacy is the same - we epxress our thoughts better if we are literate. Having said that, I cannot wait to try this out,
- rektide 14y agoNo one would call crayons and comic books bullshit, because they are artistic mediums where the expression can stand by itself, has the intrinsic value of being expressive. Yet in CS there are very smart people such as Alan Kay and the Constructivist types such as former-OLPC now-Sugar, all screaming about how we're learning brain-dead languages on machines doing their worst to make it impossible to become useful and literate without a ten year breaking in period until we become journeymen codesmiths. These machines & languages are not trying to help all of us become fluent about what it is that is running: they are there so that those who already know the language and the program can continue advancing it, until it's shippable, at which time it will execute: when we say learn to program, more often than not we mean learn to fit yourself in to that production cycle. I'm not trying to argue one way or another about the learning to code merits, but it's important not to think of coding as this completed worthwhile thing in the way we do it! OP is an example of systems research to allow us to create agency in systems: that is programming, coding of behaviors, and one who gets good at it has gained a coding literacy. Ditto for spreadsheet wizards! My point is that we are free to build entirely new forms of literacy both akin and unlike the programming languages we have now, and that the one's we have now are arbitrary. And, judging purely from the size of assumed knowledge passable programmers rely on, I'd contend, as do others, we'd do a lot better at making a literate society with different languages and forms, more tailored to introspection and mirroring their behaviors than towards producing a running application artifact: if we want people to learn systems, make the systems be more about being learnable and meddle-able than about being execution engines. It's our agency we need to see reflected, and IFTTT and OP are great examples of coding where seeing our agency at work at the end is far more of a direct path: it is radically different than how programming today works, in a good, different and fundamentally very important way. In leaving, I'll point to a perspective on these better machines: these are machines that build agency by way of using APIs of other machines. I'm convinced that machine to machine interface is the key to making programming not suck, not a drain for this planet, for those who would be composers of code. rektide's gentle suggestion- machine to machine systems interfacing is the way to beget human/machine interface.