<?xml version='1.0' encoding='utf-8' ?>
<!--  If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/  -->
<rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/' xmlns:media='http://search.yahoo.com/mrss/' xmlns:atom10='http://www.w3.org/2005/Atom'>
<channel>
  <title>c y l i</title>
  <link>http://cyli.livejournal.com/</link>
  <description>c y l i - LiveJournal.com</description>
  <lastBuildDate>Sat, 09 May 2009 00:16:03 GMT</lastBuildDate>
  <generator>LiveJournal / LiveJournal.com</generator>
  <lj:journal>cyli</lj:journal>
  <lj:journalid>1404308</lj:journalid>
  <lj:journaltype>personal</lj:journaltype>
  <atom10:link rel='hub' href='http://pubsubhubbub.appspot.com/' />
  <image>
    <url>http://l-userpic.livejournal.com/54032746/1404308</url>
    <title>c y l i</title>
    <link>http://cyli.livejournal.com/</link>
    <width>54</width>
    <height>50</height>
  </image>

<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/38507.html</guid>
  <pubDate>Sat, 09 May 2009 00:16:03 GMT</pubDate>
  <title>I&apos;ve moved</title>
  <link>http://cyli.livejournal.com/38507.html</link>
  <description>&lt;a href=&quot;http://blog.ying.li&quot;&gt;I have a new blog&lt;/a&gt;.  &lt;br /&gt;&lt;br /&gt;This happened a while ago, but I never announced it here because I was hoping to migrate my old posts.  I suppose I can do that later - also, I know I haven&apos;t been answering messages/comments here, which I will hopefully remedy in the next few weeks.</description>
  <comments>http://cyli.livejournal.com/38507.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>1</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/38382.html</guid>
  <pubDate>Fri, 11 Apr 2008 15:43:24 GMT</pubDate>
  <title>Shelless SSH Server with Twisted</title>
  <link>http://cyli.livejournal.com/38382.html</link>
  <description>I needed a shelless SSH server that would not honor shell requests or exec commands, because I wanted to provide SFTP access without allowing shell access.  I&apos;m only posting this because this may be useful to people - I don&apos;t know Twisted very well, and there may be a better way to do it, but this works:&lt;br /&gt;&lt;pre&gt;
from zope import interface
from twisted.cred import portal
from twisted.python import log
from twisted.conch.avatar import ConchUser
from twisted.conch.ssh import session


class ShelllessSSHRealm:
    interface.implements(portal.IRealm)

    def requestAvatar(self, avatarID, mind, *interfaces):
        user = ShelllessUser()
        return interfaces[0], user, user.logout


class ShelllessUser(ConchUser):
    &quot;&quot;&quot;
    A shell-less user that does not answer any global requests.
    &quot;&quot;&quot;
    def __init__(self, root=None):
        ConchUser.__init__(self)
        self.channelLookup[&quot;session&quot;] = ShelllessSession

    def logout(self):
        pass   # nothing to do


class ShelllessSession(session.SSHSession):
    
    name = &apos;shellessSession&apos;

    def __init__(self, *args, **kw):
        session.SSHSession.__init__(self, *args, **kw)
        
    def _noshell(self):
        if not self.closing:
            self.write(&quot;This server does not provide shells &quot;
                       &quot;or allow command execution.\n&quot;)
            self.loseConnection()
        return 0

    def request_shell(self, data):
        log.msg(&quot;shell request rejected&quot;)
        return self._noshell()

    def request_exec(self, data):
        log.msg(&quot;execution request rejected&quot;)
        return self._noshell()

    def request_pty_req(self, data):
        log.msg(&quot;pty request rejected&quot;)
        return self._noshell()

    def request_window_change(self, data):
        log.msg(&quot;window change request rejected&quot;)
        return 0
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;I have tests for it and everything - I can post those if someone wants them.</description>
  <comments>http://cyli.livejournal.com/38382.html</comments>
  <category>python</category>
  <category>twisted</category>
  <lj:security>public</lj:security>
  <lj:reply-count>2</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/38103.html</guid>
  <pubDate>Thu, 06 Mar 2008 22:22:28 GMT</pubDate>
  <title>Woots, rotation and navigation keys work on the XO.</title>
  <link>http://cyli.livejournal.com/38103.html</link>
  <description>Now I can use the XO as an ebook reader (in tablet mode) when using Ubuntu.&lt;br /&gt;&lt;br /&gt;I was having problems before because the rotation key on the XO, as well as the directional keypad (see &lt;a href=&quot;http://laptop.org/en/img/specs_dimensions.jpg&quot;&gt;this image&lt;/a&gt;, although the rotation key is labeled as &quot;backlight control&quot; for some reason).  &lt;span style=&quot;font-family: monospace&quot;&gt;xev&lt;/span&gt; didn&apos;t even register anything when I hit the keys (oddly enough it did register the gamepad buttons).  I knew that that the kernel recognized the key presses, since &lt;span style=&quot;font-family: monospace&quot;&gt;od /dev/input/event3&lt;/span&gt; register events when the directional pad keys and rotation button (and any other key on the keyboard) is pressed.  However, thanks to &lt;a href=&quot;http://www.waba.be/page/keyboard-tricks-on-x11.xhtml&quot;&gt;waba.be&apos;s tutorial&lt;/a&gt;, I got it working.  &lt;br /&gt;&lt;a name=&quot;cutid1&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;Getting X to see the keys&lt;/h3&gt;&lt;br /&gt;Basically, I used &lt;span style=&quot;font-family: monospace&quot;&gt;tail -f /var/log/kern.log&lt;/span&gt; to get the number (?) of the unknown keys (it on my machine it was 65-69).  Then I did &lt;span style=&quot;font-family: monospace&quot;&gt;dumpkeys --keys-only&lt;/span&gt; to figure out which keycodes were free, and I mapped those keys to keycodes 120-124 using &lt;span style=&quot;font-family: monospace&quot;&gt;setkeycode &amp;lt;key number&amp;gt; &amp;lt;keycode&amp;gt;&lt;/span&gt;.  I put the &lt;span style=&quot;font-family: monospace&quot;&gt;setkeycode&lt;/span&gt; commands in /&lt;span style=&quot;font-family: monospace&quot;&gt;etc/init.d/olpckeys-setup.sh&lt;/span&gt;: &lt;pre style=&quot;border: thin solid grey&quot;&gt;#/bin/sh

# rockerpad up
setkeycodes 65 120

# rockerpad right
setkeycodes 68 121

# rockerpad down
setkeycodes 66 122

# rockerpad left
setkeycodes 67 123

# rotate button
setkeycodes 69 124&lt;/pre&gt; and ran &lt;span style=&quot;font-family: monospace&quot;&gt;&lt;a href=&quot;http://ubuntu.wordpress.com/2005/09/07/adding-a-startup-script-to-be-run-at-bootup/&quot;&gt;update-rc.d&lt;/a&gt; olpckeys-setup.sh start 99 2 3 4 5 .&lt;/span&gt;  (Apparently this is the recommended way in Ubuntu to set up startup scripts?)&lt;br /&gt;&lt;br /&gt;So yay, &lt;span style=&quot;font-family: monospace&quot;&gt;xev&lt;/span&gt; recognizes the keys (although oddly enough the keycodes given it gives are not in the 120-124 range - I guess X uses a different set of keycodes?) , which means that I can use &lt;a href=&quot;http://wiki.laptop.org/go/Xfce#Rotation&quot;&gt;wiki.laptop.org&apos;s instructions&lt;/a&gt; to bind that button to my rotate script (more later) using &lt;span style=&quot;font-family: monospace&quot;&gt;xbindkeys&lt;/span&gt;.  &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Getting rotate to work&lt;/h3&gt;&lt;br /&gt;I want to remap the directional pads every time the screen rotates, because I don&apos;t want to have to mentally translate up to right when the screen rotates 90 degrees. &lt;a href=&quot;http://www.waba.be/page/keyboard-tricks-on-x11.xhtml&quot;&gt;waba.be&lt;/a&gt; suggests key mappings are most easily done with &lt;span style=&quot;font-family: monospace&quot;&gt;xmodmap&lt;/span&gt;.  The script given in by &lt;a href=&quot;http://wiki.laptop.org/go/Xfce#Rotation&quot;&gt;wiki.laptop.org&lt;/a&gt; simply rotates the screen so you have to change the it so that it remaps those keys as well as rotates.&lt;br /&gt;&lt;br /&gt;I haven&apos;t figured out what I&apos;m going to do with the game pad keys yet, so I only want to map 4 keys.  I wanted to be able to map the other keys if I figured out what to do with them, but without having to do a lot of editing.  So I changed the rotation script to: &lt;pre style=&quot;border: thin solid grey&quot;&gt;#!/usr/bin/python
# Rotates the screen 90 degrees on the olpc

import os, sys, re

# Get current screen orientation
xr = os.popen(&quot;xrandr -q&quot;).read()
m = re.search(r&apos;\+\d\s+(.*?)\s*\(&apos;,xr)
if not m:
    raise &quot;No match!&quot;
rotation = m.group(1)


# Generate new orientation
# orientations:  0 is normal, 1 is left, 2 is inverted, and 3 is right
#   If we want to rotate 90 degrees we need to subtract 1, so the new
#   orientations would be [3, 0, 1, 2] (current = [0, 1, 2, 3])
new_orientations = [&quot;right&quot;, &quot;&quot;, &quot;left&quot;, &quot;inverted&quot;]
val = new_orientations.index(rotation)
if val &amp;lt; 0:
    raise &quot;xrandr output is not what&apos;s expected&quot;

commands = [&quot;xrandr -o %d&quot; % val]

# Get the keycodes for the directional pad and game pad and cause them to 
# rotate as well
if len(sys.argv) &amp;gt; 1:
    if not os.path.isfile(sys.argv[1]):
        raise &quot;%s either doesn&apos;t exist or isn&apos;t a regular file&quot; % sys.argv[1]
    f = open(sys.argv[1])
    data = f.read().split(&quot;\n\n&quot;)
    f.close()
    for cluster_data in data:
        keycodes = []
        keysyms = []
        for line in cluster_data.split(&quot;\n&quot;):
            if line.strip() and not line.startswith(&quot;#&quot;):
                kc, ks = line.split(&quot;=&quot;, 1)
                keycodes.append(kc.strip())
                keysyms.append(ks.strip())
        for i in range(len(keycodes)):
            commands.append(&apos;xmodmap -e &quot;keycode %s = %s&quot;&apos; % ( 
                    keycodes[i], keysyms[(i-val) % len(keycodes)]))

os.system(&quot;; &quot;.join(commands))&lt;/pre&gt;  Not the most elegant or robust script, but meh, it works and it makes changing key mappings easy.  It takes a single configuration file, which is passed to it on the command line.  The configuration file simply maps clusters of keys to their keysyms/values.  I found the values by running &lt;span style=&quot;font-family: monospace&quot;&gt;xev&lt;/span&gt; and pressing the normal keyboard directional keys.  Mine configuration file, for instance, is: &lt;pre style=&quot;border: thin solid grey&quot;&gt;139 = Left 
134 = Up
210 = Right
209 = Down&lt;/pre&gt; If I wanted to later add mappings for the game pad keys, I just need to throw in a few extra empty lines (yes, my cluster of keys are determined by white space.  blah blah...) and then put the keys values for them in.  So for example: &lt;pre style=&quot;border: thin solid grey&quot;&gt;139 = Left 
134 = Up
210 = Right
209 = Down

# yay, my script ignores comments

1 = a
2 = b
3 = c
4 = d &lt;/pre&gt; As you can see, I completely made up the key numbers and key values for the directional pads.  If you want to map something to space, however, you will need to use the keysym (not the value &quot; &quot; since I ignore whitespace there).&lt;br /&gt;&lt;br /&gt;An alternative to using my script is using the scripts at &lt;a href=&quot;http://www.olpcnews.com/forum/index.php?topic=1996.msg15607&quot;&gt;this OLPC News forum post&lt;/a&gt;, with key numbers and keysyms/values changed (note: I don&apos;t think KP_UP, etc. are recognized symbols in Ubuntu on the OLPC without some xkb tweaking).&lt;br /&gt;&lt;br /&gt;Also for some reason, I have to run xbindkeys after I start xfce4 in order for anything to work.  I guess I need to modify some startup file.</description>
  <comments>http://cyli.livejournal.com/38103.html</comments>
  <category>ubuntu olpc x11</category>
  <lj:security>public</lj:security>
  <lj:reply-count>3</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/37671.html</guid>
  <pubDate>Thu, 06 Mar 2008 19:04:00 GMT</pubDate>
  <title>XrandR on Ubuntu on the XO</title>
  <link>http://cyli.livejournal.com/37671.html</link>
  <description>The &lt;a href=&quot;http://wiki.laptop.org/go/Ubuntu_On_OLPC_XO&quot;&gt;wiki.laptop.org instructions for installing Ubuntu on the XO&lt;/a&gt; tell you to install Holger Levsen&apos;s backported Xorg AMD drivers.  They gave me dependency errors so googled around and found that &lt;a href=&quot;http://www.x.org/wiki/AMDGeodeDriver&quot;&gt;the AMD Geode driver project on x.org&lt;/a&gt;. Even more convenient is &lt;a href=&quot;https://launchpad.net/%7Eq-funk/+archive&quot;&gt;Martin-Éric&apos;s PPA for the Gutsy and Hardy drivers&lt;/a&gt;.  Installing xserver-xorg-video-amd, and using the &lt;a href=&quot;http://www.freelikegnu.org/wp-content/uploads/2008/01/xorg.conf&quot;&gt;FreeLikeGnu xorg.conf&lt;/a&gt;, meant that xrandr now works flawlessly on the XO.  Now to get X to even recognize those rotation keys on the XO.</description>
  <comments>http://cyli.livejournal.com/37671.html</comments>
  <category>ubuntu x11 olpc</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/37407.html</guid>
  <pubDate>Fri, 29 Feb 2008 08:28:36 GMT</pubDate>
  <title>Ubuntu installed on OLPC XO</title>
  <link>http://cyli.livejournal.com/37407.html</link>
  <description>Thanks to several sources (&lt;a href=&quot;http://wiki.laptop.org/go/Ubuntu_On_OLPC_XO&quot;&gt;wiki.laptop.org Ubuntu installation&lt;/a&gt;, &lt;a href=&quot;http://wiki.laptop.org/go/Xfce&quot;&gt;wiki.laptop.org XFce&lt;/a&gt;, and &lt;a href=&quot;http://olpcnews.com/forum/index.php?board=68.0&quot;&gt;OLPC News forums&lt;/a&gt;), I managed to get Ubuntu working on my OLPC.&lt;br /&gt;&lt;br /&gt;The instructions were pretty straightforward, but the process wasn&apos;t entirely painless for me so I thought I&apos;d post a few tips: &lt;ol&gt;&lt;br /&gt;&lt;li&gt; 2G is absolutely fine.  My Ubuntu installation with XFce takes up about 35% of my 2G disk. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; You can use the Ubuntu install image linked to &lt;a href=&quot;http://olpcnews.com/forum/index.php?topic=1435.0&quot;&gt;from OLPC News forums (1.5G image)&lt;/a&gt;, but if you want to make your own: &lt;ul&gt;&lt;br /&gt;&lt;li&gt; When installing qemu &lt;a href=&quot;http://wiki.laptop.org/go/Ubuntu_On_OLPC_XO#Install_QEmu_and_the_Ubuntu_network_installer&quot;&gt;you really do want to install the bochs firmware&lt;/a&gt; because if you don&apos;t, your disk driver won&apos;t be detected while doing the Ubuntu install.  I missed that part in the instructions, and it was annoying simply because it took a while for the install to get up to that point. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; Back up your install images at certain stages so you can easily backtrack.  For some reason my disk images got corrupted several times after (and during) the xserver install, and I was quite happy to not have to start all over.  The Ubuntu install alone took a not insignificant amount of time. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; The how-to mentioned &lt;a href=&quot;http://wiki.laptop.org/go/Ubuntu_On_OLPC_XO#Get_Boot_Folder_and_Other_Files_from_XO_.28Kernel_and_Modules.29_From_XO&quot;&gt;ata errors&lt;/a&gt; and says to ignore them.  I thought it would be some small error during bootup, but no, ata errors were scrolling by every second during bootup.  It was pretty scary.  But yes, apparently it&apos;s harmless. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; After installing sysvinit, the qemu install wouldn&apos;t shut down, so I just closed the qemu window and booted back up.  It was fine. &lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;&lt;li&gt; I installed it on a microSD card - I have an SD card adapter and a USB adapter.  OpenFirmware recognized the SD card, but didn&apos;t recognize the USB disk for some reason.  My OLPC would mount the microSD/USB drive, but refused to boot off of it.  I eventually figured out that it wasn&apos;t my olpc.fth, but rather my microSD/USB adapter.  A different adapter worked just fine. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; Get the files off your OLPC onto a USB disk once (not the one your disk image is on), and copy it elsewhere.  It will be much less painful than pulling the files off your OLPC and onto your bootable USB or SD card multiple times. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; You can use either the olpc.fth&apos;s on &lt;a href=&quot;http://wiki.laptop.org/go/Ubuntu_On_OLPC_XO&quot;&gt;the wiki page&lt;/a&gt; or the one in &lt;a href=&quot;http://olpcnews.com/forum/index.php?topic=1525.0&quot;&gt;the forums&lt;/a&gt;.  My problem was that OpenFirmware would load the disk image from either the USB drive or the SD drive, but it would hang after loading ramdisk.  I spent a huge amount of time reinstalling because I thought I had done something wrong.  Apparently OpenFirmware freezes the display but &lt;a href=&quot;http://olpcnews.com/forum/index.php?topic=1767.0&quot;&gt;Ubuntu doesn&apos;t know to unfreeze it&lt;/a&gt; even after the OS is loaded.  The solution is to put the line &quot;unfreeze&quot; in your olpc.fth.&lt;/li&gt;&lt;br /&gt;&lt;li&gt; It&apos;s easier to &lt;a href=&quot;http://wiki.laptop.org/go/Xfce&quot;&gt;install xbindkeys and set up scripts&lt;/a&gt;, as well get your WPA PSK on your desktop than on the OLPC.  The keyboard on the OLPC is a pain to use even for me. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; If you use WEP, the following in /etc/network/interfaces works just fine: &lt;pre&gt;
iface eth1 inet dhcp
   wireless-essid SSID
   wireless-key KEY &lt;/pre&gt; &lt;/li&gt; &lt;br /&gt;&lt;/ol&gt;  I do have some unresolved issues though - if anyone has any suggestions it would be great, as I haven&apos;t found solutions yet. &lt;ol&gt;&lt;br /&gt;&lt;li&gt; &lt;a href=&quot;http://wiki.laptop.org/go/Xfce#Displaying_Battery_Status&quot;&gt;hal-device does not seem to have a charge_level line&lt;/a&gt; in Ubuntu, so I haven&apos;t figured out how to display battery charge levels in Ubuntu xfce &lt;/li&gt;&lt;br /&gt;&lt;li&gt; xrandr doesn&apos;t seem to work correctly in Ubuntu, &lt;a href=&quot;http://wiki.laptop.org/go/Xfce&quot;&gt;so I can&apos;t rotate my display&lt;/a&gt;.  I get the following error when executing xrandr -o right: &lt;pre&gt;
X Error of failed request:  BadMatch (invalid parameter attributes)
  Major opcode of failed request:  154 (RANDR)
  Minor opcode of failed request:  2 (RRSetScreenConfig)
  Serial number of failed request:  12
  Current serial number in output stream:  12 &lt;/pre&gt; Oddly enough, I get the same error on my desktop and &lt;span class=&apos;ljuser ljuser-name_glyf&apos; lj:user=&apos;glyf&apos; style=&apos;white-space: nowrap;&apos;&gt;&lt;a href=&apos;http://glyf.livejournal.com/profile&apos;&gt;&lt;img src=&apos;http://l-stat.livejournal.com/img/userinfo.gif&apos; alt=&apos;[info]&apos; width=&apos;17&apos; height=&apos;17&apos; style=&apos;vertical-align: bottom; border: 0; padding-right: 1px;&apos; /&gt;&lt;/a&gt;&lt;a href=&apos;http://glyf.livejournal.com/&apos;&gt;&lt;b&gt;glyf&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&apos;s desktop as well. &lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;</description>
  <comments>http://cyli.livejournal.com/37407.html</comments>
  <category>ubuntu olpc</category>
  <lj:security>public</lj:security>
  <lj:reply-count>1</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/37165.html</guid>
  <pubDate>Fri, 15 Feb 2008 16:49:29 GMT</pubDate>
  <title>Finally finished uploading all my vacation photos!</title>
  <link>http://cyli.livejournal.com/37165.html</link>
  <description>&lt;a href=&quot;http://www.flickr.com/photos/cyli/2266143875/in/set-72157602941661493/&quot;&gt;Iceland photos are up now&lt;/a&gt;</description>
  <comments>http://cyli.livejournal.com/37165.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/37028.html</guid>
  <pubDate>Sun, 27 Jan 2008 04:51:39 GMT</pubDate>
  <title>PS3 and Saturday nights in</title>
  <link>http://cyli.livejournal.com/37028.html</link>
  <description>We&apos;ve been fairly disappointed with the lack of good Wii games lately (and the low output resolution of the Wii) so we finally cleared out our games cabinet a bit, turned in our games and systems for store credit, and bought a PS3.&lt;br /&gt;&lt;br /&gt;It&apos;s gorgeous!  We also got &lt;a href=&quot;http://assassinscreed.uk.ubi.com/experience/&quot;&gt;Assassin&apos;s Creed&lt;/a&gt;, which got meh reviews but that I&apos;m quite enjoying so far.  What&apos;s neat is that you can download game demos in the background as you play; &lt;a href=&quot;http://www.devilmaycry.com&quot;&gt;Devil May Cry 4&lt;/a&gt; looks pretty awesome.  I also really like that &lt;a href=&quot;http://folding.stanford.edu/&quot;&gt;Folding@Home&lt;/a&gt; and &quot;Install Other OS&quot; are options on the main screen (although we haven&apos;t tried to install Linux yet). &lt;br /&gt;&lt;br /&gt;I spent enough Friday/Saturday nights out that I&apos;m tired of crowds and waiting in line for an hour for crowded trendy restaurants.  Just sat around eating some &lt;a href=&quot;http://cheaphealthygood.blogspot.com/2008/01/chicken-provencal-and-cookbook-hall-of.html&quot;&gt;chicken provencal&lt;/a&gt; and &lt;a href=&quot;http://cheaphealthygood.blogspot.com/2008/01/polenta-movie-trailer.html&quot;&gt;polenta&lt;/a&gt; (as opposed to my usual lazy pasta/mac-n-cheese and sausage/veggies dinner) and ran around base-jumping, dodging guards, and killing some manz.&lt;br /&gt;&lt;br /&gt;Totally beats trying to get into &lt;a href=&quot;http://www.sonsieboston.com&quot;&gt;Sonsie&lt;/a&gt; or &lt;a href=&quot;http://www.addisredsea.com&quot;&gt;Addis Red Sea&lt;/a&gt;.</description>
  <comments>http://cyli.livejournal.com/37028.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/36797.html</guid>
  <pubDate>Sat, 29 Dec 2007 20:08:23 GMT</pubDate>
  <title>Icelandic woman detained at customs</title>
  <link>http://cyli.livejournal.com/36797.html</link>
  <description>I recently came across an &lt;a href=&quot;http://www.iht.com/articles/ap/2007/12/14/europe/EU-GEN-Iceland-US.php&quot;&gt;article posted in the International Herald Tribune&lt;/a&gt; about an Icelandic woman who was detained by the Department of Homeland Security at JFK International Airport.  She was kept awake for 72 hours, given only bread and porridge once, and otherwise mistreated and humiliated because she had overstayed her student visa by 3 weeks 10 years ago.  When she was finally deported back to Iceland (and banned from entering the US again for 10 years), she wrote about her experience &lt;a href=&quot;http://eggmann.blog.is/blog/eggmann/entry/389611/#comm%20ents&quot;&gt;in her blog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Overstaying your visa means that you have to apply for a special visa the next time you visit.  She was not aware of this requirement because she had come back before without trouble.  The crime clearly did not fit the punishment here - it was a (unfortunately legal) abuse of power by the DHS.  Since a lot of my friends are foreign nationals, I just wanted to warn them to make sure all their paperwork was current and they were careful about visas and such.&lt;br /&gt;&lt;br /&gt;And yes, I did email the US embassy in Iceland to check this story before I posted it.</description>
  <comments>http://cyli.livejournal.com/36797.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/36474.html</guid>
  <pubDate>Fri, 28 Dec 2007 03:34:40 GMT</pubDate>
  <title>USB flash drive problem</title>
  <link>http://cyli.livejournal.com/36474.html</link>
  <description>I have a 1GB &lt;a href=&quot;http://flash.atpinc.com/products/view.php?product_id=1232&quot;&gt;Petito USB flash drive&lt;/a&gt; (and no, it is not bling-ed out nor do I wear it on a diamond necklace, but it is a small and aesthetically pleasing drive).  Whenever I plug it in, two disks mount:  a ~1GB disk on /dev/sdb, and a 512MB disk on /dev/sdc.  All my data is on the ~1GB disk, since I can&apos;t seem to do anything with the 512MB one.  It&apos;s magic, somehow.  GPartEd thinks it&apos;s 512MB of unallocated space, but mount shows it as vfat file format.&lt;br /&gt;&lt;br /&gt;It&apos;s not a huge problem, it&apos;s just annoying that whenever I plug in my USB disk, my data is randomly in either /media/disk-1 or /media/disk.  And the other disk is completely useless - it can&apos;t be formatted, and I can&apos;t figure out how to get it to not mount automatically.&lt;br /&gt;&lt;br /&gt;If anyone has any ideas, please let me know.</description>
  <comments>http://cyli.livejournal.com/36474.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/36292.html</guid>
  <pubDate>Sun, 23 Dec 2007 07:50:58 GMT</pubDate>
  <title>Damn you, genetics</title>
  <link>http://cyli.livejournal.com/36292.html</link>
  <description>Apparently I &lt;a href=&quot;http://scienceblogs.com/gnxp/2007/12/most_canadian_nonwhites_have_v.php&quot;&gt;may have a vitamin D deficiency&lt;/a&gt;.</description>
  <comments>http://cyli.livejournal.com/36292.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/35544.html</guid>
  <pubDate>Wed, 05 Dec 2007 00:37:01 GMT</pubDate>
  <title>Rare, vaguely-good idea from a seminary</title>
  <link>http://cyli.livejournal.com/35544.html</link>
  <description>You can read about it in &lt;a href=&quot;http://feeds.feedburner.com/~r/scienceblogs/pharyngula/~3/195211184/putting_women_in_their_proper.php&quot;&gt;this blog post&lt;/a&gt;. Basically, the Southwestern Baptist Theological Seminary has a Homemaker course/track for women.  Ok, I lied - this is a horrible idea that is misogynistic and degrading.  However, if you were to trim off all the religious bull regarding gender roles, and crunch it down into only one or two classes, and make said classes co-ed, it&apos;d be a good idea.&lt;br /&gt;&lt;br /&gt;But I do wish that actual schools have required life-skills courses, maybe named something else to remove the high school class stigma.  I took Home Economics in junior high; they taught us how to make cookies and cake.  The only useful bit I got from that class was &quot;soak baking pans right away helps to remove burned-on crud.&quot;&lt;br /&gt;&lt;br /&gt;What would have been more useful? &lt;ol&gt;&lt;br /&gt;&lt;li&gt; Taking such a class somewhat later in life, when I actually started to get money to spend rather than having to ask my parents for toys or clothes or food.  Granted, my parents spoiled me and bought stuff for me often rather than actually force me to budget for stuff I wanted, thus allowing me to pretend that I had &quot;savings&quot; (leftover money from allowance period to allowance period).  However, actually having money gave me a frame of reference as to how much things cost in relation to each other. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; Actually learning to cook, rather than to bake deserts.  For instance, learning about different types of spices, flavoring, maybe how much salt to use... how to plan and cook a nutritious meal, how to read food labels, etc.  Instead, they gave us a copy of the food pyramid and recipes for cakes. Rather than just make you cook stuff over and over, the class could give you a list of resources to go to and teach you how to evaluate said recipes in terms of nutrition, difficulty, and expense.  &lt;/li&gt;&lt;br /&gt;&lt;li&gt; A class that included more economics... or at least personal finance and accounting.  And none of that hand-wavy &apos;save money oowowoooh&apos; crud either.  You know, debt, interest rates, inflation, exchange rates, time value of money, expected value, risks, market volatility, etc.  It doesn&apos;t ACTUALLY have to get into demand and monetary policies and all that, but anything involves real math and that gets the point about compounding credit card debt being bad would be effective. &lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;Granted, my parents and living away at college taught me a lot of that stuff, but since American consumer debt &amp;gt;&amp;gt; American savings, I&apos;m guessing that most people can&apos;t count on much of an education in this area.</description>
  <comments>http://cyli.livejournal.com/35544.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/35223.html</guid>
  <pubDate>Sat, 01 Dec 2007 20:11:29 GMT</pubDate>
  <title>Knitting and Brains</title>
  <link>http://cyli.livejournal.com/35223.html</link>
  <description>I&apos;ve recently taken up knitting (I knit Matthew a scarf, which he dutifully wore once and now keeps at his desk because he is not a scarf person), and I&apos;ve discovered that what I really want to do with my knitting is to eventually make this:  &lt;center&gt;&lt;a href=&quot;http://imaginaryfriends.typepad.com/neuroscienceart/2006/09/karen_norberg_1.html&quot;&gt;&lt;img src=&quot;http://imaginaryfriends.typepad.com/photos/uncategorized/karen_norberg_1_1.jpg&quot; width=&quot;75%&quot; height=&quot;75%&quot;&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;In other brain news, I recently &lt;a href=&quot;http://www.technologyreview.com/Biotech/19767/page1/&quot;&gt;found out&lt;/a&gt; that the &lt;a href=&quot;http://bluebrain.epfl.ch/&quot;&gt;Blue Brain Project&lt;/a&gt; (IBM and EPFL [Ecole Polytechnique Fédérale de Lausanne]) has managed to successfully model 10k neurons and 30 million synapses in a rat&apos;s neocortical column.  Pretty damn awesome :D</description>
  <comments>http://cyli.livejournal.com/35223.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>2</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/34886.html</guid>
  <pubDate>Fri, 23 Nov 2007 08:00:42 GMT</pubDate>
  <title>Photos of France mostly up</title>
  <link>http://cyli.livejournal.com/34886.html</link>
  <description>My photographs from France are mostly up.  Now I still have to go through Iceland photos. There are already some gems though, including this one.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.flickr.com/photos/cyli/1879386464/&quot; title=&quot;photo sharing&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2167/1879386464_dcea923b45_m.jpg&quot; alt=&quot;&quot; style=&quot;border: solid 2px #000000;&quot; /&gt;&lt;/a&gt; &lt;br /&gt; &lt;span style=&quot;font-size: 0.9em; margin-top: 0px;&quot;&gt;  &lt;a href=&quot;http://www.flickr.com/photos/cyli/1879386464/&quot;&gt; Matthew approves of the anti-cancer recycling pod.&lt;/a&gt;&lt;/span&gt;</description>
  <comments>http://cyli.livejournal.com/34886.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>1</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/34483.html</guid>
  <pubDate>Sun, 14 Oct 2007 19:24:11 GMT</pubDate>
  <title>Which way is the dancer spinning?</title>
  <link>http://cyli.livejournal.com/34483.html</link>
  <description>&lt;img src=&quot;http://scienceblogs.com/neurophilosophy/0%2C%2C5693171%2C00.gif&quot; /&gt;&lt;br /&gt;&lt;a href=&quot;http://scienceblogs.com/neurophilosophy/0%2C%2C5693171%2C00.gif&quot;&gt;From this article&lt;/a&gt; from the blog, &lt;a href=&quot;http://scienceblogs.com/neurophilosophy/&quot;&gt;Neurophilosophy&lt;/a&gt;.</description>
  <comments>http://cyli.livejournal.com/34483.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>2</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/34256.html</guid>
  <pubDate>Fri, 03 Aug 2007 05:38:04 GMT</pubDate>
  <title>Finally something to wear an evening gown to!</title>
  <link>http://cyli.livejournal.com/34256.html</link>
  <description>&lt;a href=&quot;http://upcoming.yahoo.com/event/213882/&quot;&gt;If only the tickets weren&apos;t sold out.&lt;/a&gt;</description>
  <comments>http://cyli.livejournal.com/34256.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/33873.html</guid>
  <pubDate>Sun, 15 Jul 2007 22:11:52 GMT</pubDate>
  <title>Starbucks</title>
  <link>http://cyli.livejournal.com/33873.html</link>
  <description>Looks like the subject of &lt;a href=&quot;http://www.flickr.com/photos/cyli/42770158/in/set-936053/&quot;&gt;one of my favorite photos from my trip to Beijing&lt;/a&gt; is going to be no more, since &lt;a href=&quot;http://news.bbc.co.uk/2/hi/asia-pacific/6898629.stm&quot;&gt;the Starbucks in the Forbidden City is closing down&lt;/a&gt;.  &lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://farm1.static.flickr.com/26/42770158_d96c21b1ff.jpg?v=0&quot; /&gt;&lt;br /&gt;&lt;br /&gt;The Starbucks was jarring and a bit disturbing to see, bringing to mind imagery from movies like &lt;a href=&quot;http://en.wikipedia.org/wiki/Number_2_(Austin_Powers)#Relationship_with_Dr._Evil&quot;&gt;Austin Powers 2&lt;/a&gt;.  On the other hand the frappucchino (the caffeine and the excessive amounts of sugar) was a nice pick-me-up after four hours of walking around.</description>
  <comments>http://cyli.livejournal.com/33873.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/33576.html</guid>
  <pubDate>Sat, 07 Jul 2007 17:55:26 GMT</pubDate>
  <title>Who needs VMWare?</title>
  <link>http://cyli.livejournal.com/33576.html</link>
  <description>&lt;a href=&quot;http://www.virtualbox.org/&quot;&gt;Open source virtualization software&lt;/a&gt; + &lt;a href=&quot;http://www.virtualbox.org/wiki/Downloads&quot;&gt;repositories for Feisty, Edgy, and Dapper&lt;/a&gt; = much happiness&lt;br /&gt;VirtualBox&apos;s UI is very much like VMWare&apos;s, sans the nastiness with the reconfiguring VMWare every time you upgrade your kernel.  Did I mention that it&apos;s free (for personal use, anyway)?  Good performance too.</description>
  <comments>http://cyli.livejournal.com/33576.html</comments>
  <category>linux</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/33460.html</guid>
  <pubDate>Sat, 23 Jun 2007 02:42:25 GMT</pubDate>
  <title>Reading IR signals from your TV remote</title>
  <link>http://cyli.livejournal.com/33460.html</link>
  <description>&lt;span class=&apos;ljuser ljuser-name_glyf&apos; lj:user=&apos;glyf&apos; style=&apos;white-space: nowrap;&apos;&gt;&lt;a href=&apos;http://glyf.livejournal.com/profile&apos;&gt;&lt;img src=&apos;http://l-stat.livejournal.com/img/userinfo.gif&apos; alt=&apos;[info]&apos; width=&apos;17&apos; height=&apos;17&apos; style=&apos;vertical-align: bottom; border: 0; padding-right: 1px;&apos; /&gt;&lt;/a&gt;&lt;a href=&apos;http://glyf.livejournal.com/&apos;&gt;&lt;b&gt;glyf&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; and I lost our TV remote and wanted a replacement to change the volume, the input settings, and to turn it on.  We wanted a universal remote, but didn&apos;t want all the extra stuff like channels and whatnot.  I saw &lt;a href=&quot;http://features.engadget.com/2004/07/27/how-to-turn-your-ipod-in-to-a-universal-infrared-remote-control/&quot;&gt;this&lt;/a&gt; but alas, the product is no longer available even on eBay.  So I&apos;m was going to try to replicate it using Radioshack parts.&lt;br /&gt;&lt;br /&gt;As it turns out, you don&apos;t actually need to record the IR signals for many TVs.  &lt;a href=&quot;http://www.codeproject.com/netcf/PocketBeamer.asp&quot;&gt;This guy points out&lt;/a&gt; that the information can be taken from Pronto codes.  If you don&apos;t know what Pronto is, they&apos;re &lt;a href=&quot;http://www.pronto.philips.com/&quot;&gt;exceptionally cool but hideously expensive home automation remotes&lt;/a&gt; made by Philips.  Looking around though I could not find any codes for my particular TV, so I had to build my IR-receiver-to-audio-in device.  This meant that I had to buy a new remote anyway.  :(&lt;br /&gt;&lt;br /&gt;You will need: a 1/8&quot; mini stereo plug, 3 audio wires, and 1 IR receiver module.  I found that rather than buying plugs and wires it is cheaper just to buy an audio to audio cable of whatever length and then cut this cable somewhere in the middle.  Mic ports in soundcards kindly provide a steady 5V to mics, so I used this to power my IR receiver.  I used &lt;a href=&quot;http://www.radioshack.com/product/index.jsp?productId=2049727&quot;&gt;an IR receiver module I got for $3.50 at Radioshack&lt;/a&gt; and just wired it to the audio cable.  Then, point and click (and record) and voila!&lt;br /&gt;&lt;br /&gt;&lt;center&gt; &lt;img src=&quot;http://i43.photobucket.com/albums/e360/avanthera/657425630_408dbe1931_o.jpg&quot; border=&quot;1&quot; /&gt; &lt;/center&gt;&lt;br /&gt;We have a waveform!  I used &lt;a href=&quot;http://audacity.sourceforge.net/&quot;&gt;Audacity&lt;/a&gt; to record and view the audio - it&apos;s really a nice sound editor.  You&apos;ll notice that it&apos;s clipped - it doesn&apos;t really matter though, since it can&apos;t really be used without being modified anyway.  Or I guess it can, but I&apos;m better at software than hardware.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.remotecentral.com/features/irdisp2.htm&quot;&gt;This really tells you all you need to know about that IR code.&lt;/a&gt; You only care about how long the waveform is positive and how long it&apos;s negative.  The other differences in amplitude are from the capacitor in the IR module.  Basically in pulse-width modulated IR signals like this one, bits are encoded by a burst of transmission followed by a burst of silence.  The way Sony encodes signals is that the high bits consist of a 48 cycles (carrier signal cycles) of transmission followed by 24 cycles of silence, and the low bits consist of 24 cycles of transmission followed by 24 cycles of silence.  So all I really did, after verifying that the durations were what they should be given Sony&apos;s 40kHz carrier frequency, was look at the width of each of the pulses.  This is all really badly explained, but the link above provides a very thorough explanation.&lt;br /&gt;&lt;br /&gt;The picture above isn&apos;t very good quality so I&apos;ll explain what you see: it&apos;s the pulse for &quot;Power&quot; being sent three times.  You can&apos;t see the individual highs and lows in the pulse since I didn&apos;t zoom in before taking a screenshot but as far as I can determine, so long as you hold the button down on the remote, it sends out the same pulse over and over.  Apparently some other remotes send out different pulses if you hold down the button vs just tapping it.   &lt;br /&gt;&lt;br /&gt;So that&apos;s it!  I managed to record all the buttons that I needed.  I have yet to generate a clean signal or build the transmitter, but as I now have an actual remote the urgency is somewhat less.  I&apos;m still interested in building a poor man&apos;s version of the $500 &lt;a href=&quot;http://www.pronto.philips.com&quot;&gt;Pronto&lt;/a&gt; but basically my TV is my only IR device.&lt;br /&gt;&lt;br /&gt;&lt;a name=&quot;cutid1&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;b&gt; Diagrams on how to wire the audio cable to the IR receiver module: &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt; &lt;img src=&quot;http://i43.photobucket.com/albums/e360/avanthera/595163977_2bc4af34fd_o.png&quot; border=&quot;1&quot; /&gt;&lt;img src=&quot;http://i43.photobucket.com/albums/e360/avanthera/656770837_13ac68047c_o.jpg&quot; border=&quot;1&quot; /&gt; &lt;/center&gt;&lt;br /&gt;&lt;br /&gt; Once you strip off the outer insulation, the inner wires should be exposed.  In my case, there were two insulated wires, and non-insulated shield (loose wires) all around the central two wires.  This non-insulated shield almost always corresponds to ground, but you can easily figure out/confirm which wires go to which part of the plug (ground, the ring, or the tip) by checking connectivity.&lt;br /&gt;&lt;br /&gt;&lt;b&gt; Connectivity Test: &lt;/b&gt; tests whether a circuit is complete.  Set your multimeter to measure resistance (Ω - ohms), and set it to the highest resistance range possible.  Notice that if you hold the probes apart, the resistance is infinity (or the max of the range) and when you touch the probes together (thus completing the circuit) the resistance is either extremely low or zero, depending on how good the ohmmeter function of your multimeter is.  So to test whether a circuit is complete, touch each probe to either end of the circuit and determine whether the resistance is infinity (circuit incomplete) or zero (complete).  &lt;br /&gt;&lt;br /&gt;In our case, this means touching one probe to some part of the plug and the other probe to one of the exposed wires. When the resistance is zero, the wire that you are touching goes to the part of the plug that you are touching.&lt;br /&gt;&lt;br /&gt;According to Wikipedia, the microphone input of a generic computer soundcard uses&lt;a href=&quot;http://en.wikipedia.org/wiki/Jack_plug#Computer_sound&quot;&gt;&quot;a 3.5 mm TRS as a mono microphone input, and deliver[s] a 5 V polarising voltage on the ring to power electret microphones from the card manufacturer&quot;&lt;/a&gt;.  I don&apos;t actually know what a polarizing voltage is but I&apos;m guessing that it just means a voltage that polarizes the dielectric material in your mic. &lt;a href=&quot;http://www.epanorama.net/circuits/microphone_powering.html&quot;&gt;Here is a really detailed description of how microphones are powered.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.radioshack.com/product/index.jsp?productId=2049727&quot;&gt;The IR receiver from Radioshack&lt;/a&gt; has three prongs corresponding to VCC, Ground, and Out.  You connect VCC to the wire that leads to the ring, Ground to the wire that leads to ground, and Out to the wire that leads to the tip.  Radioshack&apos;s website doesn&apos;t provide a diagram of this module, so I scanned in the back of the package (above).&lt;br /&gt;</description>
  <comments>http://cyli.livejournal.com/33460.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/32658.html</guid>
  <pubDate>Thu, 14 Jun 2007 19:51:04 GMT</pubDate>
  <title>Growing things in a wind tunnel</title>
  <link>http://cyli.livejournal.com/32658.html</link>
  <description>Inspired by my friends Natasha and Nick (who appropriated a bit of green space near an MIT parking lot for their vegetable garden) I decided that I could use my balcony as more than storage space for my bike... if my bike hadn&apos;t been stolen.  I went to Home Depot and picked up a lightweight planter, some dirt, and some vegetable plants.  I&apos;ve never really tried to keep a plant before, except for one fern that died, so I&apos;m not sure what kind of light, temperature, etc. cucumbers and zucchini need.  I figured a few hours of direct sunlight in the morning would be fine and if not - well, the plants were cheap.&lt;br /&gt;&lt;br /&gt;I forgot to take into account how windy it is out on my balcony.  I nearly lost a sneaker out there.  Even though I tried to protect my plants by rooting them deeply, they got &lt;a href=&quot;http://www.flickr.com/photos/cyli/548753374/in/photostream/&quot;&gt;blown over after an hour&lt;/a&gt;.  Not wanting the plants to die the day I bought them, I brought the whole planter inside so that they could recover from the stress of being re-potted without having to contend with the wind as well. &lt;a href=&quot;http://www.flickr.com/photos/cyli/548753386/in/photostream/&quot;&gt;They perked up after a day.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Now I&apos;m entertaining ideas of building a mini greenhouse out there, although it would serve more as a windbreak than anything else.  I was thinking of putting the planter in a tall fish tank but I&apos;d rather not put anything as breakable as glass on my balcony.  The last thing I need is a pebble picked up by the wind to shatter the fish tank.  Some glass would probably also be picked up by the wind and injure either person or property.  I could also buy a large clear plastic tub in which to put the planter, but I&apos;d rather not pay very much (if at all) for the windbreak.</description>
  <comments>http://cyli.livejournal.com/32658.html</comments>
  <category>food</category>
  <category>home</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/32032.html</guid>
  <pubDate>Fri, 01 Jun 2007 07:41:21 GMT</pubDate>
  <title>A green tint</title>
  <link>http://cyli.livejournal.com/32032.html</link>
  <description>I&apos;ve been looking at various ways to reduce energy consumption, etc. lately (ever since I received a huge electric bill for all the computers running in our apartment).  Getting suspend to work on my desktops at home has been a challenge, and still fails sometimes.  I haven&apos;t been able to get Wake On Lan to work reliably in Ubuntu at all.&lt;br /&gt;&lt;br /&gt;But that got me thinking about alternative energy sources, recycling, etc., and I thought I&apos;d post a few links that might be helpful for anyone else living in the Massachusetts: &lt;ol&gt;&lt;br /&gt;&lt;li&gt; &lt;a href=&quot;http://www.dsireusa.org/library/includes/map2.cfm?state=MA&amp;amp;currentpageid=1&quot;&gt;Massachusetts State Tax incentives&lt;/a&gt; for putting in renewable energy sources in your residence or business. &lt;/li&gt;&lt;br /&gt;&lt;li&gt; &lt;a href=&quot;http://www.motorwavegroup.com/new/motorwind/index.html&quot;&gt;MotorWind urban wind turbines&lt;/a&gt; - for those of us who don&apos;t live on a giant property where you can put up a 30-foot wind turbine, Lucien Gambarota has developed small arrays of wind turbines that can be put up on a balcony or a roof.  His business is based out of HK, and currently shipping to the US costs about $300 USD.   When I emailed him he said that he is trying to get distributors in my area (whether he means Massachusetts or the Northeastern US in general I&apos;m not sure) and that they will sell a set of 20 wind turbines for $250.&lt;br /&gt;&lt;br /&gt;I like that the system is very modular, and that you can buy the wind turbines and go shopping for everything else at Radio Shack.  The problem for me is that I can think of no way to power my apartment conveniently with these; there is no outlet outside on my balcony and no way I can run a wire inside my apartment without leaving my balcony door open (and waste more energy either heating or cooling my apartment).  I&apos;d have to charge up a battery and physically bring the battery inside to run stuff off it - I guess we can power my TV off of a battery, since we use the TV only sporadically.&lt;/li&gt;&lt;br /&gt;&lt;li&gt; &lt;a href=&quot;http://www.ccrane.com/lights/index.aspx&quot;&gt;LED light bulbs and strip lighting&lt;/a&gt; - basically these are clusters of LEDs that can be used in place of incandescent bulbs.  They use less power and last longer, although they are a lot more expensive than regular bulbs. I wish there were LED replacements for halogen light bulbs as well.  &lt;/li&gt;&lt;br /&gt;&lt;li&gt; &lt;a href=&quot;http://maps.google.com/maps/ms?ie=UTF8&amp;amp;hl=en&amp;amp;msa=0&amp;amp;om=1&amp;amp;msid=103854822176676781848.00000112e61d4dd555a49&amp;amp;ll=42.40226,-71.041632&amp;amp;spn=0.010505,0.020084&amp;amp;z=16&quot;&gt;A map I&apos;m maintaining of places you can donate/sell/recycle used items&lt;/a&gt; - this is in no way complete.  At first I had to keep going to the Goodwill Store, but lugging 20 lb boxes of books or somewhat-lighter-but-still-heavy bags of clothing on the MBTA is not really feasible or convenient and parking is also inconvenient.  I recently found a store that has clothing drop boxes in the parking lot though.  Where I grew up (NY, suburbia) almost every grocery shopping center had donation boxes in the parking lot, but it&apos;s less popular in Boston.  I guess there isn&apos;t as much open space.&lt;/li&gt;&lt;br /&gt;&lt;li&gt; If you can&apos;t find anyplace else, you can also cart electronic items and/or books to MIT campus, dump them in an out-of-the-way corner indoors or on a loading dock, and post to the reuse mailing list (r  e  u  s  e  {at}  m  i  t  {dot}  e  d  u).  Make sure to post a sign above them that says &quot;reuse&quot;, put your pile well away from piles of stuff that do not say &quot;reuse&quot; on them, and include the location in the post (MIT buildings go by numbers). &lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;</description>
  <comments>http://cyli.livejournal.com/32032.html</comments>
  <category>energy</category>
  <category>home</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/31287.html</guid>
  <pubDate>Wed, 25 Apr 2007 03:05:34 GMT</pubDate>
  <title>Nostalgia</title>
  <link>http://cyli.livejournal.com/31287.html</link>
  <description>One of the many many things I miss about my parents is my mom&apos;s cooking.  I don&apos;t really know how to cook Chinese food, and I mean real Chinese food that my mom used to cook every day.  Not stir fry or generic stuff like that, but braised beef tongue, taro, all kinds of Chinese vegetables, oxtail/tendon/daikon soups, etc.  The only thing I vaguely know how to make is steamed pork (but I lack a steamer).  I&apos;ve been trying to collect recipes from my aunts, who not only know how to cook this stuff but who  know how my mom used to cook some of this stuff too.  They give me their instructions entirely in Chinese though, and there&apos;s a lot of seasonings I either don&apos;t recognize and/or are not available from American supermarkets.&lt;br /&gt;&lt;br /&gt;So I&apos;m building a list I can bring to Chinatown, since my Mandarin is probably not up to ordering this stuff (I know the Cantonese names, but they don&apos;t always translate very well).  Also, I&apos;m illiterate.&lt;br /&gt;&lt;br /&gt;&lt;table cellspacing=&quot;5&quot; cellpadding=&quot;2&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; 苦瓜 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; ku2 gua4 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Bitter_melon&quot;&gt;bitter melon&lt;/a&gt; &lt;/td&gt;
  &lt;td&gt; &lt;i&gt;Momordica charantia&lt;/i&gt; &lt;/td&gt;
&lt;/tr&gt; 
&lt;tr&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; 芋头 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; yu3 tou1 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Taro&quot;&gt;taro&lt;/a&gt; &lt;/td&gt;
  &lt;td align=&quot;left&quot;&gt; &lt;i&gt;Colocasia esculenta&lt;/i&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; 空心菜 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; kong4 xin4 cai3 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Ipomoea_aquatica&quot;&gt;water spinach&lt;/a&gt; &lt;/td&gt;
  &lt;td&gt; &lt;i&gt;Ipomoae aquatica&lt;/i&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; 白萝卜 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; bai1 luo1 bo1 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Daikon&quot;&gt;daikon&lt;/a&gt; &lt;/td&gt;
  &lt;td&gt; &lt;i&gt;Raphanus sativus&lt;/i&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; 牛舌頭 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; niu2 she1 tou1 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; cow tongue &lt;/td&gt;
  &lt;td&gt; I don&apos;t know if the Chinese is right - in Cantonese it&apos;s just &quot;cow tongue&quot; (translated directly) &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; 牛筋 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; niu2 jin4 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; beef tendon &lt;/td&gt;
  &lt;td&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; 藕 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; ou2 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; &lt;a href=&quot;http://www.asiafood.org/glossary_1.cfm?alpha=L&amp;amp;wordid=3361&amp;amp;startno=27&amp;amp;endno=51&quot;&gt;lotus root&lt;/a&gt; &lt;/td&gt;
  &lt;td&gt; rhizome part of &lt;i&gt;Nelumbo nucifera&lt;/i&gt; (Indian national flower)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; 韭菜 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; jiu2 cai3 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Garlic_chives&quot;&gt;garlic/Chinese chives&lt;/a&gt; &lt;/td&gt;
  &lt;td&gt; &lt;i&gt;Allium ramosum&lt;/i&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt; 霸王花 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; ba3 wang1 hua4 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; &lt;i&gt;Hylocereus undatus&lt;/i&gt; flower &lt;/td&gt;
  &lt;td&gt; (Thanks Aunty!) Translates to &quot;Tyrant flower&quot; (approximately). Cantonese: ba wong fa.  These come dried in packages and need to be rehydrated before cooking (in soup). &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt; 椶子 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; zong3 zi2 &lt;/td&gt;
  &lt;td nowrap=&quot;nowrap&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Zong_zi&quot;&gt;glutinous rice dumpling&lt;/a&gt; &lt;/td&gt;
  &lt;td&gt; Extremely delicious - how often do you get to eat tetrahedral food?&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;&lt;br /&gt;I didn&apos;t want to put this in my shopping list, but something else I remembered from childhood (and will not eat now) is &lt;a href=&quot;http://en.wikipedia.org/wiki/Fat_choy_(vegetable)&quot;&gt;hair moss&lt;/a&gt; (Chinese: 发菜, pinyin: fa3 cai3, Cantonese: fat choy).  Overharvesting it is bad for the environment, and apparently it contains a toxic amino acid.&lt;br /&gt;&lt;br /&gt;If anyone has any other suggestions, please supply the Chinese and the pinyin.  I would also love it if you would tell me how to cook it. :)  I&apos;d also love to add sausage to this list, but I only know the Cantonese for it.  Of course, sausage is easily recognizable so I can get to it even without the name written out in Chinese.&lt;br /&gt;&lt;br /&gt;Edit: finally got the pinyin and characters for all the items on my list.  Thanks a ton to &lt;span class=&apos;ljuser ljuser-name_murphyzlaw&apos; lj:user=&apos;murphyzlaw&apos; style=&apos;white-space: nowrap;&apos;&gt;&lt;a href=&apos;http://murphyzlaw.livejournal.com/profile&apos;&gt;&lt;img src=&apos;http://l-stat.livejournal.com/img/userinfo.gif&apos; alt=&apos;[info]&apos; width=&apos;17&apos; height=&apos;17&apos; style=&apos;vertical-align: bottom; border: 0; padding-right: 1px;&apos; /&gt;&lt;/a&gt;&lt;a href=&apos;http://murphyzlaw.livejournal.com/&apos;&gt;&lt;b&gt;murphyzlaw&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; and my aunt!</description>
  <comments>http://cyli.livejournal.com/31287.html</comments>
  <category>language</category>
  <category>chinese</category>
  <category>food</category>
  <lj:security>public</lj:security>
  <lj:reply-count>5</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/31174.html</guid>
  <pubDate>Sat, 31 Mar 2007 23:49:39 GMT</pubDate>
  <title>Pachelbel</title>
  <link>http://cyli.livejournal.com/31174.html</link>
  <description>&lt;a href=&quot;http://www.youtube.com/watch?v=JdxkVQy7QLM&quot;&gt;Is it bad that I want Pachelbel played at my wedding?&lt;/a&gt;</description>
  <comments>http://cyli.livejournal.com/31174.html</comments>
  <lj:security>public</lj:security>
  <lj:reply-count>2</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/30661.html</guid>
  <pubDate>Fri, 30 Mar 2007 02:56:58 GMT</pubDate>
  <title>Photography and the law</title>
  <link>http://cyli.livejournal.com/30661.html</link>
  <description>So at various points in the last few years, I&apos;ve been shooed away from buildings and such that I&apos;ve wanted to take pictures of by security guards.  Lately, a couple of days ago, a Cambridge traffic cop actually told me I wasn&apos;t allowed to photograph a bridge I live near.  From reading random internet sources and discussion forums, I get the impression that hyper vigilance (i.e. paranoia) seems to be more and more common these days, and when people seem someone with a camera they tend to think (a) terrorist!, (b) paparazzi / pervert, and/or (c) child pornographer / pedophile. It annoys me that I so rarely take photographs and yet can name at least 5-8 instances where I have been forbidden from taking pictures.  So I decided to look up some rules about what photographers can and cannot do.  There are some very useful and succinct resources out there:&lt;br /&gt;&lt;br /&gt;1)  &lt;a href=&quot;http://www.krages.com/phoright.htm&quot;&gt;Photographer&apos;s Rights&lt;/a&gt; - a flyer that will help you explain your rights to folks who stop you or harass you about photography.&lt;br /&gt;2)  &lt;a href=&quot;http://rcfp.org/photoguide/&quot;&gt;Photographer&apos;s Guide to Privacy&lt;/a&gt; - a primer on what does and does not constitute an invasion of privacy for photographers.&lt;br /&gt;&lt;br /&gt;As it turns out, in almost every single instance I was in the right.  There was that one time that a soldier with a machine gun told me I wasn&apos;t allowed to photograph a subway station in New York, but I figure a member of the armed forces patrolling NYC a few months after 9-11 is &lt;a href=&quot;http://bradhicks.livejournal.com/316176.html&quot;&gt;probably in the right no matter what he says, so long as he is not actively hurting me&lt;/a&gt;.  Besides, his machine gun can take my camera in a fight.  Anyway, since I tend to photograph the area I live in, I&apos;ve also looked up &lt;a href=&quot;http://bpc.iserver.net/codes/cbridge/index.htm&quot;&gt;Cambridge MA Municipal Codes&lt;/a&gt; and the &lt;a href=&quot;http://www.mass.gov/legis/laws/mgl/&quot;&gt;General Laws of Massachusetts&lt;/a&gt; as well.&lt;br /&gt;&lt;br /&gt;Cambridge doesn&apos;t seem to have any laws governing privacy or the act of photography (as opposed to the ownership of photographic works) but does have laws w.r.t. tresspassing (which may or may not pose a problem for photographers).  I haven&apos;t read through all the ordinances - just browsed the section titles and use their search function. &lt;a name=&quot;cutid1&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;pre&gt;    Title 9 PUBLIC PEACE, MORALS AND WELFARE

        Section 9.04.030 Trespassing on public property.
            A.    No person shall trespass on the roof of a public building or within a school
                    building after regular school hours without the prior permission of a duly
                    authorized public official.
            B.    At least two signs shall be posted on all public buildings with not less than
                    one inch letters, not more than ten feet, and not less than six feet from the
                    ground, black letters on white background as follows:

                City of Cambridge
                    No Trespassing and
                    No Defacing of this public building.
                    Violators will be prosecuted to the
                    full extent of the law.
                City Manager
            C.    Any person who violates any provision of this section shall be subject to
                    a fine of not more than one hundred dollars for the first offense, not more
                    than two hundred dollars for the second offense and not more than three
                    hundred dollars for subsequent offenses.
                    (Ord. 1049 § 2, 1987: prior code § 13-3) 

    Section 100.02.090 Streets, Sidewalks and Public Places
        Public parks, playgrounds and the public domain
        ALM GL c 45        
        Improvement districts
        ALM GL c 40 § 44&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Massachusetts actually does have a law regarding photography, but it&apos;s in the chapter entitled &quot;Crimes Against Chastity, Morality, Decency and Good Order&quot;.  Basically don&apos;t photograph/disseminate/publish nude or semi-nude photos of anyone without their express consent.  I&apos;ll interpret that more widely to mean &quot;don&apos;t photograph anyone, no matter what state of undress, if they are somewhere with a reasonable expectation of privacy&quot;.  &lt;a name=&quot;cutid2&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;pre&gt;     Chapter 272:  Section 104. Photographing, videotaping or electronically surveilling
                           partially nudeor nude person; exceptions; punishment
       Section 104.
            (a) As used in this section, the following words shall have the following meanings:
                “Electronically surveils” or “electronically surveilled”, to view, obtain or
                record a person’s visual image by the use or aid of a camera, cellular or other
                wireless communication device, computer, television or other electronic device.
            (b) Whoever willfully photographs, videotapes or electronically surveils another
                person who is nude or partially nude, with the intent to secretly conduct or
                hide such activity, when the other person in such place and circumstance
                would have a reasonable expectation of privacy in not being so photographed,
                videotaped or electronically surveilled, and without that person’s knowledge
                and consent, shall be punished by imprisonment in the house of correction for
                not more than 2 1/2 years or by a fine of not more than $5,000, or by both such
                fine and imprisonment.
            (c) Whoever willfully disseminates the visual image of another person who is nude
                or partially nude, with knowledge that such visual image was unlawfully
                obtained in violation of subsection (b) and without consent of the person so
                depicted, shall be punished by imprisonment in the house of correction for not
                more than 2 1/2 years or in state prison for a period of not more than 5 years, or
                by a fine of not more than $10,000, or by both such fine and imprisonment.
            (d) This section shall not apply to a merchant that electronically surveils a customer
                changing room, provided that signage warning customers of the merchant’s
                surveillance activity is conspicuous posted at all entrances, and in the interior of
                any changing room electronically surveilled.
            (e) This section shall not apply to a law enforcement officer when acting within the
                scope of the officer’s authority under applicable law, or by an order or warrant
                issued by a court.
            (f) A sheriff, deputy sheriff or police officer may arrest without a warrant, any
                person believed upon probable cause to have violated this section.
            (g) Any photograph, videotape or other recorded visual image, depicting a person
                who is nude or partially nude that is part of any court record arising from a
                prosecution under this section, shall not be open to public inspection and shall
                only be made available for inspection by court personnel to any law enforcement
                officer, prosecuting attorney, defendant’s attorney, defendant, or victim connected
                to such prosecution, unless otherwise ordered by the court.
            (h) A justice of the superior court or district court in a prosecution under this
                section may issue appropriate orders to restrain or prevent the unlawful
                dissemination of a person’s visual image in violation of this section. &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Then there&apos;s the typical First Amendment freedom of speech and freedom of press rights, as well as &lt;a href=&quot;http://www.mass.gov/legis/const.htm#cart077.htm&quot;&gt;Article XVI of the Massachusetts Constitution:&lt;/a&gt; &quot;The liberty of the press is essential to the security of freedom in a state: it ought not, therefore, to be restrained in this commonwealth. The right of free speech shall not be abridged.&quot;  &lt;br /&gt;&lt;br /&gt;DISCLAIMER: I am not an attorney nor qualified to give any sort of legal advice.  I&apos;m just some person who can read stuff on the internet.  Please consult an attorney if you actually need legal advice.</description>
  <comments>http://cyli.livejournal.com/30661.html</comments>
  <category>photography</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/30274.html</guid>
  <pubDate>Thu, 29 Mar 2007 22:14:15 GMT</pubDate>
  <title>DIY built-in flash diffuser project</title>
  <link>http://cyli.livejournal.com/30274.html</link>
  <description>Rather than work on stuff I&apos;m SUPPOSED to work on (I was really fuzzy-headed and bleary yesterday) I decided to make myself a diffuser for my camera.  I was inspired by &lt;a href=&quot;http://www.lumiquest.com/softscreen.htm&quot;&gt;LumiQuest&apos;s Soft Screen diffuser&lt;/a&gt; but didn&apos;t want to shell out the cash for more photographic equipment when I don&apos;t actually use my camera that much (something I&apos;m hoping to rectify).  Also, the LumiQuest Soft Screen is open on the sides - I wanted a more or less closed box that reflected as much light as possible toward the translucent window.  &lt;br /&gt;&lt;br /&gt;Lots of other folk have their own DIY projects too - my favorite is &lt;a href=&quot;http://www.listsanddiagrams.com/archives/2005/10/diffuser.htm&quot;&gt;this guy&apos;s&lt;/a&gt; but I lack a suitable plastic box (also the rotary tools to cut said plastic box).  The project turned out decently, although it looks very amateurish. I didn&apos;t really spend a great deal of time measuring anything or folding precisely (as you can tell since it &lt;a href=&quot;http://www.flickr.com/photos/cyli/439093096/in/photostream/&quot;&gt;sits crookedly on my desk&lt;/a&gt;) but it works.&lt;br /&gt;&lt;br /&gt;Anyway, here is a photo of an image taken without the diffuser:&lt;br /&gt;&lt;img src=&quot;http://farm1.static.flickr.com/158/439093076_7cd1e09b2e.jpg?v=0&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Notice the harsh shadows (especially the one cast from my 17-40L).  And here is one taken with the diffuser:&lt;br /&gt;&lt;img src=&quot;http://farm1.static.flickr.com/159/439093086_f970b2b5b0.jpg?v=0&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Shadows are softer, and I like the light quality better.  Less specular highlights.  The first photo seemed a little overwarm, in addition to the harsher lighting.  Anyway, photos of the diffuser are available on &lt;a href=&quot;http://www.flickr.com/photos/cyli/439093096/in/photostream/&quot;&gt;my photostream&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The effect can easily be duplicated by wrapping something to diffuse light around your built-in flash (like a tissue) - that&apos;s how I photographed the diffuser on my desk.  However, my diffuser allows hands-free operation, and actually fits pretty snugly.  The problem with the design (based on LumiQuest&apos;s design) is that you can&apos;t close the built-in flash while the diffuser is on.</description>
  <comments>http://cyli.livejournal.com/30274.html</comments>
  <category>photography</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://cyli.livejournal.com/29968.html</guid>
  <pubDate>Sun, 31 Dec 2006 21:40:53 GMT</pubDate>
  <title>Flatware</title>
  <link>http://cyli.livejournal.com/29968.html</link>
  <description>I don&apos;t throw multi-course dinner parties.  I don&apos;t know anyone who does.  Why can&apos;t I just buy &lt;a href=&quot;http://www.ikea.com/webapp/wcs/stores/servlet/CategoryDisplay?storeId=12&amp;amp;catalogId=10103&amp;amp;langId=-1&amp;amp;topcategoryId=15591&amp;amp;parentCats=15591*15815*15817&amp;amp;categoryId=15817&amp;amp;cattype=sub&quot;&gt;regular flatware with equal numbers of forks, knives, and spoons&lt;/a&gt; anywhere except Ikea? (a 1 hour drive for flatware makes me sad)  All flatware sets come with one knife, a soup spoon, a table spoon, a salad fork, and a dinner fork.&lt;br /&gt;&lt;br /&gt;With random utensil breakage, I now have 15 spoons, 12 forks, and 1 knife.  I need more knives.</description>
  <comments>http://cyli.livejournal.com/29968.html</comments>
  <category>home</category>
  <lj:security>public</lj:security>
  <lj:reply-count>3</lj:reply-count>
</item>
</channel>
</rss>
