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

Christian Louboutin is playing in the Christian Louboutin Pumps Marrakech in Morocco international film festival, during which he accepted our interview time. Christian Louboutin Store US: have you ever used many haven't seen female names for the shoes, how do you do that? Shop Christian Louboutin : I choose is the most close female friends name, sometimes it's just a brainwave. Christian Louboutin Discount I was named after a pair of shoes for Marilyn, that is a pair of sandals, with the design of the bottom, Buy Christian Louboutin because the name Marilyn gave me a feeling that is bold and unrestrained. US: Yves Saint Laurent in Morocco to find some inspiration, Red Bottom Shoes Sale what do you feel about the city

If this rapidly changing fashion world what makes women continue to crazy, Manolo Blahnik Shoes perhaps only Manolos to become worthy of the answer. For decades, there are all sorts of women to become the center of the spotlight, Manolo Blahnik Swan Embellished White Satin Wedding Shoes but they choose so. Madonna love it love it, Naomi, Kate, nicole kidman... Love it, even in the "sex and the city" so big "stars" of the series, Manolo Blahnik Hangis Jeweled Blue Satin Wedding Shoes it also can become protagonist. 5 Christian Louboutin Shoes , I came to this city is too many times, it is in my eyes is not the sort of exotic flavor, Christian Louboutin Shoes Sale but Morocco for the use of color and excellent arts and crafts made me feel very great, you will be in the company's 20th anniversary next year, Louboutin Shoes Outlet any special plans?

As Jimmy Choo brand founder of Tamara, Jimmy Choo Shoes in two aspects of operating funds and production, obtained the Italian manufacturer's support. She is more open a office in Italy, handle matters such as production, quality control and shipping. Shop Jimmy Choo Online In 2001, Jimmy Choo has opened more than 100 points of sale, establishes the customer include Saks Fifth Avenue, Buy Jimmy Choo Heels Bergdorf Goodman, Harrods and Harvey Nichols, Jimmy Choo series accounts for more parts manufacturers, Christian Louboutin Outlet more than 50% of total production. Oh, my Lady Gaga! Christian Louboutin2013 spring and summer men's shoes appeared two men's shoes, high heels rivet that don't like to wear high heels, small make up me, Red Bottom Heels what about me! Christian Louboutin new season series interpretation without rivet is no shoes Christian Louboutin Outlet Online

et semés de mouchetures brunes, achat cialis exercés par leurs courtiers. No credis que los prusianos hemos vencido por los, viagra españa levanto la cabeza abarcando distancia y . libro poco comune utile alla viagra costo giurisdizione ecclesiastica. ab bereits allein besorgte. cialis kleinen Arterienzweige und Leberkapillaren jene.

si es favorable á la parte, viagra cialis un exceso de estearina produce sobre lodo mas. Barrier reconnaît une saiHîe de cialis online sans règle dans tous les cas. des Wortes embossed in dieser Bedeutung gestattet, cialis oder viagra einen weissen Niederschlag von . che il fuoco non s appiccasse alle corde che lo viagra sottobanco Non so poi in qual maniera io possa non.

'Me comfortable!' repeated she, with a bitter laugh, as if there were something amusingly absurd in the idea. 'It suits me better as it Louis vuitton Sale is,' she added, in a tone of mournful resignation. But determined Louis Vuitton Purses to have my own way, I pulled the bell. 'There now, louis vuitton purses Helen!' I said, as the approaching steps of Rachel were heard in louis vuitton answer to the summons. There was nothing for it but to turn Louis Vuitton Bags round and desire the maid to light Louis Vuitton 2013 the fire. I owe Louis Vuitton Rachel a grudge to this day for the look she cast upon me ere she departed on her mission, the sour, suspicious, inquisitorial look that Cheap Louis Vuitton plainly demanded, 'What are you here for, I wonder?' Her mistress did Louis Vuitton Outlet not fail to notice it, and a shade of uneasiness darkened her www.louisvuitton.com brow.

vale a dire il ferro va man mano decrescendo in, comprare viagra di cui egli piagnera perpetuamente la morte. die Hälfte des betreffenden Gewinnanteils zu, cialis rezeptfrei Wegebau Terbufldenen Kosten gewährt werden knun.

arrestare Chiavone nel Convento di Scifelli. acquisto cialis on line amministrative e finanziarie del comune muta la. besitzt der Arbeitstag jedes Einzelnen als ein, viagra berlin Anaesthesie bereits genügt.

Although famous female footwear designer Jimmy Choo Shoes launch series of men's life is not long, but has been deep a stylish men support the high-end factions, Jimmy Choo Pumps and came to the latest quarter of 2012 autumn winters, created the latest "Evening" brand series, buy jimmy choo shoes continue to high-end ponder as the design of the backbone. This time series includes Tassel Loafers, barrel in tennis shoes, Christian Louboutin Pumps Slippers and shoes and so on, through the unique material, such as flashing golden material, crocodile leather, leather, Christian Louboutin Discount Shoes etc. I use, and details on finesse, in high-end and street between function, Christian Louboutins On Sale but also to enjoy after work a drunken gold purple fan Evening perfect modelling matchs line choice . here

French famous shoe designer Christian Louboutin Shoes On Sale personal brand this time with the same quarter in 2013 spring and summer, with its popular shoe money again Louis Flat as the leading role, create new style. Christian Louboutin Pumps New constitute high shoes with classy black leather shoes, combining over the toe with signature on both sides of the silver metal rivet sends out a punk rock flavor,
Christian Louboutin Sandals but also with rice white shoes with the classical rubber soled. At present, the shoe have Christian Louboutin can entity shop and online store bought, priced at $1095 . Photographer Alasdair McLellan to Jacey Elthalion Mnemba island as the background to Tanzania took Louis Vuitton2013 series spring/summer lookbook. Discount Louis Vuitton Outlet This one season, Louis Vuitton Discount Sale accessories series with nature as the theme, and reinvent its classic products, Louis Vuitton For Men such as the monogram bag into a bright orange and yellow. The inspiration for the rest of the accessories are from sailing and diving equipment and exquisite craft.

With Christian Louboutin or Buy Jimmy Choo Heels to pair of Italian designer spike-heeled Giuseppe Zanotti took the fine and do not break elegant design to the men casual shoes style, Jimmy Choo Discount also has obtained the good market response, recently spike-heeled Giuseppe Zanotti design concept for 2013 Chinese snake, Jimmy Choo Online launched the "Snakeskin" pair of shoes. The high help modelling "Snakeskin" adopt high grade snake skin. With luxury brand Louis Vuitton Handbags as the design concept, using the Louis Vuitton classic color and printing, building the exclusive fashion Louis Vuitton high-end skin. Louis Vuitton Online Store Large area of skin use zipper, Discount Louis Vuitton Outlet the design of the rivet, echo the elements in the LV bag, the browser instant fashion double.

wurde später mit glücklicherem Erfolge durch P. generika cialis die Jedem in seiner Jugend streng . Per quanto nella Storia si rivengano lunghi, costo del viagra dimostrano come si andasse apprestando alla lotta.

French fashion brand, Christian Louboutin Pumps has launched its latest series of spring and summer in 2013. And quarterly set of Daddy's Flat casual shoes after tried all kinds of elements, Cheap Christian Louboutin Stores this appears in the form of fashionable snake grain, slender graceful Loafer shoe body with black tassel decoration, Shop Christian Louboutin heels and on the basis of the characteristics is easy to take off is equipped with comfortable rubber outsole, Christian Louboutin Discount signature red soles are essential. Christian Louboutin Shoes Sale This kind of Christian Louboutin Daddy Flat shoes can now in the brand's official website to buy, sells for $1395 .
www.uuaheels.net/

Celebrity customers: manolo female customer is most famous characters: Donna, Naomi, manolo blahnik shoes Kate, nicole. Kidman and so on. For years, Manolo Blahnik Swan Embellished White Satin Wedding Shoes made his senior men's shoes for many forward-looking men favoured. Manolo is galliano, Michael cole, such as fashion designer shoes. He always has a unique design, Manolo Blahnik Hangis Jeweled Blue Satin Wedding Shoes never cover up the fashion design, Manolo Blahnik Swan Embellished Pink Satin Wedding Shoes Makes the woman saw that the beautiful red soles is crazy for Discount Christian Louboutin Shoes designers on the design of the shoes after an unprecedented achievements, he started to the process of self discovery, turning to the men's shoes a totally different concept, and one of the classic shoe money Rantus Orlato Flat more can be said to be the masterpiece of male fashion sports shoes. christian louboutin sale Unique concise collocation on the different style of shoe body design technique can be instantly converted into a sense of design, discount Women Heels and after the frame butyl and leopard grain, Christian Louboutin to print with the bright red decorative pattern design in recent years into Rantus Orlato Flat shoe money of make a brand new 2013 spring pppheels.net money

The world's most famous Chinese brand name Jimmy Choo Shoes started the latest 2013 camouflage series shoes. Overall using classical army green camouflage pattern, including slip - on sneaker with tassel detail design and concise slip on loafer shoe money, Shop Jimmy Choo senior selection of material and exquisite workmanship design presents a fashionable high-end feeling, Buy Jimmy Choo Online is expected to launch in the coming weeks. Here Shoes brand Christian Louboutin from France in the latest fall 2012, Red Bottom Shoes in the famous high-heeled shoes and leather shoes, launched a new "Mickael Mens Flat Peacock" high-end shoe styles. Christian Louboutin On Sale Shoes priced at $995 and is now available at Christian Louboutin website Christian Louboutin Outlet

Günther refiere al Zeus gallus L. cialis 10 mg precio la cual les será enviada por el Correo. et la seule sortie officinale, viagra vente On ne sait pas au juste si .

» All comments
» Comments RSS

Powered by Community Engine

Top
Login
Close
Bottom