{June 30, 2009}   berlin and oslo

so I spent a week in berlin, and had lots of fun, and was far too tired to blog about it :) and now I’m in oslo, still having fun.

I arrived in berlin on sunday, uploaded my blog post, and collapsed on maelcum’s bed. :) in the evening I woke up, we set up a bed for me, and went out to the music festival with one of his roommates… so of course it started raining soon after we got there. :) it was a nice evening, though. we hid from the rain for a while, then went to a club, where there was dancing… but we arrived at something like 10 or 11pm, and apparently the party doesn’t really get started until 1am in berlin :P I was having too much fun dancing so by midnight I was quite literally falling asleep.. eventually we got home and I slept until 4pm :P

I skipped the drinking monday, just had a nice dinner and went back to bed… then tuesday it was time to meet the linuxtag guys and move to the apartments they had for us. kde, amarok and kubuntu people were all sharing three apartments. I think every bed was full, three to a room. I thought I had blogged at least *something* about linuxtag, but it seems I haven’t… when we were setting up the booth we found one of the signs said “K Desktop Environment” instead of KDE. we tried to think of something to do about this, and eventually I discovered that the letters were actually stickers… :) so I started peeling them off, and we made it say KDE.

and then we had a big pile of sticky letters, so we tried to think of fun things to write with them. :) we were tempted to take the spare k and put it on the ubuntu sign, but people might not have liked that, so in the end someone (frank?) stuck it on his folder and we had “the K files”.

that night we looked for a place to eat near the apartments, and ended up splitting into two groups… I found what I thought was a sushi place, but it turned out to also serve thai and vietnamese. my green tea came with a teabag and sugar. :P still, the food wasn’t *bad*, just not very japanese :) after dinner much drinking happened, and I learnt to count past 9 in german.

tuesday morning I woke up early, found a nice bakery for breakfast, wandered around until the grocery store opened so I could buy soap… and then linuxtag started. ohh boy. so many people! so much stuff! the week is a bit of a blur… I was wandering around and chatting with people and chatting with more people… I signed an FLA, and talked with someone who wants his software to integrate properly with KDE (and ended up helping him make the web client work better in khtml)… by wednesday I was getting kinda overwhelmed by all the people, and started spending more time on my laptop… I made it to a few talks, but only kde/qt ones. :) matthias’ talk on QML made me really really wish it was something I could use right now. will’s talk on what sucks about kde was.. uncomfortable but fairly accurate. I’m not sure why he was talking about it at linuxtag instead of akademy, though; it was really aimed towards the bunch of kde devs in the front rows, not the random users in the back.

the lunch at linuxtag varied just enough to never be boring (omg the strawberries in berlin are sooo good), and most of the dinners were delicious… :)
tuesday night we went to a nice restaurant in Kreuzberg where they had something like indian food… it was yummy… and then we went back to the apartment and drank more. :) it was someone’s birthday. and there was nice vodka. we discovered that the drunker I am, the higher I can count in german ;)
wednesday night was the social event and the qt dinner, unfortunately at the same time. by the end of the dinner (which was.. not very good compared to most dinners that week) I just needed some time alone, so I skipped the social event. it sounds like I didn’t miss much.
thursday I was in Kreuzberg again, and had a delicious.. something.. with dumplings and mushrooms and a yummy creamy sauce… and then we had ice cream. :) I also was at the kdab office that night, where they have a foosball table. :) oh, and t-shirts.
friday… I just plain don’t remember. or perhaps I mixed up thursday and friday.

saturday I went to the ubuntu bbq at c-base, had a mushroom and a piece of cheese, then decided I wanted a full meal. so I met up with sebas and nightrose and some others, and discovered Christopher Street Day. there was cheap chinese food, and beer, and more beer, and dancing, and beer, and pizza, and marge simpson… :) I would’ve liked to stay longer, but was getting very tired by midnight, so me and fredrik headed back to the apartment. it was a good thing he came along, because i fell asleep on the train several times… but then we discovered that the key was with monika, back at c-base. :/ so an hour later (the trains were against her) she showed up, and it was 3am and I finally got into bed and started to defrost :P

sunday the weather was lovely – of course it was, we were leaving. I didn’t really want to leave berlin, it’s an awesome city. :) perhaps almost as awesome as vancouver ;)

anyways, I arrived in oslo, in the middle of a heat wave. I stepped off the plane and it quite literally felt like stepping into a sauna. I’m glad the airport had air conitioning, because the baggage was delayed a bit. after that I found my way to alexandra’s place.

oslo has been pretty nice so far, too. :) I just wish it wasn’t so *hot*. it hasn’t been too hard to find veggie food, the light at night hasn’t caused trouble… the qt office is quite nice. there’s a wii and a foosball table and scooters and food and, of course, qt-ies! ;) I met a bunch of them yesterday, then sat in thomas’ office and hacked until he dragged me out to see a bit of the city… and he’ll probably have to do that again soon or I’ll be hacking all day ;) I managed to have some good/useful conversations this morning, but that didn’t leave time for hacking, and then the internet distracted me for a while…

oh, and I took a few photos in oslo, after being reminded that I had a camera. :)

tomorrow I’ll be off to madrid. :) and then friday, akademy! :) I’m really looking forward to that. I just wish there were more hours in the day – hacking and chatting and seeing these cities and drinking and sleeping just don’t all fit into the time I’ve got…

{June 29, 2009}   gsoc week 5

so for last week I was in berlin for linuxtag… I’ll blog more about that later. now I’m in oslo, where it is unreasonably hot.

at linuxtag I spent a few mornings hacking on my gsoc project, and a couple of afternoons finding random people to test it on. :) after two model-view attempts the previous week, I decided to take the “fuck model-view” approach this time. it’s highly unlikely that there will ever be more than a dozen of these kind of plugins, so I don’t need scalability, just something small and simple. I made a widget that shows one plugin, and stuck a bunch of them in a scrollarea. :)

it could still use some tweaking, but I think this is a much more intuitive layout. it could be a bit more obvious what to do after clicking the input button, though…

anyways, now that this is committed, and it’s in good enough shape to live with for a while, I’ll be moving on to the contextmenu plugin i think. either that or I’ll make that “configure” button work. right now I’m just going to sleeeeeep.

{June 25, 2009}   a safer screensaver for 4.3

well, I just flipped the switch. I made my security code filter out all plasmoids that don’t declare themselves to be safe. this means that in 4.3, the screensaver will (in theory) only have safe applets available.

I’ve gone through all the applets in kdebase and kdeplasma-addons while they were frozen, making them conform to the security stuff I have so far. a few will adapt their features to not do unsafe things when they’re on the screensaver, and most of the rest were either already safe or should never be there. there are a handful of tricky ones that I haven’t dealt with yet, so a few more *might* appear in 4.3 if I have time, but I decided that possibly missing a few plasmoids is better than having a ton of inappropriate ones available.
I won’t touch playground, because it’s not feature-frozen. no sense in adding security statements that could be wrong 5 minutes later if someone decides to commit a new feature.

for the plasmoids outside of kdebase and kdeplasma-addons, the authors will have to add the security stuff to their .desktop files if they want them on the screensaver. *please* be careful and truthful when doing this, because we don’t yet have the code to disable features that plasmoids claim to not use. I haven’t written a nice how-to about it yet, but there is the design document in svn.

of course, if you as a user decide you know what you’re doing and you really really want an unsafe widget on your screensaver, you can edit your config files to add it. but if you do that you’re on your own ;)

p.s. berlin is zooper cool! ;)

{June 21, 2009}   berlin! also, gsoc week 4

[very tired.. this may or may not make any actual sense… and I’m too tired to insert screenshots]

I may not travel quite as much as aaron, but airports are starting to feel far too familiar ;) i’m on the last leg of my flight right now, between frankfurt and berlin. I have a whole three seats to myself :D frankfurt airport was, as usual, full of long badly-managed lines, but i got to skip one of them because my flight was already boarding. Calgary airport now requires some silly registration process for their free wifi – but hey, that’s still better than nonfree wifi. :) And vancouver airport i don’t even notice any more. It’s just… There. Same old thing. But with a few more olympics logos each time :P

aaron met me for coffee while i was passing through calgary (ok, he bought coffee and i stole some ;) and of course it was mere minutes before the laptop came out. He had some suggestions for *another* different approach to my config ui. :)
So about that ui… i spent the last week and a bit poking at it, yelling at it and hating it, inbetween preparing for my trip and other important things. I looked a while at the keyboard shortcut config code. It scared me. I started writing a model-view ui based on that and got really frustrated. Then one evening i talked to dfaure, and ended up starting over again with his model-view suggestions, which seemed more along the lines of the qt documentation. I was up past 5am wednesday night fighting with delagates and editors, and while i did eventually get something sorta-mostly-functional, it looked icky, and mysteriously stopped working when i tried to show it to aaron :P so i was getting the feeling that i was trying to shove a square peg in a round hole again.

Aaron suggested something that could do the editor widgets for me without the ugliness my code had, and he also suggested just dropping model-view and writing something simpler. I’ll look into those two options once i recover from jetlag – my alarm went off at 5:15am, my watch says 11:20pm, and in germany it’s 8:20am, so not only have i been a zombie all day, but a new day is starting without giving me a chance to sleep ;P
ah well. There were some decent movies on the long flight – transporter 3 (yay explosions), slumdog millionaire, and some bollywood movie i only got to see the first bit of. I really like the dancing in bollywood movies; someday i wanna learn to dance like that :)
I listened to a bunch of chinese pop on that flight, too… So now my brain’s full of chinese instead of german. Oops. :)
And now i’m on a train headed to maelcum’s place… I accidentally got off the bus too early (remember that scene in eurotrip where they get a ride to the wrong place?), but it was just a different train station, no worries. :) I just need to stay awake long enough to get there…

…and here I am, and here’s this post, and I think I might pass out now.

{June 15, 2009}   food, food and more food

I’ve made several yummy things I wanted to share, but wasn’t really in the mood for writing until this evening. So, here’s a big long post with several yummy things. sadly there are no pictures. I got pissed off at my laptop and didn’t bother to take photos I wouldn’t be able to retrieve (although really, it would’ve been possible to get the pics… just… inconvenient).

So one night, pete convinced me to try making gnocchi. But he wanted yam gnocchi. :) I was craving mushrooms and peppers, so i got some of those too, and asparagus.
I went out and bought groceries, then came back and put 2 potatoes and 2 yams (washed and poked with a fork) into the oven. Then went back out because i’d forgottten to buy asparagus :P when i got back again i chopped some peppers and got the other gnocchi ingredients prepped. I took out the potatoes and yams… And then wondered, how do i peel the cooked potatoes? Later on we googled and found that holding them in a teatowel and using a peeler is best, but at the time i used a fork to cut them open like baked potatoes, then gingerly peeled off the skin in as big chunks as i could manage – split open skin side up i could pull the skin away without too much burning :)

I did the potatoes and yams as separate batches. The potatoes went fairly well, although i didn’t really understand how to shape them. I also didn’t notice i was dehydrated and tired until i suddenly really needed to sit down :P so then pete helped make some while i looked up video instructions online (which it seems I forgot to bookmark).

Next came the yams. They had leaked delicious syrup onto the baking tray, and peeled and mashed easily (yay cooling). They weren’t starchy like potatoes, though… When i added them to the flour mix, it didn’t go quite right. It was all gooey and mushy and wanted to stick to everything. Pete added more flour… Then more. And more. I left him to work on that while i fried up the peppers and mushrooms and put on a big pot of water for the gnocchi. I also heated up the pasta sauce and added some soy milk to it. When pete had somehow produced gnocchi from the crazy yam goop, we started putting them in the boiling water. As they rose to the top, pete scooped them out with a sieve, while i kept an eye on the other stuff and cooked some asparagus. I love how easy asparagus is if you have a double boiler- just get a little water boiling in the pot, rinse and snap off the ends of the asparagus, put them in the steaming thingy, then put that on when the water’s boiling and in only two minutes they’re bright green and done. A little oil/butter and salt and they’re delicious.

The yam gnocchi, while it did come out as gnocchi, didn’t taste much of yam. It was a fun experiement, but next time i’d rather just have potato gnocchi and mashed yams. :)

I was going to a friend’s party a while ago, and needed to bring something to bbq. I asked a couple of vegetarian friends for suggestions and got lots of yummy ideas – asparagus, yam, tofurkey beer sausage, kebabs… But one that i tried and really loved was the portobello mushrooms.
I actually had a portobello burger in boston, too – jefferai was nice enough to get me veggie food of my choice when he was picking up some of the gsoc students – but we tried teriyaki sauce that time and it turned out… Not bad, but not memorable either. This time i found the secret to making them awesome ;) i put some soy sauce (kikkoman’s tamari, iirc) and water in a bowl (i’d guess it was 3:1 water:soy, maybe 2:1), and added plenty of grated ginger and garlic (the kind of grater with small holes, not the regular sort). Mostly i grated them because i was in too much of a hurry to chop, but it worked out well. :) I took the stems off my two mushrooms, put the caps in a ziploc bag, and poured the soy marinade over them. Afetr sealing the bag i put it in a box just in case – and that was good, because it did leak a tiny bit.

I shoved my food in the fridge at the party, and a few hours later i took the mushrooms out and put them on the bbq. I also brought some blue cheese to go on top. :) I found the best method was to put the mushroom upside-down on the bbq, pour a bit more of the marinade into the cup, then add thin slices of cheese right away. It cooks fairly fast – really you just need it to get hot and soften the cheese.
I’d forgotten to bring hamburger buns, but whatever, they were awesome on their own. :) And i was too busy licking the plate to care about the dumb anti-vegetarian comments. :P

Next up was mushroom soup. I’ve made that several times before; I use this recipe but with half the paprika or less. I skip the lemon juice and red wine, too, because very few people are actually around at dinnertime.
This time i did a triple recipe, although i didn’t triple everything… I decided four onions was quite enough :P i also used just a tablespoon and a bit of paprika (i have two one-tbsp measures but no half-tbsp; aren’t roomies great?) And i’m sure i added far more dill than nescessary – how do you measure fresh herbs?
For mushrooms, i used two bags of regular (button?) mushrooms, one pack of shitake, some button and shitake mushrooms i found in the fridge, a pack of oyster mushrooms, and two packs of enoki. I’m afraid I can’t give more accurate measurements; I forgot to save the receipt. The enoki i put in just a few minutes before the end, and tthis time i chopped them in half too, so they’d be a bit less stringy. :)
Getting three cups of soymilk into the roux wasn’t going to happen with the little pan I used (I needed something I could hold up high with one hand while full), so i added the third cup of soymilk (plus a bit) straight to the soup. Btw, there’s a different recipe with a good explantion of how to make a roux – it helped me a lot. :)
The soup turned out great, and there were loads of leftovers. :) Pete just finished the last of it today.

This sunday i was quite busy, so i wanted something easy to cook. I chopped up some peppers and half a red onion (it was a humongous onion), peeled a bulb of garlic (and cut some of the bigger cloves in half so there were more pieces), added some seasoning and roasted them. I hadn’t bought any herbs, but we had a bunch of leftovers wilting, so i used a bunch of dill, dried basil, salt&pepper, and some “italian” seasoning. I almost forgot the olive oil, because the herbs were happily sticking anyways.
I put those in the oven, but i put them on the top rack on broil (at 425, the usual temperature) and i’d cut fairly small strips, so instead of needing 40 minutes they were smoking after 15 – it came up out of the stove :P I kinda wanted them crisp anyways but not so fast… I turned them over and considered cooking the other side, but instead i turned off the oven and left them in there to keep warm.

While the peppers had been quietly burning, i’d been improvising a dressing for the pasta. It was vaguely inspired by pesto. I used up the wilting parsley and mint, added lots of dried oregano and basil, chopped up some walnuts and tossed in a bit of nutritional yeast.

After rescuing the peppers I put water on for the pasta, rinsed and snapped the ends off the asparagus, put the pasta (linguini) into the boiling water, and put on some water for the asparagus… When i put the asparagus on I kept checking on it and letting the steam out, so it took a bit longer, but soon everything was ready. I pushed the veggies over to make space on their tray, laid the asparagus out there, drizzled flax oil over it and added a little salt. I drained the pasta and put it back in the pot with flax oil and the herbs. Mixing that into the pasta was a little harder than i expected, but once i’d done that, dinner was ready. :) And all in just an hour and a half – including time spent washing some dishes beforehand :P

whee! I have a config dialog. it configures.
well, sorta. it still has a couple of bugs, “configure” and “about” do nothing, and you can’t turn off a plugin.

oh, and it’s ugly as sin.

don’t gouge your eyes out just yet, though ;) I promise it won’t stay like this. today I was focused on getting the insides working; tomorrow I’ll start working on appearance. last month I spent some time talking in #kde-usability, and came out with ideas on how to make a presentable UI.

it’ll probably require model-view, which I’m not really looking forward to. I’ll probably need some more help from usability people and people who have experience making a UI feel like KDE, too. but it’ll look better before it goes into trunk. :)

oh, and some good news! scripty is finally happy with my git additions. thanks a bunch to tsdgeos, chusslove, pinotree and the other translators for putting up with my constant questions and the weekend of breaking scripty. :) and remind me that I need to document some of that before I forget what it was I was going to document…

ok, so the project so far is turning out to be a bit easier than I expected :) I’m sure that’ll change when I reach the config UI :P but for now I feel like I’m getting a lot done.

monday was scripty, and tuesday I didn’t get much code time in, but I wandered back online after midnight and got my hashing stuff working. :) the button and modifiers used in the event are turned into a string that’s my unique ID for plugins, so any plugin I add will be run when the corresponding event happens.

today I made the dummy plugin show a contextmenu with an entry from the containment. that was so easy that I couldn’t resist making another plugin. :) in slightly less than two hours (including a lot of irc time) I moved the scrollwheel-changes-desktop code into a plugin, and also made that plugin show a list of desktops to switch to if it’s bound to a button instead of a wheel (yes, *a* wheel; my touchpad has two of them and I can bind each to its own plugin). :)

I’m quite pleased with how stupidly easy it was to do that. writing plugin stuff is a lot less of a headache than fighting with xorg and weird screensaver issues…

after that, I figured out where to put config stuff, and added code to properly initialize the plugins – and warn the user if the plugin needs configuring.

it’s not very pretty right now, but it’ll be easier to finish once I actually have a config dialog :) maybe I’ll start on that tomorrow, or maybe I’ll spend another day on scripty.

et cetera