July 2007


Just thought I would chime in on Dave’s post since I had the oposite experience with Facebook.  Ever since I started using it, it has been immensely useful, mostly in keeping track of friends in a spam free environment.  I first checked it out in order to see the integration with Mugshot.  I quickly found a friend I had in High School and started messaging her.  Then someone I took a cooking class with friended me and sent me a message asking about the other classes I had taken.  I’ve ended up gathering information about a dental office she works in and will be making an appointment when I get back home.  From there I was friended by someone I had met in Thailand who’s family was friends with my family.  We used Facebook to meetup in London before I flew off to Amsterdam last weekend.  I was also able to find a Swedish friend who I had worked with at E-Trade some years ago.  Not to mention I can see what my brother is up to.

For people who have a very centralized life, Facebook isn’t really that compelling but for someone like me who has good friends all over the world but am often only in a place for short periods of time it becomes the ideal tool to keep intouch and plan.

BTW – The one thing I found interesting in my travels is the progression of contact information which people ask for.  First it was address to send letters, then it was phone number when cell phones became prevalent, e-mail and AOL Instant messenger were big the last few years and on this trip it’s been almost exclusively, “do you have a Facebook account?”

[read this post in: ar de es fr it ja ko pt ru zh-CN ]

On Friday night a bunch of us went to a Birthday party some random people staying at the E-Tap hotel were going to. It was loads of fun to hang out with some locals, discuss politics, play some guitar and generally get smashed.

The next morning I barely met up with Richard for a ride back down to London at 2:00. I apparently just passed out in his car and I have no idea how he made it to Heathrow in a little over 2 hours. At this point I owe him a whole keg of beer.

I ended up stashing my bags and hanging with one of my friends from Thailand who just graduated her masters program in London. Her friends had a BBQ which was a bit more mellow but just as fun as the last party. After the party I caught the last train up to Heathrow and spent the night there until my flight into Amsterdam for a bit of holiday.

On the Dublin to Amsterdam leg of the trip I was nodding off waiting for my flight due to the lack of sleep. When I came to there was a guy with an OLPC tee walking by. I stopped him and started asking him questions. Turns out he is doing the port for sim city to the OLPC.

I’m in Amsterdam for the next week. GUADEC was great but now I just need to unwind. Tomorrow we are going to catch the Mike Bikes tour to check out some windmills, a cheese factory and other landmarks both in and outside of the city.

[read this post in: ar de es fr it ja ko pt ru zh-CN ]

A little birdy reminded me that GNOME’s 10 year anniversary is coming up and I thought it would be nice to do something a little bit unusual to commemorate the creativity and passion which exemplifies our members.   Since I have been talking about cooking classes and so many people in the GNOME community have also expressed their love for the culinary arts I thought it would be nice to publish a Creative Commons Attribution-ShareAlike 3.0 licensed cook book full of recipes from members of the GNOME community.

The rules are simple, e-mail me (you can ask me for my e-mail on IRC) with your favorite recipes along with pictures if you can.  If it is a recipe you got from a cookbook you may still submit it as long as the description for creating the recipe is your own and not copied from the cookbook.  Ingredient lists are not copyrightable but it is courtesy to try to make the recipe your own by changing some of the ingredients to add your own twist to the dish.  It is also courtesy to acknowledge the chef who’s dish you based yours off of if you have not changed it significantly.

I will also need help with layout, graphics and other such publishing details.  The plan is to have it published as a PDF and bound book through lulu.com with the source resting in GNOME SVN for adding to and publishing later editions.

[read this post in: ar de es fr it ja ko pt ru zh-CN ]

Just a quick cap of what I have been up to.

  • Flew into London – good thing I showed up 3 hours before my flight because I found out it was canceled and I was bumped to an earlier flight in a different terminal.  Luckly it was the flight Bernie was on.
  • Got into London around 9:00 on Saturday where Bernie had rented a car. We drove in and parked near Marble Arch and walked into town.  Walked around a huge portion of London from Picidilly to Southwark and places inbetween and managed to leave London at 6:00 the next morning.
  • Drove out of town and kept getting lost trying ot get to the M40.  Finally managed it and found ourselves in Birmingham where we proceeded to get lost and drive in circles.  We eventually found the venue.  I was totaly wasted the whole day but did manage to take a one hour nap and get some beer into me to wake me up for dinner.
  • I’m totaly acclimated now and am getting ready to see Jono’s  keynote.
  • Networks sucks so I will most likely have to update this when I get back with more relevent GUADEC info
[read this post in: ar de es fr it ja ko pt ru zh-CN ]

I’ll be running around London this comming Saturday night and was wondering if anyone would be around to hang out. I plan on taking the train up to Birmingham on Sunday morning but if someone has room and is driving up then I would be grateful.

[read this post in: ar de es fr it ja ko pt ru zh-CN ]

I was just reading Guido’s status update for Python 3000.  Though I have yet to go over the PEPs, his blog entry talks about some of the major changes, some of which effect the D-Bus python bindings and Sugar.  None of this is worrisome but are things we should keep an eye on while developing.

Unicode

I’m not sure if the unicode changes will help or hurt us in anyway though I will suspect they will help in that Python will be more unicode friendly.

The inclusion of mutable byte literals however will make it easier to support the array of byte type in D-Bus.  We’ve been flailing our arms on this issue and though Simon has come up with an elegant solution in recent releases, it is always nice to have support in the language itself.

Print and Formatting

Printing and formatting seems to be to be the most invasive change though I suspect the conversion tools will take care of this.

The print command now becomes an actual function so we should most likely replace all occurrences of print ‘foo’ to read print(’foo’) which will work in current python and python 3000.

Formatting will be completely different, changing from the ugly % operator to a format method on string classes.  While I do agree with the need for this change, we do use this everywhere and there will be no good way to be backwards compatible here.  This makes it a bit of a bite the bullet when we move to Python 2.6 sort of thing as Python 2.6 will support the older and newer APIs with the older ones spewing warnings.  We may just want to write a utility function for activity authors to use which will shield them from this change.

Class Decorators

I kind of wanted to have these when designing the decorator syntax for exported classes.  Instead I used metaclasses which means you have to inherit from dbus.service.Object in order to export your object over the bus.  This leads us to having to do hacks in order to support multiple inheritance such as the newly added metaclasses for exporting classes which need to inherit from GObjects.

We may wish to explore using class decorators as a more flexible way for exporting objects in the future though there are behavioral questions to work out.  For instance what do you do when an internal method such as Introspect is also implemented in the class.

Metaclasses

In the future metaclasses will be specified via a class keyword (i.e. metaclass=MyMeta) instead of setting the magic __metaclass__ variable.  D-Bus simply will have to switch over and most likely support two releases for a short while.

Method Signatures

Python is getting typed…sort of.  Methods and functions will be able to specify a type for its parameters and return value.  These are only annotations and do not have any meaning to python.  For instance:

def foobar(a: Integer, b: Sequence) -> String:

We can however deprecate the in and out signature keywords in D-Bus’ method and signal decorators and use this instead.

Sugar should also use this when we decide to move, to make the code clearer and allow debugging tools to have more context.

Conclusion

I’m sure there are other things that will bite us.  I’m going to keep an eye on things and as soon as the alpha comes out start running some test.  This is a long way off and with Python 2.6 giving us time to move with a migration path it is even a longer way off though at some point it will cause us pain and should be tracked to minimize the impact.

As it currently stands the Python team expects the alpha to come out some time in August with a goal of releasing Python 3.0 (which is the stable release of Python 3000) about a year later.  Some months before Python 3.0 is released, Python 2.6 will be released and will roughly be the same as Python 2.5 plus all of the new bits that will be in Python 3.0, or at least the bits that we need for a orderly migration.

It is my hope that Python 3.0 will make python much cleaner and easy to support in the long run.  If it achieves those goals then it is worth a little bit of pain in the short term.

[read this post in: ar de es fr it ja ko pt ru zh-CN ]

I fixed the issue with booting under QEMU in build 486.  I have also been able to boot under VirtualBox by converting the image to a VMWare image and adding it as the primary hard drive in a VirtualBox session.  To convert you can use this qemu command:

qemu-img  convert <raw image>  -O vmdk <image name>.vmdk

VirtualBox while harder to setup than qemu (why can’t I just run VirtualBox <img>?) gives you the ability to have shared folders to make it much easier to shuffle files between the host system and Sugar.  Pretty soon I think I will use this to do development images with full gcc support.  The nice thing is I can distribute it as a VMWare image and people who are confortable using VMWare can use that and those who want an Open Source solution can use VirtualBox.  I may even play around with VirtualBox sources to make a download and run version of our images.

Now off to see some fireworks.

[read this post in: ar de es fr it ja ko pt ru zh-CN ]