Archive for June, 2009

An unexpected surprise!

June 30th, 2009

This is not really a post for people under 18 but I will keep it as clean as possible !!! I just have to blog about it !!!

So on my way to play sports I couldn’t find my standard sports bag so i decided to get one from the top of my cupboard. I found one (A mickey mouse bag) that I have not used for at least 4 years. Holding the bag upside down I shook it to just get everything out of it. Some of the the things that landed on the floor were a pair of shoes, deodorant, shirts, a short and socks. Most of them wouldn’t fit me any more since I gained some massive weight in the last 3 years.

But nothing surprised more than the huge black cigar tube that dropped out. Since I don’t smoke it can not be mine. The thing was weirdly shaped though so I was not sure. I picked it up and tried to open the cover only to find out the thing turned in my hand and the started vibrating.

Yes ladies and and gentlemen sometimes I am so naive i mistake a cigar tube with a *ladies toy*.

My first reaction was to drop the thing on the floor. and watch it move around in a circle. When I decided to pick it up again and turn it off, I noticed the battery meter (3 LEDs) on the side that showed it was 2/3 full. Which means someone already used it. There was no real smell to it (I know I am disgusting but I had to make sure how long the thing was there) it more or less smelled like my old cloth.

So now the question was how did it get there and whom does it belong to?

Since the bag was inside a bigger bag and no one has access to the top of my cupboard it can not belong to someone who dropped it off at my place. Which leaves me with the option of the last place I took the bag with me. I can not remember!

Did someone drop it in? Or is someone sending me a message!

So after consulting some of my friends here are the solutions they came up with for me to do with the *toy*, and my thoughts on those suggestions:

  • Keep it! (Why? I don’t want to *play* with it!)
  • Burn it! (Huh?)
  • Sell it on ebay (Yeah I really want my profile to be associated with a *ladies toy*
  • Disinfect and send it to someone (Well I have no clue who I can give this thing as a gift to. It is a lose lose situation. My girlfriend would kill me if I give it to her or if I give it to any other girl)
  • Use it as décor (Hi mom look at this sweet modern antique! REALLY?)

So any other suggestion would be very helpful!

P.S: I found it very entertaining to put the thing on the switch part and make it vertically spin around on my desk. Maybe my cat in Egypt would like it.

Stereotyping Arabs

June 29th, 2009

A Chat with my buddy Diego (who is working with me on “Data Relevancy using a Heat Emission model” ) was so odd I have to blog it:

(22:58:45) diego: seif
(22:58:52) seif: yes
(22:58:53) seif: :)
(22:58:55) diego: do you know any arab terrorist website?
(22:59:02) seif: uhm
(22:59:03) seif: WTF?
(22:59:05) seif: no
(22:59:13) seif: and if i know I wouldn’t be telling you here
(22:59:20) seif: do you want to get me in trouble
(22:59:22) seif: dear god
(22:59:46) diego: i need to bookmark a terrorist website
(22:59:48) diego: for a seminar
(22:59:53) diego: about delicious.com
(23:00:06) diego: so any leads you have about finding one
(23:00:11) diego: would be highly appreciated
(23:00:12) seif: so because I am Arabic you come and ask me ???
(23:00:16) diego: no
(23:00:21) diego: i’m asking everyone
(23:01:10) diego: yeah the point is that i want to find out whether delicious is going to do anything about it
(23:01:18) diego: if i tag terrorist web sites
(23:01:25) diego: not necessarily terrorist
(23:01:29) diego: but extremist
(23:01:47) diego: or any fundamentalist
(23:01:49) diego: group
(23:02:10) diego: i’m also trying to tag bunch of porn web sites
(23:02:22) diego: and i’m also looking for child pornography
(23:02:50) diego: but so far nothing
(23:02:51) diego: http://delicious.com/saschamikov
(23:08:45) diego: have you ever heard of any satanist group?
(23:08:50) diego: something nearby?
(23:10:42) seif: ok good look finding a paedophile a necromancer and a witch!

LOL

Understanding the Event Centric Experience

June 29th, 2009

Application Centric Experience (ACE), e.g: Every Application knows the documents it touched.
Document Centric Experience (DCE), e.g: Every Document knows the applications that touched it.

Event Centric Experience(ECE): ACE U DCE

The only constant variable on your computer are events. If no events are happening then computer can not be running.
An event consists of minimum 5 variables:

1) Timestamp: time of the event
2) Subject: The application
3) Object: The target (Document)
4) Type: Activity (the user does something thus triggers an Event) or Notification(something happens that the user can not control)
5) Predicate: What did the Subject do with the Object, e.g: Modified, Visited, Linked. Deleted, etc…

Zeitgeist tries to tackle this issue by logging, analysing and storing events.
To be continued…

Lesson of my life: 1.01 Overthinking things as a kid!

June 16th, 2009

Well this actually happened when I was 3. It is pretty embarrassing and I know it might land on some planets but i think its fun.

drawing

It took me five minutes to draw it. Why not share an embarrassing moment of your life drawing it :)

Cool Observation!

June 12th, 2009

Zeitgeist is being maintained by a Moslem (Seif), a Jew (Natan) and a Christian (Siegfried).

Some of the developers are Atheist and still things are at peace.

Long live FLOSS

Some Zeitgeist Visuals

June 5th, 2009

Sebastian Faubel came up with a nice icon for Zeitgeist

zeitgeist-icon

Before UDS I started hacking on an alternative GTK+ UI for the Zeitgeist engine and within days I will have it complete. I think this view could be used for ARM based UNR distributions since they don’t use clutter. The Categories are created dynamically. I will add most used and bookmarks to it soon. It is simple, clean and touch friendly.

untitled

Now its time to hang out on the roof!

Candidate for the new Zeitgeist DB

June 5th, 2009

At last we  have a candidate for the DB. After the Xesam dude (Mikkel Kamstrup Erlandsen) joined the team he took my last proposal of a new DB design and did his voodoo to end up with.

zeitgeist-2

Again please forgive me for using UML class diagram tools for designing the DB.

Here you can read more and get into details. I will try to finish the implementation until monday leaving the current interface unharmed.

Xesam as described by their page is:

short for eXtEnsible Search And Metadata and is an umbrella project with the purpose of providing unified APIs and specs for desktop search- and metadata services. We are collaborating with several projects such as Tracker, Strigi, Beagle, Pinot, Recoll, and Nepomuk-KDE.

This will allow us to use annotation as tags, bookmarks,and custom comments. Also its a good preparation for a optional Tracker backend as well as co-operation with other FLOSS Projects involved with RDF semantics while still being a project of our own. I am worried however how it is going to scale. But I guess nothing that some indexing and tweaking wont fix.

First attempts on improving the Zeitgeist DB before GUADEC

June 3rd, 2009

During UDS we changed the DB a bit to store the applications that were used for the activities. allowing us to bookmark applications, and detemrining most used ones.

Well here is the current Zeitgeist DB (pretty simple and stupid)

zeitgeist

Natan has suggested improving the tag table. After some thought i decided to give it a shot on hopefully the rest of the Zeitgeist team agrees with me on this table. Working with INTEGERS instead of STRINGS should improve performance as well as disk space. But take a look first.

zeitgeist-new

Here are the major features the new design would bring with it.

  1. The timetable should be able to differentiate between event types: Activities (things the user does) Notifications (Other peoples activities (sending you an email) that could trigger your attention and lead to new activities (Replying the mail or sending a tweet)) Maybe we could use the notify-osd to capture notficaitons of interest.
  2. Giving every registered application its own table to store specific info about a a uri (example position of the item in UNR) or Shell specific rankings.
  3. Allowing opening data from a timestamp with the Application that was used back then.

Any suggestions now are welcome. We will be developing it during next week to be done on saturday. I will then write a little API Doc for applications to use Zeitgeist. Current functions will not be replaced we will just add new ones.

UDS's influence on GNOME Zeitgeist

June 3rd, 2009

Last week, Siegfried (my GSoC student) and I, attended UDS. I would have loved more from the Zeitgeist team to be there but sadly it did not work out.

It was my first time to meet Siegfried. He was pretty shy at the beginning but started coming out as a jerk later on when he made my heart skip some beats with a stupid blue screen of death game. But I was very pleased to meet him and had an amazing productive time with him. I also got to meet the Do Crew and Canonical’s newly formed User Experience Team, who showed a lot of support for GNOME Zeitgeist and helped promoting it.

Before UDS, GNOME Zeitgeist was getting some good attention, but sadly we never got directions from anybody concerning the engine. All of the Developers are actually students so our time and resources are limited. This however all changed during UDS. Thanks to David Barth and Emmet Hikory who took the time to sit down with us to understand Zeitgeist, thus setting new directions for the Zeitgeist “Service” as well as a strategy to avoid any political problems (sorry guys I am a Mono fan boy, but sadly the 2 other maintainers in the Team aren’t, so no worries the only language the engine would be ported to would be C). And for the first time we have a semi roadmap, thanks to the UNR team Milo, which we never got to set up since we were busy developing and going with the flow.

We successfully managed to split the engine (Zeitgeist) and UI (GNOME Zeitgeist) into two different packages as well as projects, Making development, debugging and deployment more focused. Several UIs over Zeitgeist are being developed thus we are creating one team Zeitgeist Desktop eXperience short Zeitgeist-DX to manage the UI’s being developed by the team and working close with  Canonical User Experience Team and Jason Smith.

The engine is our current focus now so we can finish the Shell integration as well as deliver it for the Karmic release to work with Projects such as UNR and the Parental Control. For UNR we are going to provide it with most used or interesting Data to the current moment or work-flow. Parental Control will be able to use Zeitgeist to monitor the child’s current activity and inform the parents by mail or whatever they want. Another thing we will be doing is a bzr extension (if any1 wants to git extension feel free to go crazy :P ). Natan is working on an optional (for those who use Tracker) backend that uses Tracker stored data information.

My next blog post will about the current changes that are to be done on the Zeitgeist engine as well as a ranking library we David Siegel suggested to write to provide applications with currently relevant Data.

Thanks UDS and every1 who participated it was one amazing and productive week.

UDS’s influence on GNOME Zeitgeist

June 3rd, 2009

Last week, Siegfried (my GSoC student) and I, attended UDS. I would have loved more from the Zeitgeist team to be there but sadly it did not work out.

It was my first time to meet Siegfried. He was pretty shy at the beginning but started coming out as a jerk later on when he made my heart skip some beats with a stupid blue screen of death game. But I was very pleased to meet him and had an amazing productive time with him. I also got to meet the Do Crew and Canonical’s newly formed User Experience Team, who showed a lot of support for GNOME Zeitgeist and helped promoting it.

Before UDS, GNOME Zeitgeist was getting some good attention, but sadly we never got directions from anybody concerning the engine. All of the Developers are actually students so our time and resources are limited. This however all changed during UDS. Thanks to David Barth and Emmet Hikory who took the time to sit down with us to understand Zeitgeist, thus setting new directions for the Zeitgeist “Service” as well as a strategy to avoid any political problems (sorry guys I am a Mono fan boy, but sadly the 2 other maintainers in the Team aren’t, so no worries the only language the engine would be ported to would be C). And for the first time we have a semi roadmap, thanks to the UNR team Milo, which we never got to set up since we were busy developing and going with the flow.

We successfully managed to split the engine (Zeitgeist) and UI (GNOME Zeitgeist) into two different packages as well as projects, Making development, debugging and deployment more focused. Several UIs over Zeitgeist are being developed thus we are creating one team Zeitgeist Desktop eXperience short Zeitgeist-DX to manage the UI’s being developed by the team and working close with  Canonical User Experience Team and Jason Smith.

The engine is our current focus now so we can finish the Shell integration as well as deliver it for the Karmic release to work with Projects such as UNR and the Parental Control. For UNR we are going to provide it with most used or interesting Data to the current moment or work-flow. Parental Control will be able to use Zeitgeist to monitor the child’s current activity and inform the parents by mail or whatever they want. Another thing we will be doing is a bzr extension (if any1 wants to git extension feel free to go crazy :P ). Natan is working on an optional (for those who use Tracker) backend that uses Tracker stored data information.

My next blog post will about the current changes that are to be done on the Zeitgeist engine as well as a ranking library we David Siegel suggested to write to provide applications with currently relevant Data.

Thanks UDS and every1 who participated it was one amazing and productive week.