Category Archives: communication

Let’s have a virtual Emacs conference in August – help me make it happen!

Why August? It’s an arbitrary target, although it tickles my brain to think about celebrating my 32nd birthday with awesome people sharing awesome ideas. (Incidentally, I’ll also reach the point of having been using Emacs for about half my life – doubly neat!)

Anyway. I think it would be great to have some kind of knowledge-swapping thing. Since I’m not particularly keen on travelling, not everyone can make it out to Canada, and it’s hard to make awesome in-person conference recordings anyway, maybe a virtual conference would be a great bet. I’m willing to spend what I would have paid for airfare on things like organization, speaker honoraria, and other good things.

I enjoyed the Emacs Conference in 2013, and I think we should figure out how to have these kinds of get-togethers more often. Emacs Chats and Emacs Hangouts are tiny steps in that direction, and I’d appreciate help in making this and many other community-ish things even better. =)

2015-02-02 Imagining an Emacs conference -- index card #emacs #conference #plans #organizing-people

2015-02-02 Imagining an Emacs conference – index card #emacs #conference #plans #organizing-people

So here’s what I imagine a virtual Emacs conference might be like. People volunteer, and somehow we organize a schedule of fascinating talks. This could be a full day, or maybe we’d spread it out over a couple of half-days (maybe even scheduled for different timezones so that everyone has something they can interact with life). We use Google Hangout on Air or a similar platform that can stream and automatically record. There’s the speaker with slides and screensharing, and there’s a moderator who can pick up questions from IRC and Google Hangout in order to ask them out loud. We might even be able to pull off panel discussions. Afterwards, there’s a playlist and a webpage with all the videos/MP3s/OGGs, and people can share their notes/discussions/follow-ups.

All this is immensely doable with the technology we have today. For free, even. Anyway, the technology should be okay.

What about topics? Here’s what I’m particularly curious about:

  • New features in Emacs 25 (and beyond)
  • Demos, workflows, and setup tips for popular toolsets/needs (ex: awesome setups for Clojure/CL, Rails, Javascript, C++, Java, writing, research)
  • Fascinating uses of Emacs
  • Good practices for Emacs Lisp: automated testing, performance, reliability, coding style/idioms (maybe even workshops along these lines)
  • Demystifying cool stuff: how core modules work, how to contribute to Emacs
  • A hackathon: get package.el headers on everything! fix bugs! make improvements! document!
  • Emacs microhabits, learning
  • Workshops: intermediate/advanced use of Org Mode, Calc, ESS, and other powerful packages
  • Emacs community-building and sharing

And people can suggest other topics, too. =) Maybe we can even figure out some kind of unconference setup: people suggesting topics they can share, quickly voting on what they’re interested in, and breaking up into separate “rooms” to share/discuss.

2015-02-02 Making a virtual Emacs conference happen -- index card #emacs #organizing-people #conference #planning #questions

2015-02-02 Making a virtual Emacs conference happen – index card #emacs #organizing-people #conference #planning #questions

An Emacs conference would be awesome. Here are my (pitiful) excuses for why I haven’t figured out how to organize one yet, and things I want to figure out (especially with people’s help):

  • Who might be interested in speaking? How does one go about organizing speakers, schedules, topics, tech, etc? I’m still slowly getting the hang of reaching out to people and inviting them to Emacs Chats.
  • Will people show up and ask questions? Part of me is worried that I’ll pick entirely the wrong date/time/topics and there’ll be awkward silence.
  • How can we handle questions? IRC, probably, so that people can chat about stuff too. I think I’m pretty comfortable at keeping an eye on stuff and repeating people’s questions. Or maybe people can join the Emacs Hangout if we can get the flow to be smooth?
  • Will the experience be pleasant and worthwhile? Maybe not as goosebump-inducingly awesome as being in a room with 80+ other Emacs geeks, but I think it will be worthwhile.
  • How can we harvest and share resources? Hangouts on Air will put videos on Youtube automatically, so that’ll be taken care of.
  • What would we need to do leading up to it? Something about a mailing list, and a webpage, and lots and lots of coordination.
  • Do I need to gain experience/confidence with smaller steps? Or maybe find some accomplices?

Of course, if someone wants to organize an in-person one, that’s cool too. Especially in Toronto. That would be awesome. =) (Although I might be able to get to New York or similar places too…)

My evil plans for a conference like this include:

  • Getting cool stuff out of people’s heads/fingers/configs and into a form that other people can look at, learn from, and link to
  • Ditto for good practices that can help us develop better code (performance)
  • Discovering resources and tips we might not have found out about otherwise
  • Sparking more conversations and follow-ups
  • Spurring people to create and share more resources

What could help the Emacs community learn even faster?

2015-02-01 Accelerating the Emacs community -- index card #accelerating #emacs

2015-02-01 Accelerating the Emacs community – index card #accelerating #emacs

How can we get more people sharing their configs, or learning from other people’s configs? How can we make it easier for people to share through blog posts, videos, animated GIFs, and presentations? How can we create spaces for people to connect, either with virtual meetups or in person? How can we swap interesting ideas, workflows, and mental habits? How can we improve our skills? How can we keep the conversation going?

Mm. Figuring out how to do virtual conferences might be a good start. Also, I’ve got this idea noodling around in my head on having some kind of an intermediate/advanced Org Mode workshop: something that covers clocking workflows, table calculations, literate programming, data analysis, publishing. Figuring out how to do virtual workshops would be awesome too.

Okay. First things first. Some kind of date and some kind of time, and some kind of help sorting out a schedule. August 8 and/or August 15, maybe? If librarians can hold an online conference through Google Hangouts, we should be able to figure this out too. (Librarians are super-cool!) If you have lots of experience in organizing virtual conferences or you have ideas for how to make this less intimidating for a non-organizer-y introvert, I’d love to hear from you in the comments or at [email protected]. Let’s make this happen!

Sometimes – often – I don’t feel like making conversation

My default state is quiet. I rarely listen to music while I work, unless I need to make it easier to ignore background conversations. I often find one-on-one conversations awkward. I like group conversations because other people can tell stories or ask questions, and I can dip into or out of the conversation when I want. So Hacklab tends to work for me, since there are occasionally good group conversations there, and people are friends with each other.

2014-10-06 Sometimes - often - I don't feel like making conversation

2014-10-06 Sometimes – often – I don’t feel like making conversation

I started to write a blog post about preparing for winter, something along the lines of being less social because of the activation costs of having to put on coats and take the subway instead of the bike. But I started looking at the numbers from my time tracking (counting both business-related and social non-family connecting time), and I’ve actually been less social in summer. I suppose it makes sense – meetups go on hiatus, people have other plans, and I’m off enjoying quiet time gardening or biking.

2014-10-15 20_25_51-Microsoft Excel - Book2

So maybe this fall and winter will be more social after all. Maybe I’ll make it out to Hacklab once or twice a week, and maybe I’ll start checking out meetups again. It’s good to practice connecting with people in person — although it’s certainly quite tempting to stay home, too. I have the sneaky suspicion that these online conversations might even be more worthwhile and longer-lasting. Still, there’s time to experiment with things, so why not?

Improving my response to oopses

I made a programming mistake recently. At the time we discovered the mistake, we thought it sent lots of e-mails to executives. The team lead and the project manager immediately went into damage-control mode, contacting each of the potentially affected executives and helping them with any workarounds. While they were doing that, I was scrambling to figure out the extent of the problem and any quick fixes I could put in that wouldn’t introduce a lot more risk.

My clients and I are on good enough terms that I don’t have to put on a poker face around them. They’ve heard me giggle over neat things I’ve gotten the system to do, and they’ve heard me try to rapidly braindump possible explanations and approaches. I get quite unintelligible when I’m in the middle of something. My team lead was quick to reassure me that he accepted responsibility for the mistake, that I wouldn’t get into trouble, and that I shouldn’t be stressed. It’s logical. Too much stress, and you end up with negative productivity.

It turned out to be a smaller problem than we thought it was. That was a relief. After we sorted things out, I took a moment to reflect on that spike of stress and uncertainty, and how I could respond to mistakes better next time. I blogged a post-mortem of the mistake on the internal social network, identifying some Swiss-cheese factors that contributed to the error. I also thought about how I could improve my external response to things like this. Sure, I might be getting better at imposing order inside my brain instead of freaking out, but maybe a calm “Yes, this might be serious, but we can figure things out”-type response is better than “I feel worse than you do, and will scramble to fix this.”

2014-09-15 On programming and mistakes

2014-09-15 On programming and mistakes

2014-09-15 Future responses to oopses

2014-09-15 Future responses to oopses

It was good to have reflected on this. A few days later, we were faced with a technical issue that wasn’t my fault, but was still a challenge that we had to solve. I tested my take-charge attitude, and that worked out well. Even though we hadn’t anticipated that specific problem, we had a contingency plan that covered that general case. We stayed calm and worked through it. It was good.

I like this. It’s good to test new responses to challenging situations. Part of growing up, I guess!

Sharing cooking adventures

I told W- about the Ethiopian cabbage dish that Eric and I made at Tuesday’s open house at Hacklab, to go with the injera that we bought from a store a few doors down from Hacklab. We had decided to go with cooking Ethiopian food because it was a cool day (so, a warm meal), we hadn’t cooked anything Ethiopian before, and Eric had mentioned the injera previously; so we looked online for vegan Ethiopian recipes and picked a simple one to start with. A typical Ethiopian meal includes several kinds of stews served on top of the flatbread, but we figured it was fine to start with just one recipe and let people decide how they want to eat it. It worked out pretty well, although there were a few moments when we weren’t quite sure how to fit all that shredded cabbage in. (Eric picked the biggest head of cabbage, I think!) $16 of groceries fed lots of people, and there were still leftovers by the time I left.

W- asked, “How come you’re not as experimental when cooking at home?” Come to think of it, I tend to test recipes at Hacklab before trying them at home: gazpacho, Thai curry, Japanese curry… Cooking at Hacklab is fun because other people help (getting that second chef’s knife for Hacklab was totally worth it!) and the meals disappear pretty quickly.

But we’re even better set up to experiment at home. Proper chopping boards, all the pots and pans I need, no worries about extra ingredients or leftovers, and backup plans in case things go wrong… Slightly pickier eaters, but if I mess up, I can always pack it in the freezer for later, or even toss it out if I really have to. (I tend to have more tolerance for cooking than I should, although even I have had to give up on some attempts before. Ah well!)

W- is much more experienced at cooking than I am, so I’m catching up by exploring different recipes. Cooking has become a hobby for me – something I enjoy for its own sake, even if I’m still working on getting better at it. It’s even more fun when you’re cooking with someone, since you can laugh at stuff and swap stories. Sometimes W- and I cook together, although I guess lately I’ve been trying to do most of the household prep so that he can focus on work. Choosing the recipe is part of the fun, and making something often results in funny stories even if there are hiccups along the way (especially if there are!). Maybe we’ll just make a habit of trying one new recipe a week. Between that and Hacklab, I’ll be learning tons of recipes, yay!

Mmm… What do I want to try? Different kinds of pasta, for J-. Curries of the world! Salads for summer, both cold and warm! Mmm…

On Aristotle and talking to people about troubles

After reflecting on how I’d like to respond to people who want to talk about their challenges and how I want to discuss mine, I’ve been thinking a little bit more about the approaches that I favour and why.

Despite my faith in friends and availability of support groups or forums for pretty much any situation one can find yourself in, I tend to work through things independently. Sometimes I talk to W-. Even then, it’s often retrospective: “I worked through this-and-this dilemma. This is the decision I’ve come to because of these reasons, but I’d love to hear your thoughts in case I missed something.” I’d rather talk to people about the good stuff.

When it comes to other people talking to me about stuff they’re going through, I assume they’re smart and have tried things, so I ask questions about the obstacles they’ve run into. I like focusing on getting over barriers because this is one thing that other people can actually help with. You might get stuck on something because you don’t know where to start, don’t have the skills or experience for it, or because it intimidates you. Other people might be able to map out an easier way for you, directly help you (hooray for comparative advantage), or share how it’s really not that scary if you focus on doing X, Y, and Z.

While reading D.P. Chase’s translation of Aristotle’s Nicomachean Ethics, I came across this passage on what to share with your friends when you’re going through challenges:

But [friends’] presence has probably a mixed effect: I mean, not only is the very seeing friends pleasant, especially to one in misfortune, and actual help towards lessening the grief is afforded (the natural tendency of a friend, if he is gifted with tact, being to comfort by look and word, because he is well acquainted with the sufferer’s temper and disposition and therefore knows what things give him pleasure and pain), but also the perceiving a friend to be grieved at his misfortunes causes the sufferer pain, because every one avoids being cause of pain to his friends. And for this reason they who are of a manly nature are cautious not to implicate their friends in their pain; and unless a man is exceedingly callous to the pain of others he cannot bear the pain which is thus caused to his friends: in short, he does not admit men to wail with him, not being given to wail at all: women, it is true, and men who resemble women, like to have others to groan with them, and love such as friends and sympathisers. But it is plain that it is our duty in all things to imitate the highest character.

So if you’re sad, it can help to have company in your sadness, but that might cause your friends to feel sad as well. Be strong, if you can.

It would seem, therefore, that we ought to call in friends readily on occasion of good fortune, because it is noble to be ready to do good to others: but on occasion of bad fortune, we should do so with reluctance; for we should as little as possible make others share in our ills; on which principle goes the saying, “I am unfortunate, let that suffice.” The most proper occasion for calling them in is when with small trouble or annoyance to themselves they can be of very great use to the person who needs them.

That’s probably going to be my approach to getting by with a little help from my friends: to figure out, perhaps, if there are small things people can do that could have a big impact, and to focus on those instead of on commiseration. As for when people approach me, or when I notice friends in difficult situations, I will try to keep this in mind:

But, on the contrary, it is fitting perhaps to go to one’s friends in their misfortunes unasked and with alacrity (because kindness is the friend’s office and specially towards those who are in need and who do not demand it as a right, this being more creditable and more pleasant to both); and on occasion of their good fortune to go readily, if we can forward it in any way (because men need their friends for this likewise), but to be backward in sharing it, any great eagerness to receive advantage not being creditable.

… to see the opportunity to be kind, where kindness might be cooking a good meal, giving a person a hug, or helping out in ways that take advantage of our different skills and experiences.

Hacklab open houses and connecting through cooking

I joined Hacklab (a small makerspace here in Toronto) early in 2013. I thought of it mostly as a way to meet people who are working on interesting projects, hang out, and learn together. It’s been working out well, and I’m gradually getting into helping the community more.

Hacklab hosts an open house every Tuesday evening. It’s a good opportunity for prospective members to check out the place and chat with people about their projects. We usually put together a vegan dinner donated by the person cooking it so that it’s free for the members and guests (although sometimes people pitch in for groceries). There’s no fixed schedule; people just volunteer to cook whenever they want. When I’m there, I often volunteer. I treat it as a vegan cooking lesson / soup kitchen / party. Sure, I’m teaching myself, but it’s still an excuse to try new recipes. I think the people there are worth supporting, and cooking is a much more efficient use of money than having people go out to dinner. Besides, other people often help with preparing the ingredients, and we can chat while doing so.

Here are some easy dishes that we can make with ingredients from nearby grocery stories:

  • Gazpacho: tomatoes, cucumbers, peppers, onions, garlic; serve with bread
  • Pasta salad: peas, tomatoes, olives, cucumbers
  • Curry: potatoes, carrots, green beans, tofu, onions; there are plenty of spices in the cabinet
  • Ratatouille: potatoes, zucchini, peppers, onions, garlic; serve with bread
  • Lentil dal: tomatoes, lentils, ginger, garlic, onions

I think I’ll make recipe cards with serving numbers and cost estimates. That will probably make it easier to come up with dinners on the fly, and it might encourage other people to cook too.

We’ve been slowly improving the Hacklab kitchen. The addition of pots, a rice cooker, and lots of cutlery helped a lot. (It was difficult to cook and serve before those things!) Last week, I replaced the rather ineffective and hadn’t-been-washed-in-ages kitchen towels with two sets I’d made from some fabric we had at home. I’ll add the towels to our weekly laundry cycle, so things actually get washed. Storage is still an issue. The fridge is used mostly for drinks, so we try to not have any left-over ingredients or servings.

I’m not currently working on super-geeky projects that involve other members or the equipment that’s there. (It would be interesting to do more with the laser cutter, 3D printers, or the new mill!) But cooking gives me a way to help other people, so that’s something.

I think I like this approach of taking responsibility for making Hacklab a little bit better for people. You get as much out of a community as you put in, and these little domestic touches can help make a place feel more like home. (I’m going to keep nudging people to put their dishes in the dishwasher, though! ;) )

So why does this feel easy compared to, say, having people over for a party or potluck at home? The kitchen at home is better-equipped, and both groceries and left-overs are easier to deal with. Maybe it’s because I can decide whether or not to go to Hacklab on the day itself. I can leave whenever I want, too. There are usually lots of people at Hacklab and they’re good at keeping themselves occupied or talking to each other, so I don’t have to worry about any awkward moments or entertaining just one person. There are lots of things going on in the area, so people can always step out for a different meal or take a breather in case there aren’t any seats or in case things are overwhelming. Hmm, maybe if I invite people to catch up at these open houses instead of waiting until I work up to having parties at home… Not everyone all at once, maybe one or two invitations at a time. Hacklab’s a bit loud, but we could always go for a walk if needed. That might work. Who knows? They might meet interesting people there too.