Monthly Archive 2018-11-28

ByMogens

MongolianBarbecue is out as 1.0.0

It’s a nifty little tool with a silly label, but since it implements queues on top of MongoDB, the name was inevitable! 🀠

So, if all you have in the world is MongoDB, and you want to do some messaging, you can do this:

var config = new Config("mongodb://MONGOBONGO01/some-db", "messages");

to create a configuration, and then you

var producer = config.CreateProducer();
var message = new Message(Encoding.UTF8.GetBytes("hei"));

await producer.SendAsync("destination-queue", message);

to send a UTF8-encoded text to a queue named destination-queue, and then you

var consumer = config.CreateConsumer("destination-queue");

var message = await consumer.GetNextAsync();

// ... handle message here

to receive the message and handle it.

You can read more about it on the GitHub page, and you can get the binaries from your favorite package repository.

Read More

ByMogens

Tababular 3 is out

Nothing happened, really, since announcing the beta, so this is just a little public service announcement to tell you that Tababular is out now as version 3! πŸ™‚

“What’s tababambabular?”, you might ask?

It’s just a little nifty library that can format data as tables, which is a nice thing to do sometimes.

E.g. in automated tests, instead of outputting one manually formatted crappy-looking test output after another, why not just collect the data and print it as a table? Here’s an example from the Fleet Manager’s driver, where emitted saga snapshot states are presented in a nice, readable summary form:

+-----------+--------------------------------------+
| Revisions | SagaId                               |
+-----------+--------------------------------------+
| 0         | 42d9beb5-d94c-4f62-9c60-65beb40c9b5e |
| 1         |                                      |
| 2         |                                      |
| 3         |                                      |
+-----------+--------------------------------------+
| 0         | 1c4c3db0-9ac2-4541-9752-ed01719aa217 |
| 1         |                                      |
| 2         |                                      |
| 3         |                                      |
| 4         |                                      |
| 5         |                                      |
| 6         |                                      |
| 7         |                                      |
+-----------+--------------------------------------+

Or how about CLI applications? Check out how Fleet Manager’s administration CLI presents the list of accounts in our DEV environment:

Happy formatting! πŸ“œ