Project #veganweek

Last week, I spontaneously participated in a vegan week with @kuraj, @jessie_ohki (and bf), @erynwen28 and a couple of others.

Why? tl;dr: Because I can.

As you may (or may not) know, I lived strictly vegetarian for about five to six years. More recently, I’ve been eating dead animal again, mostly because I was fed up with my food allergies AND being vegetarian making it hard to find nice stuff to eat. My main motivation behind #veganweek (besides trying out something new) was to see how much of a difference it makes in my diet, and how I cope with eating vegan.

Lessons I’ve learned:

  • Shopping vegan is… interesting. If you have a new food restriction, you usually spend the first couple of times shopping reading lots of labels and after a while, you know what you can eat and what you can’t. Been there, done that. But there are hardly any products which do not contain dairy products or eggs. The women at the cheese counter were very friendly and eager to help me when I asked for vegan cheese. (They also told me “We advertise not selling [Analogkäse].” when I explained that I don’t mean tofu.)
  • Coffee without milk isn’t quite as horrible as I thought. (It was work coffee though.)
  • Soy milk curdles when you pour it into coffee. It was even worse when I poured coffee into soy milk. Then I did some research. Apparently, there are two main issues: a) Temperature (soy milk curdles more quickly if it’s warm) and b) the coffee’s acidity (which causes the actual curdling). If anyone knows about proper scientific experiments on this – please tell me. ;)
    Also, vanilla soy milk also tastes pretty nice with work coffee.
  • Food labelling in Germany sucks. Vegan stuff is usually declared as vegetarian on the packaging, if at all. Have fun reading ingredient lists…
  • Induction without a sound step doesn’t work any better in real life than it does in mathematics. Just because all meat replacement products you’ve ever seen weren’t just vegetarian but also vegan, this doesn’t mean that all of them are.
  • Thinner/smaller waffles are nicer than having to clean up afterwards if you use too much dough. (Oops…)
  • Broken handmixers sound horrible.
  • Vegan waffle dough sticks better to the waffle iron than to itself, so you need more oil. Eggs really help here.
  • Too much soy makes me sick.
  • Vegan cheese is almost impossible to find in Kaiserslautern.
  • Dried tomatoes are really really salty.
  • My favourite curry recipe is actually vegan. :3
  • Being a vegetarian at the university Mensa is ok(ish), but being a vegan is really hard. The same thing goes for eating out in general. There are no vegetarian or vegan restaurants here, and even if you just meet some friends, most snacks you could nibble on aren’t vegan.
  • It probably gets easier once you get used to just carrying some food with you wherever you go.
  • Interestingly, people gave me a lot less shit about this project than I used to get for eating vegetarian. But then that may just be because they knew it was only temporary. Some were really supportive, too – @starlightCircus even surprised me with vegan muffins! ♥
    2013-01-08 20.37.26s

Stuff I’ve tried:

  • Vegan waffles. (OMG, so. damn. good.)
  • Soy yoghurt. I’ve always loved soy pudding (chocolate!! ♥), but I was very hesitant trying yoghurt because in my mind, soy and yoghurt didn’t mix well. However, I really liked it. (Now, that was only one kind, so I’ll have to try some more soon.)
  • Vegan cream cheese. We’re not going to be friends.
  • Coconut water with mango. Interesting but not really my thing (expected that much because I don’t like it fresh, either).

Stuff I wanted to try but didn’t:

  • Vegan cheese (slices). Didn’t find it.
  • Vegan feta. Found it but didn’t have much use for it right away. May do that during the barbecue season.
  • Vegan milk chocolate. Didn’t look for it.

What did I eat?

  • Monday: Lye pretzel, Pasta with Tomato Sauce (Mensa; no parmesan on top, and no salad or soup for me), pretzel sticks, soy yoghurt with mango, bread with salami and cream cheese alternatives (the first of which I had to find out is actually not vegan since the proteins come from eggs), tangerines.
  • Tuesday: Banana, bread with jelly, chocolate pudding, waffles, muffins, even more waffles.Waffles
  • Wednesday: Waffles, tangerine, Pasta Aglio e Olio with dried tomatoes, muffins.
  • Thursday: Chocolate pudding, tangerine, Wraps with Falafel and Veggies.
    Wrap with Falafel
  • Friday: Bread with sausage and cream cheese, tangerine, muffins, Chickpea Curry, banana, chocolate pudding.
    Chickpea Curry
  • Saturday: Banana, Best Fried Potatoes I’ve Ever Made (with dried tomatoes, rosemary, onions) and Salad with impromptu dressing (and I was so sure I had balsamic vinegar!!!), rolls, chocolate pudding, rice waffles with chocolate.
    Fried potatoes and salad
  • Sunday: Bread with sausage and cream cheese, Thai Curry, rice waffle with chocolate, some Indian food @Nirzaree made for me (veggies in a tomato sauce, and pan bread), chocolate.

Recipes

Waffles (German)
Chickpea Curry (German)

 

Where do I go from here?

This was a very interesting experience for me, and I would (will) certainly do this again. However, I really really missed chocolate (or at least some more variety) and cheese. What I didn’t miss at all: Meat. I expected that much since I never found it hard to be vegetarian from a psychological standpoint (it just sucks in some restaurants), and I’m considering going back to eating mostly or exclusively vegetarian.

I’d also prefer to buy dairy products and eggs from a place where I know the animals are treated well, so if you know something in (or very close to) Kaiserslautern, I’d love to hear about it!

Automated Image Creation in MatLab

At the moment, I’m working on a differential geometry project, using MatLab for my implementation. While I’m not especially fond of it, it’s actually quite useful for what I’m doing.

As a quick overview: I have a function foo(i,j) which does some calculations and then plots a surface for me. Now, I need some images of what happens for different combinations of parameters. For one parameter, a range of 21 values is relevant, for the other, I only need 11. Some quick math and you’ll know that I’ll need 231 images.

The normal way to save an image is calling foo(myI, myJ), and saving the plot by clicking manually. Would you like to do that for 231 images? No? I thought so. Needless to say, I did what a good geek does and tried to automate the process.

This is the result:

for i = -1.0 : 0.1 : 1.0
   for j = -0.5 : 0.1 : 0.5
      foo(i,j)
      print(gcf, strcat('i', sprintf('%+.1f',i), 'j', sprintf('%+.1f',j),'.png'))
   end
end
  • print: Lets you print or save figures. By default, you get greyscale postscript. Yay.
    However, you can change this in a config file located in toolbox/local/printopt.m and replacing dev = ‘-dps2′ with ‘dev = ‘-dpng’ or whichever file format you prefer.
    After changing this, you’ll need to restart MatLab.
  • gcf: “grab current figure”. You could also assign a handle to the figure and use that here.
  • strcat: MatLab does not support strings very well, but at least there’s this function to concatenate them. Apparently, the number of arguments does not matter – I was quite happy when I found that out.
  • sprintf: Of course, you cannot simply concatenate strings with numbers. You’ll need to specify what you’d like your output to look like. ‘%f’ is a float, ‘+’ includes the sign, and ‘m.n’ specifies m digits before and n digits after the decimal point. My file names will now look like this: i+0.2j-0.4.png

I tried finding a way to replace each decimal point with a comma using sprintf, but it appears this is not possible. However, you can always shell script :)

MoodLight v2 arrived

Last time, I wrote about the different steps of creating your own circuit board. A short time after I wrote it, I ordered new boards with a new layout – the one you can already see in the screenshots. Last week, they finally arrived, so here they are: the new boards!

MoodLight v2 boards

Notice something? Apparently the silk screen went wrong. Since the file names and upload were correct, I assume it was either the KiCAD’s or the manufacturer’s fault.

New features:

  • SMD LEDs: For version 1, I used regularly shaped RGB LEDs with 4 linearly arranged legs. So far, everyone thought these were harder to solder than the microcontroller or the SMD0603-sized ESD. Now, the boards feature pretty flat square SMD LEDs which were way easier to use.
  • pins for green and blue changed to hardware PWM pins
  • different ESD diode type (3 legs, and larger)
  • no crystal (not so much of a feature, see below)

Soldered Board v2 (version without crystal)

Speaking of faults: despite double-checking every solder joint (visually and with a multimeter), the board initially didn’t work. Not just as in lights-not-working, but as in not-being-recognised-as-a-USB-device.
A second board with a reintroduced crystal but without ESD diode worked, leaving me with the question what I did wrong. Worst case scenario: I killed the microcontroller.

After soldering a crystal (and the corresponding two capacitors) to the non-functional board, it now works :) Therefore, version 2.1 will have a crystal again.

Board v2 with a crystal