BUG Community

Welcome! Log In

aturley's Blog

Chat with a BUG

I little while back I stumbled across an article that talked about one man's work of building an extendable IRC bot with OSGi.

A little more recently, I read about why GitHub encourages side projects, which includes a brief description of their chat bot.

At BUG, we use IRC to keep in touch with our customers, but we also use it to keep in touch with each other. And we have a few IRC bots hanging out in the channels, keeping us informed of things like build status and linguistic transgressions. I thought it would be fun to write a pluggable IRC bot for our platform. Ideally the bot would run constantly, and we could modify its behavior dynamically by loading and unloading OSGi bundles. We could also leverage the strengths of our platform, like easy integration with accelerometers (Surprise! there's an accelerometer in the LCD module), cameras, and electronic circuits. I also thought it would be a good way to develop my understanding of how OSGi bundles should be created and hooked together.

The project is up on our GitHub repository. Right now there is very little documentation, and some of the parts only barely work, but I've managed to hash out a few ideas already.

One of the big ideas I wanted to play with was where to draw the line between bundles. I wanted to be able to add behaviors dynamically, so obviously behaviors were candidates for becoming bundles. I created an interface for handling IRC channel messages; bundles that wish to handle these messages can create objects that implement the com.buglabs.bug.ircbot.pub.IChannelMessageConsumer interface and then register these objects as services, which are then notified when channel messages are received. This is an example of the whiteboard pattern, which occurs frequently in OSGi. I also separated the public interfaces into their own bundle. This means that the bot implementation and the behaviors both depend on this bundle, but they do not depend on each other. As a consequence, I can swap bot implementations without reloading behaviors. There are two bot implementation on GitHub, com.buglabs.bug.ircbot.impl.irclib (based on irclib) and bot-osgi/com.buglabs.bug.ircbot.impl.jerklib (based on jerklib).

I've been looking for an excuse to experiment with Mirah on the BUG, and this project has given me a chance to do that. The behavior in com.buglabs.bug.ircbot.behavior.easyshucks is implemented in Mirah and takes advantage of Mirah's use of blocks to implicitly implement interfaces that have a single method. The syntax was modeled off of isaac, an IRC DSL for Ruby, and the supporting code can be found in com.buglabs.bug.ircbot.behavior.easylistening.

This has also been a great chance to become a little more comfortable with Git. I've been doing this thing long enough to realize that Git will be replaced by something else some time in the future, but for now it seems to be one of the best things around for keeping track of source code.

I've learned a few things while working on this project, or at least had some prejudices confirmed. First, Git isn't as scary as I had lead myself to believe. I'm sure there are weird nooks and crannies that I will stumble into, but so far it has been as painless as everybody promised it would be. Second, writing OSGi bundles requires a lot of boilerplate. Even the Mirah example requires two files and a supporting package. It would be nice to find a way to make it easier to get software on to our platform without relying on code generation or copying files from existing projects. Third, while I still admire Java jar files as a method of distributing software, I think the space of possible solutions to the problems of software partitioning, distribution, and dependency management is still open to exploration. OSGi provides tools to manage some of these issues, but the amount of boilerplate required to make it all work leads me to believe that the situation can still be improved.

Ultimately this project is about having fun. I'm going to keep working on it in my spare time (or when I need a break), adding features and functionality. It would be nice to run it on a dedicated BUG and encourage people to slowly make it more useful by adding new behaviors. We'll see what happens.

Post Comments

Add Your Comment!

Log in to leave a comment or Create an account

Millionen . Allerdings Wann & alle Trendsetter Eine gro ? E Last von Ihr Geld in Machen Gesetz ��ber die michael kors outlet online sale store Transformationen und mit Kost��men und Zubeh? R zu michael kors hamiton invest . Um bei IHNEN of this Geste Michael Kors crossbody bag
-Sterne- , Film -Figuren und Pop -S michael kors handbags wholesale ? Ngerin , sterben musikalische Alben zu ERSTELLEN michael kors bags on sale Wie our Modus - Ikone AUSSEHEN . War [linlei0929] available Immer SIE IN IHREN Theater Sport kahl [linlei0929] verbreiten Modus
SIE , der Anbieter hat cheap Michael Kors sowohl System-und Software . Dies Kann IHNEN helfen cheap Michael Kors wallets eV , Eine schnellere Antwort zu bekommen , owner michael kors black Friday WENN SIE irgendwelche probleme inner

Amazing!I also wish him good luck to defend his gold medal. I like to share it with all my friends and hope they will also encourage him.
buy lortab online

Well, very good post with informative information. I really appreciate the fact that you approach these topics from a stand point of knowledge and information. This is the first time, I visited at your site and became your fan. You are bookmarked. Please keep on posting.
buy valium roche online

Hey your collection is outstanding, I never see such a type of collection before.Thanks for sharing it with us. keep it up.
buy codeine online

Wonderful site and I wanted to post a note to let you know, ""Good job""! I’m glad I found this blog. Brilliant and wonderful job ! Your blog site has presented me most of the strategies which I like. Thanks for sharing this. 
Buy Adderall online

von Versicherungen zur Verf��gung ist , Wie sterben Krankenversicherung ( Krankenversicherung ) , Lebensversicherung , Versicherung Authentic Louis Vuitton Bags usw. . ? Funeral Eine Politik Verk ufer IST Ein true religion Unternehmen ,
"Na ja , vielleicht. Aber was, wenn truereligion.com er sie nicht gesagt, dass es morgen? Es sollte ein new balance factory outlet secretand eine ��berraschung sein , und ist ein Mann ein christian louboutin outlet Recht auf sein eigenes Engagement ruhig zu halten bekam , Nike Free 3.0 hat er nicht? Wir wouldn'thave bekannt , wenn Fr?ulein Melly Moncler Outlet Tante nicht lassen Sie es aus . Aber Scarlett muss official true religion gewusst haben, er war tomarry Fr?ulein Melly geht irgendwann. Warum new balance shoes haben

new balance outlet online

h¨¹bsch, und ich wei? verdammt gut, sie haben kein Whisky,

Michael Kors Outlet Handbags

Roggen Vaters ber¨¹hren bekam . " " Ashley Wilkes sagte,

michael kors

dass sie eine Menge von Landschaft und Musik. Ashley
Unter

gucci bags

sterben Masse Kosten senken Kann unterlassen . Und VOR Allem

Michael Kors Outlet Store

Nicht KOPIEREN your TV -Star sofort nach der Show, ?h

Michael Kors Outlet

Nicht bezeichnet einen Nachahmer zu unterlassen . Kurz ges?gt, ?hm

kate spade

Eine
theslightest macht flattern und kreischen . "" Nun, man

prada outlet

kann nicht ihre Schuld . Sie haben zu schie?en Cade

Louis Vuitton Store

im Bein . "" Nun , ich wurde lickered oder

chanel outlet online

ich h?tte es nicht getan ", sagte Stuart .
gesch?lt

Louis Vuitton Outlet

, bis wir sie aus. Alles, was sie werden wissen,

 

 

 

I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I’ll be subscribing to your feed and I hope you post again soon.

Máy tập cơ bụng ad rocket

Jimmy Choo spring/summer 2013 continued to soul-rending nature s movie idol as a creative inspiration. Jimmy Choo Heels Movie "Justine" in star Anouk Aimee, her wonderful charm and natural and not artificial image, Buy Jimmy Choo to create a blend of sports season, languid is lazy, not the wind of the craft feel of folk wind, and the traditional spring and summer series. Jimmy Choo Online Store Evening bag is to use synthetic resin and bright the cortex, transparent crystal elements, become a shining eyes focus. Christian Louboutin For Women The Jimmy Choo shoes have long been a favourite of many artists celebrities, the latest 2012 chun xia series, the designer is to add waterproof machine basic design allows you to put on it can immediately after the aura is dye-in-the-wood.

Top shoe brands Manolo Blahnik Heels for the first time to participate in the upcoming London fashion week, Manolo Blahnik Wedding Shoes 10 am local time on September 15th to a static exhibition held at 4 PM, but the address has not yet been finalized. Manolo Blahnik Swan Embellished Navy Satin Wedding Shoes Designers improve before said in an interview: "now every designer wants to be able to come to London, Christian Louboutin Outlet because here is different from milan, Paris. Now these buyers from all over the world are very value of London, London is the future. Louboutin On Sale In an interview, makes a said" was chosen to attend London fashion week, because of much more special than any milan and Paris, access to more buyers, Christian Louboutin Store believe that London is a mainstay of the fashion in the future. "

In order to show the theme of film noir, Christian Louboutin On Sale and imitate Hitchcoc female strong and full of charm of the image, the photographer Mikael Jansson will Nicole Kidman is a sexy protagonist, Shop Christian Louboutin reflected the brand has always been confident, ornate style. A new season of autumn/winter ads will be released on August the global each big media. Jimmy Choo creative director Jimmy Choo Sale Sandra Cho said: "Nicole completely caught our autumn/winter 13 series of mood and atmosphere. She describes the role of the Jimmy Choo woman various character this season, Discount Jimmy Choo strong, sexy, and there is a seductive mystery." "I am very enjoy able to deduce a strong, sexy, Jimmy Choo For Women and the role of the manipulation of the big picture. I have a good communication with the photographer, his instincts are very in place, know my thoughts and feelings, Designer Women High Heels and can be reflected through the lens it." Nicole Kidman says.

As the cold wave hit, Jimmy Choo Shoes Online plenty of people have is stepping on the early autumn winter favorite ugg boots. But look around, Discount Jimmy Choo Sale almost people feet a pair of ordinary UGG is a bit boring? Don't worry, Jimmy Choo UK here recommend to you and Jimmy Choo UGG cross-border cooperation in the new tide of UGG boots, leopard tail, rivets, tassels, Jimmy Choo Women Heels qiu dong various fashion elements of disposable recommend great strength! The stars around the shoe shape rivet, add a lovely nifty in the hale and hearty. Boots mouth tasseled, match the same rivet edge, Jimmy Choo Pumps Online in the pursuit of technology at the same time increase the fashion sense of feeling, louboutin shoes sale online let a pair of ordinary UGG immediately tide Fan Er is dye-in-the-wood.

"This book is Manolo blahniks life is introduced, Manolo Blahnik Wedding Shoes Sale and The combination of a fairy tale," Morton says, "The story from a look in banana plantation in childhood until he now set up shop at Chelsea - and The Elves and The day mixed with a fairy tale. Manolo Blahnik Wedding Shoes White Fashion designers do not like too blunt, so what is better than The combination of ancient and famous fairy tale of The idea? Manolo Blahnik Hangis Jeweled Blue And in The end, also let The designer himself for his story with illustrations." Tourmaline biography with Christian Louboutin For Sale Lacroix biography pattern of fairy tales, Morton February issue of the Lacroix biography adopted fairy tale "sleeping beauty". Like Lacroix, Louboutin Shoes Online tourmaline has enjoyed during the process of illustration for his book . Jimmy Choo Pumps

Everyone should remember in "Sex and the City",Christian Louboutin Online Sale fashion actress Carrie to spike-heeled Giuseppe Zanotti heels, only to describe with crazy! Christian Louboutin Shoes Discount The famous designer brands recently released 2013 autumn and winter series, a new book or at a trend to use a lot of costly gem with bright color, Giuseppe Zanotti Pumps let the high-heeled shoes also become one of the most gorgeous phantom of the opera! Supermodel Anja Rubik to Jimmy Choo Shoes be a partner with the famous Italian fashion designer spike-heeled Giuseppe Zanotti spike-heeled Giuseppe Zanotti for Anja Rubik series shoes and handbags, a few days ago, Jimmy Choo Heels Sale two people once again to launch the series fashion advertising, photographer Paola Kudacki with a mirror . jimmy choo shop

We d like to have a lot of people have such problems: poor, Jimmy Choo Sale out of a short trip, at the feast the way back home, Jimmy Choo Shoes have to take a few clothes, but form a complete set of shoes is very bad. Buy Jimmy Choo How is bad to put inside the box, fear of extrusion deformation better shoes, larger and very take a place, can only every time out to find a contradiction by wearing shoes. So first saw this shoe bag Jimmy Choo shoe case, Christian Louboutin Heels I think it must be. The shoes package shoe case is slightly a little expensive, because just a bag of shoes also with the crocodile skin material. Priced at $2295, Buy Christian Louboutin Shoes said despondently did back to look for alternatives. Or a shoe bag price is more expensive than a pile of shoes also, it is not too can accept, away from home when I don't know what is the love of shoes or love this bag .
louboutin uk

French brand Christian Louboutin Store New York will be located in the Meatpacking OuDeNan shoe store, covers an area of 1035 square feet, Discount Christian Louboutin Heels for the store design still has not yet been determined, but at least there is one thing certain, that the store will be laid on the designer's most iconic red carpet. Christian Louboutin Shoes Outlet In addition to men's shoes, also plans to introduce more men's products, such as men's bag. French brand Christian Louboutin, Louis Vuitton Bags Sale Christian Louboutin brand Alexis Mourot chief operating officer said, "although the men's shoes is only a small part in the fashion industry, Louis Vuitton Online Sale but we believe that the future it will be potential" .

Summer to should be particularly pay attention to the choice of shoes, Women Handbags Online but the stars have a favorite. Called star never far, LV bags Sale summer is a variety of banquet, cocktail party and parties "season", persisting some cool decorous grade follow sandal high, of course, is the top priority. LV Bags Online It today for you recommend a few pairs of women's favorite star Jimmy Choo sandals. When the metro-goldwyn-mayer (MGM) Jimmy Choo Heel company agreed to take comedy "Legally Blonde 2" (Legally Blonde 2), when people are in doubt, Robert this Sue mulberry Jimmy Choo Wedges Online is the target audience. But the 40 s company acquisitions and restructuring expert Jimmy Choo Pumps For Cheap who has attended with aflame mood in the UK premiere of the film

MO Bar the Jimmy Choo afternoon tea includes a range of desirable dot, Women Wedges such as foie gras heels crackers, ham and mustard sandwich and smoke salmon and cucumber cream cheese. Also, Bridal Shoes afternoon tea will also present many desserts, including Jimmy Choo milk chocolate high heels with lemon and chocolate chip cookies; sandals Litchi, rose and red berries white chocolate mousse handbags; Passion fruit, mango butter treasure bead; Strawberry with grapefruit green tea mousse frozen gel milk, as well as the MO Bar brand of ginger and raisins English muffins. April 2 to April 7, cl sandals the guests besides can enjoy delicious, full of characteristics of Jimmy Choo afternoon tea outside, more can reserve Jimmy Choo L900 accommodation is favorable, the most fashionable of hk $11800 per night CL Mary Jane Pumps in the city real estate of the mandarin Oriental hotel to enjoy luxury experience. Package includes the following services: luxury L900 land suites hotel for one night, MO Bar Jimmy Choo double afternoon tea time, and each check-in, the guest to choose a pair of CL Slingbacks openeth series in hk $5000 worth of high heels.

» All comments
» Comments RSS