<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3771326526937217859</id><updated>2012-01-10T22:24:13.638-08:00</updated><category term='soul mates'/><category term='2009'/><category term='live'/><category term='wedding'/><category term='lost luggage'/><category term='death'/><category term='petra'/><category term='pros and cons'/><category term='herman miller'/><category term='strategy'/><category term='rome'/><category term='hell'/><category term='many chairs'/><category term='fate'/><category term='threading'/><category term='orava castle'/><category term='taxes'/><category term='drivers license'/><category term='italy'/><category term='crysis'/><category term='TV show'/><category term='castle'/><category term='email'/><category term='best friends'/><category term='basics'/><category term='weasels'/><category term='motorcycle'/><category term='walk'/><category term='chair'/><category term='bridge'/><category term='advantages'/><category term='austria'/><category term='observable'/><category term='dead leaf'/><category term='atomicity'/><category term='plastic bags'/><category term='MasterCard'/><category term='Google colors'/><category term='experiment'/><category term='concurrency'/><category term='Java concurrency'/><category term='observer'/><category term='soul mate'/><category term='controller'/><category term='BFF'/><category term='2.0'/><category term='lively'/><category term='view'/><category term='railway'/><category term='love'/><category term='bureaucracy'/><category term='baker beach'/><category term='tour'/><category term='disadvantages'/><category term='territory'/><category term='shoot'/><category term='Googleplex'/><category term='short'/><category term='kunsthaust'/><category term='BF'/><category term='grazer murinsel'/><category term='understanding'/><category term='one lesson'/><category term='race conditions'/><category term='design pattern'/><category term='airport'/><category term='green'/><category term='anticipating'/><category term='proposition'/><category term='credit card'/><category term='prepare'/><category term='concurrency basics'/><category term='differences'/><category term='graz'/><category term='plant'/><category term='gay'/><category term='drawing'/><category term='photography'/><category term='cons'/><category term='slovakia'/><category term='True Beauty'/><category term='merchant'/><category term='implementation'/><category term='calculus'/><category term='unit testing framework'/><category term='transfer student'/><category term='pee'/><category term='Golden Gate'/><category term='Google'/><category term='tourguide'/><category term='friendship'/><category term='jordan'/><category term='mathematical analysis'/><category term='luscious'/><category term='Flickr'/><category term='miscarriage'/><category term='ride'/><category term='service impl'/><category term='yellow'/><category term='leaf'/><category term='human'/><category term='test data'/><category term='same sex'/><category term='nikon D60'/><category term='AA'/><category term='beer'/><category term='sad'/><category term='rembrandt'/><category term='ex'/><category term='rights'/><category term='brad'/><category term='miniature chairs'/><category term='ServiceImpl'/><category term='merchants'/><category term='middle east'/><category term='bike'/><category term='new Guice'/><category term='travel'/><category term='succulent'/><category term='easymock'/><category term='jealous'/><category term='colorful'/><category term='frustration'/><category term='semmering'/><category term='TestCase'/><category term='friday'/><category term='jmock'/><category term='eames'/><category term='school system'/><category term='camera'/><category term='san francisco'/><category term='sparky'/><category term='economy'/><category term='pros'/><category term='google web toolkit'/><category term='American Airlines'/><category term='sfmc'/><category term='flying'/><category term='schlossberg'/><category term='pluses'/><category term='fake'/><category term='city'/><category term='animal'/><category term='data store'/><category term='Gerald Celente'/><category term='persistence'/><category term='europe'/><category term='tourist trap'/><category term='amman'/><category term='testing'/><category term='GWTTestCase'/><category term='pet'/><category term='GWT'/><category term='munich'/><category term='same sex marriage'/><category term='MVC'/><category term='asynchronous'/><category term='beach'/><category term='night'/><category term='mock'/><category term='VISA'/><category term='marriage'/><category term='RPC'/><category term='photos'/><category term='munchen'/><category term='Fluffy'/><category term='beirut'/><category term='bank'/><category term='portrait'/><category term='unit test'/><category term='comparison'/><category term='lesbian'/><category term='flaky'/><category term='ex-byfriend'/><category term='ziplock bags'/><category term='prediction'/><category term='Guice'/><category term='friends'/><category term='carry-on'/><category term='organize'/><category term='tourism'/><category term='simple'/><category term='Shih-Tzu'/><category term='dog'/><category term='Java'/><category term='ID'/><category term='1.0'/><category term='pet relief'/><category term='life'/><category term='delayed luggage'/><category term='conflict'/><category term='Vespa'/><category term='economics'/><category term='fields of mathematics'/><category term='ksara'/><category term='baalbek'/><category term='food'/><category term='point of view'/><category term='versus'/><category term='tribe'/><category term='henna painting'/><category term='prop 8'/><category term='model'/><category term='minuses'/><category term='lebanon'/><category term='GWT test'/><category term='binding'/><title type='text'>Bubli Spot</title><subtitle type='html'>various bublibicious thoughts</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>46</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-1717239680262204413</id><published>2011-01-24T10:48:00.001-08:00</published><updated>2011-03-20T16:38:14.179-07:00</updated><title type='text'>My blog moved</title><content type='html'>Please visit my new blog at &lt;a href="http://petracross.com/blog"&gt;http://petracross.com/blog&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-1717239680262204413?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/1717239680262204413/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=1717239680262204413' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/1717239680262204413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/1717239680262204413'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2011/01/my-blog-moved.html' title='My blog moved'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-5493469491095738244</id><published>2010-06-20T23:35:00.001-07:00</published><updated>2010-06-27T00:50:59.908-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='castle'/><category scheme='http://www.blogger.com/atom/ns#' term='wedding'/><category scheme='http://www.blogger.com/atom/ns#' term='slovakia'/><category scheme='http://www.blogger.com/atom/ns#' term='orava castle'/><title type='text'>Our Castle Wedding</title><content type='html'>&lt;div&gt;&lt;div&gt;Hello everyone. I am proud to announce that Brad and I got married!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Where: Orava Castle, Slovakia&lt;/div&gt;&lt;div&gt;When: May 31, 2010&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/bubli/4663925195/in/set-72157624191229062/"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 800px; height: 532px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/TB2cHSpqlfI/AAAAAAAANP8/zhqq_1_1xWc/s1600/ND3_8428.NEF.jpg" alt="" id="BLOGGER_PHOTO_ID_5484711570286745074" border="0" /&gt;&lt;/a&gt;&lt;div&gt;&lt;a href="http://en.wikipedia.org/wiki/Orava_(castle)"&gt;Orava castle&lt;/a&gt; is a 13th century castle built on a rock formation (a cliff) that overlooks Orava River.  It is our favorite castle, and a natural choice for the venue.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/bubli/4664532932/in/set-72157624191229062/"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 800px; height: 532px;" src="http://farm5.static.flickr.com/4015/4664532932_6b5d05d710_b.jpg" border="0" /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src="http://farm5.static.flickr.com/4004/4664541672_a421e4380a.jpg" style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 481px; height: 500px;" alt="" border="0" /&gt;&lt;div&gt;&lt;/div&gt;&lt;img src="http://farm2.static.flickr.com/1279/4663912363_9b334de713.jpg" style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 333px; height: 500px;" alt="" border="0" /&gt;&lt;div&gt;The reception was held at a baroque-style &lt;a href="http://villanecas.sk/"&gt;former salt warehouse&lt;/a&gt; from the 18th century, turned into B&amp;amp;B with restaurant and winery.&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://farm5.static.flickr.com/4046/4663899203_87c5631835.jpg" style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 500px; height: 484px;" alt="" border="0" /&gt;&lt;img src="http://farm2.static.flickr.com/1271/4663902343_8e114c70d6.jpg" style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 500px; height: 496px;" alt="" border="0" /&gt;Fluffy and &lt;a href="http://picasaweb.google.com/zaskodnik/OurWedding#5478626062287807554"&gt;grandpa&lt;/a&gt; were there. The weather was perfect (&lt;a href="http://picasaweb.google.com/zaskodnik/OurWedding#5478619503477057106"&gt;clouds&lt;/a&gt; forming a giant soft box). Everyone’s &lt;a href="http://www.flickr.com/photos/bubli/4664532932/in/set-72157624191229062/"&gt;hats&lt;/a&gt; were awesome and we enjoyed the company of our family and friends.&lt;div&gt;&lt;div&gt;Overall, I conclude the wedding was a success. Now onto the babies.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Photos: &lt;/span&gt;&lt;a href="http://jancechovsky.sk/"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Jan Cechovsk&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;y &amp;amp; &lt;/span&gt;&lt;a href="http://www.branoherchl.sk/"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Brano Herchl&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-5493469491095738244?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/5493469491095738244/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=5493469491095738244' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5493469491095738244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5493469491095738244'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2010/06/our-castle-wedding.html' title='Our Castle Wedding'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ODq6UoGYnB4/TB2cHSpqlfI/AAAAAAAANP8/zhqq_1_1xWc/s72-c/ND3_8428.NEF.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-2986355455441117447</id><published>2010-06-19T18:53:00.000-07:00</published><updated>2010-08-29T13:09:26.848-07:00</updated><title type='text'>Who to blame? Whoever is near! (or “How to become a lesbian”)</title><content type='html'>My best girlfriend is going through a divorce now. She has been married for 10 years, and as most divorcees, towards the end of the marriage, she struggled to keep the marriage afloat. Marriage counseling, individual counseling, sacrificing, compromising, etc. You know that, almost every marriage ends the same way and each story has always two sides.&lt;br /&gt;&lt;br /&gt;The last 1.5 years of her marriage were especially hard for her (and perhaps for him as well). Her husband (a blue collar worker) did not work for 1.5 years, he was “out of job” (blaming the economy, of course). He had only two job interviews in 1.5 years (both arranged by his family member). Simply said, he was clearly not actively looking for a job, and was comfortable being on 250th place in a some list of union workers waiting to get the next “guaranteed” union job while being supported by his overworked wife. Mortgage payments, and other bill payments were on my girlfriend’s shoulders, who was coming home every day frustrated to find that her husband did not even do the chores that he should have done (like replacing water for puppies). She did not think she would end up having to support her husband for that long, and she definitely did not expect to see how comfortable he would be with his househusband situation. He likes to shop, and often asked for things they could not afford (bicycle, guitar).&lt;br /&gt;&lt;br /&gt;Ok, I am obviously not talking about the “lesbian” thing yet, but please stay with me, the story will unravel soon.&lt;br /&gt;&lt;br /&gt;One day in winter he moved out. To my huge surprise, a week later, she told me about this over a lunch, as if it was some news she does not want to bore me with. Since then, she lives in their house alone, waiting for the house to be sold, and to move to a more affordable apartment.&lt;br /&gt;&lt;br /&gt;As a good BFF, I try to support my friend, and visit her every now end then. I live an hour drive away, so I try to come every couple of weeks for a sleepover after work, and have a girly evening together. She feels very lonely, did not start dating other men yet, a therefore she is very happy to spend some time with her BFF.&lt;br /&gt;&lt;br /&gt;And here it comes...&lt;br /&gt;&lt;br /&gt;One day, her husband came over to pick up his mail and asked if she and I are romantically involved. She tried very hard to not laugh, and answered “it is none of your business”. She then called me and we had a great laugh. It was the funniest thing I have heard about me for a long time, I tweeted about it, I told my then fiancee (now husband), I told everyone at work about it, even my boss and my mother-in-law. When I told the story to my shuttle driver, he laughed so hard that he swayed into the other lane. It was the joke of the day, and the joke of the week.&lt;br /&gt;&lt;br /&gt;As it turns out, if your car is in front of your girlfriend’s house over night (and your neighbor who is appointed to spy on you reports it), that immediately makes you a lesbian.&lt;br /&gt;&lt;br /&gt;Next day, her husband calls my BFF and announces her that he will pursue a financial support from her (yes, an alimony) because he now “knows” that she cheated on him with me and I am the reason she left him.&lt;br /&gt;&lt;br /&gt;I don’t know any healthy male that has a job (her husband now has a job) that would have the ethics (or the lack thereof) to ask his ex-wife to support him for the rest of his life. Wow. What a pure character.&lt;br /&gt;&lt;br /&gt;It seems like this story is not unique at all. Almost every marriage ends in a similar fashion, when one person is blamed for alleged infidelity with neighbor, boss, gardener, milkman, whoever is near. I guess it is a human nature, to search for problems outside of yourself. If something goes wrong with your life, it must be someone’s else’s fault, and all you need to do is to look at whoever is near. This time it was me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-2986355455441117447?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/2986355455441117447/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=2986355455441117447' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2986355455441117447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2986355455441117447'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2010/06/who-to-blame-whoever-is-near-or-how-to.html' title='Who to blame? Whoever is near! (or “How to become a lesbian”)'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-3893333273415624864</id><published>2009-12-25T06:22:00.000-08:00</published><updated>2010-01-07T14:40:16.760-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ksara'/><category scheme='http://www.blogger.com/atom/ns#' term='beirut'/><category scheme='http://www.blogger.com/atom/ns#' term='lebanon'/><category scheme='http://www.blogger.com/atom/ns#' term='amman'/><category scheme='http://www.blogger.com/atom/ns#' term='jordan'/><category scheme='http://www.blogger.com/atom/ns#' term='middle east'/><category scheme='http://www.blogger.com/atom/ns#' term='baalbek'/><category scheme='http://www.blogger.com/atom/ns#' term='petra'/><title type='text'>First Time in the Middle East</title><content type='html'>Brad and I just returned from Jordan and Lebanon. It is now our tradition to travel to other countries before we visit our folks for Christmas. This year, we spent a week in the &lt;a href="http://en.wikipedia.org/wiki/Middle_East"&gt;Middle East&lt;/a&gt;. I hope this blog will give you some insight and get you excited about visiting the beautiful Middle East. &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#"&gt;Here &lt;/a&gt;are all the photos, ordered chronologically. Please look at them as you read this blog.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The route&lt;/span&gt;&lt;br /&gt;We flew from San Francisco to Amman (Jordan), visited the ancient Petra, then flew from Amman to Beirut (Lebanon), visited Beirut, and then flew back from Beirut to Vienna (via Amman), ending up in Slovakia for Christmas.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Airports&lt;/span&gt;&lt;br /&gt;We visited two airports: &lt;span style="font-style: italic;"&gt;Queen Alia International Airport in Amman&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;Beirut Rafic Hari&lt;/span&gt;&lt;span style="font-style: italic;"&gt;ri International Airport&lt;/span&gt;. These two airports deserve their own blog post as what we saw was pretty interesting. In Amman, for instance, the bus that drives the passengers from the airplane to the terminal actually *crosses* the runway. There is a big light, which needs to turn green before a bus can proceed straight across the runway. Even if the light is green, the traffic on the main road takes the precedence, so the bus has to wait until there is an opportunity to proceed. We spent about 5 minutes waiting for a gap between a bunch of airport cars. Some passengers were getting mad, worried they would miss their connecting flights, some were laughing in disbelief, one lady was cursing like a sailor. On our way back from Beirut, we flew through Amman airport again, this time as a transfer passengers. The information monitor was flashing "last call", so we were really hurrying to catch our connection. When we arrived at the gate, the airplane was not even there yet. The plane was 45 minutes delayed, and their information monitors were not updated at all. When people kept asking where is the airplane, wondering why the monitor says that the plane is boarding, the airport employee walked to the monitor that was right over the gate, grabbed a mouse, escaped from the full screen mode into a Microsoft Powerpoint presentation (wow), updated the boarding time, and set the PowerPoint back to the full screen mode. Coming from Silicon Valley, this was quite amusing to us. We were quite thankful that the airplane we flew was not made in Jordan.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ODq6UoGYnB4/SzZ_HTr8rjI/AAAAAAAAJXE/rUUqGBKV6gQ/s1600-h/DSC_2366.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://2.bp.blogspot.com/_ODq6UoGYnB4/SzZ_HTr8rjI/AAAAAAAAJXE/rUUqGBKV6gQ/s320/DSC_2366.JPG" alt="" id="BLOGGER_PHOTO_ID_5419658965107387954" border="0" /&gt;&lt;/a&gt;Airports have smoking and non-smoking zones, but you smell cigarette smell everywhere. In Amman, there was an airport employee (supervising the passport control folks) who was standing right next to the no smoking sign, holding a cigarette. It seems like the signs are not taken seriously even by the airport employees, and nobody enforces them. Our gate had a smoking chamber, a glass enclosure in the corner of a hall. It clearly had no extra ventilation, and the smoke was escaping back into the hall.&lt;br /&gt;&lt;br /&gt;The passport control employee was asking for another ID from me. I said I only had my passport, and then he asked for another passport. I said I have only one. He then let me go. It was really weird.&lt;br /&gt;&lt;br /&gt;The luggage screener at the Beirut airport asked me to open my bag. I did, and then he moved things around my bag, searching for something he saw in the X-ray. He was very disrespectful towards me, starred at me and Brad, looked and talked to us in a condescending way, and did not handle my personal belongings gently. He damaged one of my souvenirs. Brad was consoling me later, since I was extremely disturbed. I know that airport employees do not handle luggage the way passengers would want them to, but doing this in front of my eyes, and giving us rude stare really made me appreciate the level of service we get at the US airports. However, not all employees were rude. The check-in lady was very helpful and friendly.&lt;br /&gt;&lt;br /&gt;In contrast with the US, when going through the security, we did not have to take off our shoes, or take out the liquids, and throw away our drinks. We took our water bottles with us. But all ladies have to walk to the side and go behind a privacy screen where a female employee does the security check.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Airplanes&lt;/span&gt;&lt;br /&gt;We used Royal Jordanian for all 4 flights from/to and within the Middle East. Their planes are new and clean, have superior TV monitors with a wide array of movies to watch. The food was also very good (well, for an airplane).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Jordan&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SzZzGP3kDSI/AAAAAAAAJVs/IjvQ9RJCgiU/s1600-h/DSC_1905.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SzZzGP3kDSI/AAAAAAAAJVs/IjvQ9RJCgiU/s320/DSC_1905.JPG" alt="" id="BLOGGER_PHOTO_ID_5419645752762961186" border="0" /&gt;&lt;/a&gt;We hired a Jordanian driver &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966833153660338"&gt;Sayel&lt;/a&gt;. Sayel spent two days with us, drove us from Amman to &lt;a href="http://en.wikipedia.org/wiki/Petra"&gt;Petra&lt;/a&gt;, and the next day he drove us back to Amman. He was very friendly and honest, and we had great discussions with him while in Jordan (his English was good). Getting from Amman to Petra costs you 75 JD ($106). It is about 3 hour ride via desert. As soon as we left the rainy Amman, we saw a beautiful 180 degree &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419970640027589778"&gt;rainbow &lt;/a&gt;above the desert, which really made our day. We stopped at a &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419970686973936434"&gt;coffee shop&lt;/a&gt; (slash souvenir store), had a &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419970698176949090"&gt;tea&lt;/a&gt;, and &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419970737202123298"&gt;continued &lt;/a&gt;to Petra. Brad and I then spent about five hours &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419965941904130946"&gt;walking though the Petra park&lt;/a&gt;, and later met with Sayel for a Jordanian &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966537891682802"&gt;dinner &lt;/a&gt;at Petra Zaman (a buffet style restaurant about 3 blocks uphill from the &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966786215066514"&gt;Moevenpick Resort Petra&lt;/a&gt;, about $10/person, they accept USD). Have I mentioned that English is the second official language in Jordan? The signs are in both Arabic and English, and we did not meet a single person who would not speak English.&lt;br /&gt;&lt;br /&gt;Sayel made us feel very welcome, and he stopped by few places on our way to Petra to show us points of interest, such as an Ottoman village, or a castle ruin. He wanted to invite us home for a lunch, but we did not have enough time on our hands, so we promised to visit his family next time. If you would like to hire Sayel, please email me and I will give you his email.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Hotel in Petra&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZ9ZA02wsI/AAAAAAAAJW8/7jQkw-iC4LI/s1600-h/DSC_2280.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZ9ZA02wsI/AAAAAAAAJW8/7jQkw-iC4LI/s320/DSC_2280.JPG" alt="" id="BLOGGER_PHOTO_ID_5419657070258864834" border="0" /&gt;&lt;/a&gt;We stayed at the &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966786215066514"&gt;Moevenpick &lt;/a&gt;Resort Petra, which is about 50 meters from the entrance to the park. Hotels in Jordan have a security room or a tent through which you need to enter the hotel. It is just like an airport security, except you do not need to take off your shoes. We found it little unusual, but got used to it quickly.&lt;br /&gt;Hotel lobbies, army bases, store fronts, tourist sites, people's home -- they all have &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966620987640194"&gt;photos &lt;/a&gt;of King Abdullah II, who is very popular in Jordan. He wears an army uniform in the photos displayed at the army base, and he wears a suit and a tie in the photos displayed in the hotel.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Petra Park&lt;/span&gt;&lt;br /&gt;For 26 JD you get a 2-day pass with multiple re-entry (Jordanians pay only 1 JD). As soon as you enter the park, lots of Bedouins and children start offering you horse, &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966080617654706"&gt;camel&lt;/a&gt;, or donkey rides, rocks and various made-in-china &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966351274635218"&gt;trinkets &lt;/a&gt;for sale. If you are an attractive lady, Jordanian men will wink at you a lot. Even the police officers. I found it quite amusing.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZz4HGyA_I/AAAAAAAAJV0/RWkcknpn460/s1600-h/DSC_2008.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZz4HGyA_I/AAAAAAAAJV0/RWkcknpn460/s320/DSC_2008.JPG" alt="" id="BLOGGER_PHOTO_ID_5419646609404330994" border="0" /&gt;&lt;/a&gt;The famous Petra Treasury is about 20 minutes walk downhill from the park entrance. You get there by walking 10 minutes along a wide dried up &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419965910763478706"&gt;river canyon&lt;/a&gt;, which is now partially paved with gravel, large stones, or concrete. The last 10 minutes are the most interesting, since the canyon (called Siq) gets very &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419965941904130946"&gt;narrow &lt;/a&gt;and tall, and you see the remains of an old &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419965967687362386"&gt;aqueduct &lt;/a&gt;on the both walls. It is a pleasant walk since you go downhill the whole time.&lt;br /&gt;&lt;br /&gt;After the walk via the narrow Siq, you enter a sand &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966080617654706"&gt;plaza &lt;/a&gt;with the famous Petra &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966110592044866"&gt;Treasury&lt;/a&gt;. If you take a right, and continue via another short canyon lined with &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966258994093666"&gt;tombs&lt;/a&gt;, you get to an open area with a large Roman amphitheatre on the left, and a number of majestic tombs on both sides. Another 10 minutes would be needed to pass by an array of the remains of Roman columns and reach the restaurant called The Basin (by Crowne Plaza).&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZ0zURVnII/AAAAAAAAJV8/sRwQomSdp_k/s1600-h/DSC_2031.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZ0zURVnII/AAAAAAAAJV8/sRwQomSdp_k/s320/DSC_2031.JPG" alt="" id="BLOGGER_PHOTO_ID_5419647626550549634" border="0" /&gt;&lt;/a&gt; The food is pretty expensive (buffet style, $38 for 2 people) but it is appropriate to the quality and the convenience.&lt;br /&gt;&lt;br /&gt;If you are tired by now, you need to turn around and go back, uphill all the way to the park entrance. We had some energy left, so we decided to spend another 2 hours (1 hour walk up, 1 hour walk down) and hike up to the Monastery. The &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966374184511922"&gt;path &lt;/a&gt;from The Basin restaurant to the Monastery is quite a hike. Of course, you will get many opportunities to rent a donkey, or buy some made-in-china trinkets on the way up. The &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966453398058082"&gt;Monastery &lt;/a&gt;looks very similar to the &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966110592044866"&gt;Treasury&lt;/a&gt;, but the best part of the hike are the views of the canyons you see while hiking up. We brought a thermos with a tea, which came handy.&lt;br /&gt;&lt;br /&gt;When we got back to the hotel, a tray of yummy sweet &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966519758051522"&gt;treats&lt;/a&gt; (baklava and dates) was waiting in our room. We could not feel our calves. If you plan to spend another day hiking other parts of Petra park, make sure to get in shape before you come to Jordan. You can see the most important parts of Petra in 3 hours (add 2 hours for the Monastery). But you can spend days hiking and exploring the trails within the park.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What else to see&lt;/span&gt;&lt;br /&gt;We did not visit the Dead Sea, but will definitely go float in it next time. I asked Sayel if anyone ever drowned in this sea, and he said that a Russian man got drunk and drowned in it about 2 years ago. Pretty sad.&lt;br /&gt;&lt;br /&gt;Sayel often takes foreigners to a 6 to 15 day trips via Jordan, Syria, and Lebanon. Amman is only 6 hours car ride away from Beirut, so we might just drive next time.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Beirut taxis&lt;/span&gt;&lt;br /&gt;After 2 days and one night in Petra, Sayel took us back to Amman airport and we flew to Beirut. Beirut was nothing like I expected. It is full of contrasts and surprises. As soon as we landed in Beirut, a local taxi driver kept following us at airport hall, offering us a ride to our hotel. We ignored him, but he kept getting more and more aggressive, grabbing our bags, and insisting that we go with him. Brad was OK with that but I was not. The dude looked shady, and when we got to his car, I got even more worried. The car did not have a taxi sign on, it was an old beaten sedan, and he was unable to fit our luggage into the trunk. Airport employees were laughing at me, saying that the guy is legit. I pretty much freaked out, took my bag, and walked away. Brad took his bag and joined me, saying that he will help me find a well marked taxi. The taxi driver followed us, unhappy, showing us his license, and saying that we have no reason to worry. I kept going until I found a clean new car, with a big "taxi" on it, which we took to our hotel. It cost us $40. (The ride back cost us only $25.) You can pay with USD pretty much anywhere in Lebanon. It is their other official currency, and even ATMs always give you a choice of the currency when withdrawing money. Same in the stores, they always ask "dollars or Lebanese?".&lt;br /&gt;&lt;br /&gt;When we arrived to a hotel (Holiday Inn Dunes), I was happy that the whole taxi stress was over. We looked up some facts about Lebanese taxis, and found out that taxis in Beirut do not have meters, are often not marked, but always have red license plates, and if you take one within the city, you pay from 8,000 to 12,000 Lebanese Pounds ($5 - $8), depending on the traffic and the shape the taxi is in. If the driver recognizes that you are a tourist, he/she will try to ask for 20,000 LBP. In that case, you just give him/her a 10,000 bill and walk away. The Wikipedia recommended that when entering a taxi, you should say "bonjour", which might lower your chances of getting ripped off. French is a second official language (Lebanon was colonized by French), and locals like to think of themselves as almost European. They keep reiterating that they are not Arab. They have separate ancestral origins, but because Lebanon went through a strong Arabization, Lebanese people are often referred to as Arabs... and they hate it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Beirut City walk&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SzZ19aVyKNI/AAAAAAAAJWE/KBil1seSkmM/s1600-h/DSC_2395.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SzZ19aVyKNI/AAAAAAAAJWE/KBil1seSkmM/s320/DSC_2395.JPG" alt="" id="BLOGGER_PHOTO_ID_5419648899490130130" border="0" /&gt;&lt;/a&gt;Coffee shops and stores open between 9am and 10am, so we went for a walk before having our first breakfast in Beirut. We walked to the &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966519758051522"&gt;water front&lt;/a&gt;, passing by a couple of army checkpoints (guys wearing full army wear, guns, standing behind sand bags). They either ignored us or said friendly hello. We then walked along the jogging trail towards the &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966519758051522"&gt;Pigeon Rock&lt;/a&gt;, people-watched, and then continued north towards downtown. About every second person had a decent English, so we did not have hard time getting directions to downtown. It was a 6 mile walk, worth the effort. We walked by people jogging, people &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966519758051522"&gt;fishing&lt;/a&gt;, people smoking water pipe, or having a nice morning picnic by the waterfront. Of course, we also passed by few army checkpoints.&lt;br /&gt;&lt;br /&gt;The air quality is the worst of all cities I have ever visited. It appears that there is no emission standard in place, so walking on the waterfront was a little escape from the fume filled streets of Beirut.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SzZ6F-0VXHI/AAAAAAAAJWk/O39azSWm4Eg/s1600-h/DSC_2501.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SzZ6F-0VXHI/AAAAAAAAJWk/O39azSWm4Eg/s320/DSC_2501.JPG" alt="" id="BLOGGER_PHOTO_ID_5419653444767407218" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZ6NAlaIhI/AAAAAAAAJWs/LC2fq0r_LdY/s1600-h/DSC_2477.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZ6NAlaIhI/AAAAAAAAJWs/LC2fq0r_LdY/s320/DSC_2477.JPG" alt="" id="BLOGGER_PHOTO_ID_5419653565500760594" border="0" /&gt;&lt;/a&gt;Buildings in Beirut  belonged into three categories: brand new, war damaged, and fairly old. The war damaged had lots of holes, and were vacant, probably waiting to be demolished and replaced by the new. The brand new buildings were no worse than the best of Miami, and some of them had a breathtaking Mediterranean views. The rest of the buildings were not very exciting, had lots of clothing lines with laundry, some had curtains that enclosed the entire balcony.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SzZ2eAi7fLI/AAAAAAAAJWM/pF92doZjvAI/s1600-h/DSC_2442.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SzZ2eAi7fLI/AAAAAAAAJWM/pF92doZjvAI/s320/DSC_2442.JPG" alt="" id="BLOGGER_PHOTO_ID_5419649459501628594" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SzZ6TYufWVI/AAAAAAAAJW0/7x2omkcPRXw/s1600-h/DSC_2457.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SzZ6TYufWVI/AAAAAAAAJW0/7x2omkcPRXw/s320/DSC_2457.JPG" alt="" id="BLOGGER_PHOTO_ID_5419653675060517202" border="0" /&gt;&lt;/a&gt;Downtown Beirut was recently rebuilt, according to the styles of the buildings that stood in downtown previously, and were damaged during the civil war. The downtown felt brand new, almost surreal. It had lots of designer boutiques and restaurants. It had two churches and a gorgeous mosque. Right next to the mosque, along the Martyr Square, you will find a large tent with a &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966519758051522"&gt;memorial &lt;/a&gt;to &lt;a href="http://en.wikipedia.org/wiki/Rafik_Hariri"&gt;Rafik Hariri&lt;/a&gt;, a self-made billionaire, and an ex-prime minister who was assassinated in 2005. The soldier at the army checkpoint next to the entrance to the memorial was very seeing us and encouraged us to enter the tent.&lt;br /&gt;&lt;br /&gt;We then walked little bit uphill towards a weird looking war-damaged round &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966519758051522"&gt;building&lt;/a&gt;. We later found out that it is a former theatre, and will be remodelled soon.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ksara and Baalbek (Lebanon)&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZ4MI8qnsI/AAAAAAAAJWc/m801qfOyEbM/s1600-h/DSC_2664.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SzZ4MI8qnsI/AAAAAAAAJWc/m801qfOyEbM/s320/DSC_2664.JPG" alt="" id="BLOGGER_PHOTO_ID_5419651351542668994" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SzZ30KIfuOI/AAAAAAAAJWU/a-NA0F_Tjxg/s1600-h/DSC_2520.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SzZ30KIfuOI/AAAAAAAAJWU/a-NA0F_Tjxg/s320/DSC_2520.JPG" alt="" id="BLOGGER_PHOTO_ID_5419650939543861474" border="0" /&gt;&lt;/a&gt;Hotel staff arranged a driver and a tour guide for our trip to Ksara winery and Baalbek historic site. The car was nice (Volvo S80), the driver was nice too, but the tour guide would not stop talking. I recommend reading customer reviews of a tour guide before hiring one.&lt;br /&gt;We visited the famous Ksara winery, and were toured via its underground catacombs, that now hold 700,000 bottles of wine. Brad then &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966519758051522"&gt;tasted &lt;/a&gt;few wines, and we continued our journey to the temple ruins of Baalbek. The &lt;a href="http://picasaweb.google.sk/zaskodnik/JordanLebanon#5419966519758051522"&gt;site &lt;/a&gt;is huge, it is difficult to describe the scale of this site. If you are a Roman scholar, you would love this place.&lt;br /&gt;On our way back from Baalbek, we almost got into a couple of accidents, since no one obeys traffic rules. We even saw a taxi driver drink Heineken while driving. :)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Food in Lebanon&lt;/span&gt;&lt;br /&gt;I gained some extra pounds in the 4 days we spent in Lebanon. We ate Lebanese food for the first three days, up to the point when we could not even see it. Our favorite restaurant was right in Beirut downtown, called Karam. We ordered food for six people (eight dishes), plus drinks and a water pipe, and paid only $60. When we asked for a check, the waiter asked why don't we stay longer. People did seem to come and stay there for hours.&lt;br /&gt;The service in Beirut is pretty slow, and getting a coffee and a small sandwich in a mall (ABC Beirut) took over 45 minutes. Again, we now appreciate the San Francisco Bay Area a lot more.&lt;br /&gt;The first day in Beirut, we walked to a restaurant Beity, which is one block walk from the Holiday Inn Dunes. There was some kind of party there, we could not figure out if it was a wedding or an engagement party. People danced to modern Lebanese tunes, and we watched them while eating our food.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Malls in Beirut&lt;/span&gt;&lt;br /&gt;When entering a mall, you might be asked to show your bag, show that you are not carrying a bomb. I was also asked not to take a photograph of a Christmas tree in a mall.&lt;br /&gt;To my disappointment, the malls are identical to any US malls. We visited Dunes mall, ABC mall, and also a brad new mall (still unfinished) that is one block downhill from the downtown clock tower. We also passed by some local stores when walking from ABC mall back to downtown, but we did not see anything breathtaking to buy. My dreams of &lt;a href="http://images.google.com/images?q=georges+hobeika&amp;amp;oe=utf-8&amp;amp;rls=org.mozilla:sk:official&amp;amp;client=firefox-a&amp;amp;um=1&amp;amp;ie=UTF-8&amp;amp;sa=X&amp;amp;oi=image_result_group&amp;amp;ct=title&amp;amp;resnum=4"&gt;Georges Hobeika &lt;/a&gt;dresses did not get fulfilled.&lt;br /&gt;&lt;br /&gt;Right before leaving Beirut, we walked by a &lt;a href="http://www.albohsali.com/"&gt;Al Bohsali Patisserie Orientale&lt;/a&gt;, and bought 0.5 kg of fresh made baklava. It was a nice sweet end to our trip.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-3893333273415624864?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/3893333273415624864/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=3893333273415624864' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3893333273415624864'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3893333273415624864'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/12/first-time-in-middle-east.html' title='First Time in the Middle East'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ODq6UoGYnB4/SzZ_HTr8rjI/AAAAAAAAJXE/rUUqGBKV6gQ/s72-c/DSC_2366.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-2379929966647645950</id><published>2009-11-28T06:37:00.000-08:00</published><updated>2010-01-22T22:00:37.201-08:00</updated><title type='text'>Lady On the Train</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SxF7eE00mPI/AAAAAAAAJQc/BFCokqEflII/s1600/DSC_0525-1.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 213px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SxF7eE00mPI/AAAAAAAAJQc/BFCokqEflII/s320/DSC_0525-1.JPG" alt="" id="BLOGGER_PHOTO_ID_5409240384070260978" border="0" /&gt;&lt;/a&gt;I am sitting on the train from Prague (Czech Republic) to Zilina (Slovakia), full of pleasant experiences from a &lt;a href="http://prague.usembassy.gov/petra_popluharova_google_tech_talk.html"&gt;three day tour&lt;/a&gt; of major cities in Czech Republic where I presented a talk titled “Diversity at Google”. The train car is empty, I finished listening to my audio book (“&lt;a href="http://www.madetostick.com/"&gt;Made to Stick&lt;/a&gt;” by Dan and Chip Heath for those who care), and there are still three more hours (and 43% of laptop battery) to kill.&lt;br /&gt;&lt;br /&gt;As some of you might already know, I work as a software engineer at Google for the past 4.5 years. I am also a lady, a lady from &lt;a href="http://en.wikipedia.org/wiki/Slovakia"&gt;Slovakia&lt;/a&gt;. There are plenty of female engineers at Google – ladies from various cultural and educational backgrounds. We (ladies), are all regular engineers, who work on various Google projects alongside the male engineers. We do not find it particularly unusual to work on developing a cutting edge technologies, we do not feel under-represented, we have jobs like many other folks around us, doing the same thing, going to the same meetings, eating together at our cafeterias, reviewing each other's code... or as some might call it “business as usual”. Even my friends in California do not find it unusual to have female friend from the software industry. They usually have a number of female friends or acquaintances like me.&lt;br /&gt;&lt;br /&gt;Yet, for some reason, whenever I travel back to Slovakia or a Czech Republic, people keep getting surprised when I mention the kind of work I do. They find it unusual, male-like, weird. Don't take me wrong, they do admire my “abilities” and “assertiveness”, but they do find my work unusual and even extreme.&lt;br /&gt;&lt;br /&gt;Ever since I gave a talk in Prague few years back, I keep getting approached by various Czech and Slovak media with requests to provide an interview, or give another tech talk. I accept some, and reject others. Media like to portray me as a “role model” for female IT students, and when interviewed, they ask me the same set of questions that I answered many times before: What is it like to be a female at Google? How did you get to Google? Did you study in Slovakia or in the US? How was your English when you came to US? Are you married and are you planning on having children? … and such.&lt;br /&gt;&lt;br /&gt;The world in the former Czechoslovakia is different than in the US. Many things are better, many are worse. One thing that is particularly curious to me is the scale of things. The former Czechoslovakia has about 15 million people, which is a lot less than the US. That means, it is a lot easier to become known. This sorta happened to me. It literally took only about 5 articles in various lifestyle and technology magazines, and all of a sudden I kept getting emails from strangers, Facebook friend requests, Twitter followers, and a handful of former classmates all of a sudden care about keeping in touch with me. Most of these people know very little about me, but they love Google and I mean Google to them. They do not know me, they can not possibly have any informed opinion about me or my personality. But they like the idea of having a link to Google. Through me.&lt;br /&gt;&lt;br /&gt;I am a very artistic and social person and I have always been this way. I worked at a local TV station in my early twenties, also worked as a catwalk model, participated in an essay competition, created art and sold it at local gift shops, performed in a semi-professional choir. I love to socialize, I need to socialize. And after listening to a book “&lt;a href="http://www.gladwell.com/tippingpoint/index.html"&gt;The Tipping Point&lt;/a&gt;” by Malcolm Gladwell, I realized that I am what he calla a “maven” –- a person who connects people.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Ostrava&lt;/span&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SxE7X_ZFj4I/AAAAAAAAJQM/tbiZgTkbbpU/s1600/DSC_0449.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 158px; height: 193px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SxE7X_ZFj4I/AAAAAAAAJQM/tbiZgTkbbpU/s320/DSC_0449.JPG" alt="" id="BLOGGER_PHOTO_ID_5409169910788362114" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Going back to my recent experience in Czech Republic, the “&lt;a href="http://prague.usembassy.gov/petra_popluharova_google_tech_talk.html"&gt;tour&lt;/a&gt;” as I like to call it started this Monday (3 days ago) when I gave my first talk at Technical University Ostrava. I was relieved to see a number of girls in the audience since only 10% of Computer Science students in Czech Republic are female (compared to 20% in the US). I talked about Google in general, the company mission and culture. Then I talked about challenges in diversity, the sad statistics about girls and minorities in computing, and such. I finished my presentation talking about the various programs Google does in the diversity area, pointing programs that my audience (university students) might be interested in. After the talk, I answered few great (and unique!) questions, gave a female T-shirt to a dude (who earned it by asking a great question), and Google stickers and pencils to everyone. Right after that, extremely jet-lagged and tired, I traveled to Brno, where I was supposed to give a talk on the next day.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Brno&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SxE5BwdebAI/AAAAAAAAJP0/9SGTjMtKF_s/s1600/DSC_0662.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 213px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SxE5BwdebAI/AAAAAAAAJP0/9SGTjMtKF_s/s320/DSC_0662.JPG" alt="" id="BLOGGER_PHOTO_ID_5409167329799859202" border="0" /&gt;&lt;/a&gt;Brno University of Technology was the largest surprise of my “tour”. The university is a former monastery, which was closed by Maria Theresia, who gave it to an army, who later gave it to academia. The university has some new &lt;a href="http://www.flickr.com/photos/bubli/4133827237/"&gt;modern additions&lt;/a&gt;, free wifi, great coffee shop, a badass server room, and various other places where students can hang out and study. My camera could not stop shooting. &lt;a href="http://www.flickr.com/photos/bubli/4134577122/"&gt;Professor Honzik&lt;/a&gt; (who deserves a separate blog post to talk about) welcomed me and Marketa (who organized the talks), and gave us a great overview of the issues he has to deal with when trying to get ladies to join his school of informatics. The school has less than 2% of female CS students. He pointed out that whenever there is at least one lady in a group of students, the entire group tends to turn in papers earlier in the semester, and not wait until the last minute. He told us many stories like this and even showed us his “girl corner” banner that he uses to attract girls during events at the school. I gave the talk at his&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SxE5rpHR7ZI/AAAAAAAAJQE/b4IlKRrslqA/s1600/DSC_0790.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SxE5rpHR7ZI/AAAAAAAAJQE/b4IlKRrslqA/s320/DSC_0790.JPG" alt="" id="BLOGGER_PHOTO_ID_5409168049382223250" border="0" /&gt;&lt;/a&gt; university at 7pm &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SxE5Twjkh2I/AAAAAAAAJP8/iSerYs0PXHo/s1600/DSC_0764.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SxE5Twjkh2I/AAAAAAAAJP8/iSerYs0PXHo/s320/DSC_0764.JPG" alt="" id="BLOGGER_PHOTO_ID_5409167639063070562" border="0" /&gt;&lt;/a&gt;on Tuesday, which was way past my jet-lagged bed time. However, seeing 170 students in the gorgeous modern auditorium woke me up and I gave it my best. This time, Lara Aharkava (on the lower left photo) joined me, and after I finished my talk, she gave a brief overview of her experience as an intern in Google Zurich last summer. We got about an hour worth of questions after that and some folks even asked me to sign an autograph and take a photo with them. Now, that was unusual! We left Brno full of great emotions and headed to Prague for our final lecture at the American Center by the US Embassy.&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;Prague&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Everytime I do a talk in Czech or Slovakia, media is always interested in covering the event. I keep thinking that this is what Andrej Warhola (a.k.a. Andy Warhol) liked to call “15 minutes of fame”. So, this 15 minutes of fame happened again yesterday when I spent all day running from one interview to another. The day started with a full photo shoot for a magazine Patek Lidovych Novin, then rushed to an interview for a webzine, then rushed to a &lt;a href="http://www.rozhlas.cz/radio_cesko/exkluzivne/_zprava/662558"&gt;live broadcast&lt;/a&gt; for Czech Radio, and then gave the actual talk at the US Embassy. With additional online &lt;a href="http://zpravy.idnes.cz/problem-v-googlu-hojnost-jidla-napsala-vyvojarka-popluharova-on-line-12w-/brno.asp?c=A091123_205819_brno_trr"&gt;interview&lt;/a&gt; for iDnes and another live interview for a radio in Brno the day before, I was reaching a point of enlightenment about the reality of life in a media world. Let me just say, it is fun up to a certain point. Then, it becomes a very hard work. This experience completely changed my view of celebrities, actors, politicians, public activists, and whoever is being watched by the media. I respect these people a lot more now.&lt;br /&gt;&lt;a href="http://prague.usembassy.gov/petra_popluharova.html"&gt;The talk&lt;/a&gt; at the American Embassy was little more formal, and attended by people from a variety of backgrounds. I met few interesting people, including a lady from the Czech government, who works in a team that focuses on diversity at Czech universities. After the talk and a little mingling, I walked over the Charles Bridge (at night), enjoyed the last evening in Prague, and then called it a night.&lt;br /&gt;&lt;br /&gt;It is a Thursday, November the 26th 2009. Most Americans who read this immediately realize that today is the Thanksgiving Day. I am still on a train, my laptop battery is down to 18% and it is dark outside. This very moment, thousands of American families are traveling towards each other to meet at the Thanksgiving table. However, I will have no turkey, or a pumpkin pie tonight. But I am going home to visit my parents for a couple of days and that is what I am thankful for.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-2379929966647645950?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/2379929966647645950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=2379929966647645950' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2379929966647645950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2379929966647645950'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/11/on-road.html' title='Lady On the Train'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ODq6UoGYnB4/SxF7eE00mPI/AAAAAAAAJQc/BFCokqEflII/s72-c/DSC_0525-1.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-1690038015372226436</id><published>2009-11-19T19:36:00.000-08:00</published><updated>2009-11-20T11:59:40.377-08:00</updated><title type='text'>What happened to now?</title><content type='html'>&lt;span class="Apple-style-span"  style=" ;font-family:Times;"&gt;&lt;div style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; width: auto; font: normal normal normal 100%/normal Georgia, serif; text-align: left; "&gt;I have been thinking about this every now and then. A life seems to be always about great things that happened or great things that will happen. It is rare to hear people talking about the great day they are having or a great mood they are in. You usually hear about a great trip someone took, a great wedding someone plans, a baby someone anticipates? What happened to the present moment?&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another interesting observation I made is that our point of view changes logarithmically. When you have 5 cents, you envy the one who has a dollar. When you have a thousand dollars in your account, you envy the one who has one hundred thousand. When you have 2 million dollars, you do not consider yourself rich. It is the "multi-millionaires" that are.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When does one become happy with what she has? Why not now?&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-1690038015372226436?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/1690038015372226436/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=1690038015372226436' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/1690038015372226436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/1690038015372226436'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/11/what-happened-to-now.html' title='What happened to now?'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-5011313095750695818</id><published>2009-09-16T14:25:00.000-07:00</published><updated>2009-09-29T22:57:51.678-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kunsthaust'/><category scheme='http://www.blogger.com/atom/ns#' term='railway'/><category scheme='http://www.blogger.com/atom/ns#' term='graz'/><category scheme='http://www.blogger.com/atom/ns#' term='austria'/><category scheme='http://www.blogger.com/atom/ns#' term='semmering'/><category scheme='http://www.blogger.com/atom/ns#' term='schlossberg'/><category scheme='http://www.blogger.com/atom/ns#' term='grazer murinsel'/><title type='text'>Take a train to Graz</title><content type='html'>Yes, Graz. Not Venice, not Paris, or Rome. Graz. Graz, the second largest city in Austria, the home of Arnold the Governator, and a modern student city with 6 universities. Once, a Slavic settlement (called &lt;span style="font-style: italic;"&gt;Grad&lt;/span&gt;), today Graz is a candidate for &lt;span style="font-style: italic;"&gt;city of design&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 0);"&gt;Why Graz?&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SrGBnnKiI9I/AAAAAAAAIdA/KCXBemIC_xI/s1600-h/DSC_0036.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 252px; height: 168px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SrGBnnKiI9I/AAAAAAAAIdA/KCXBemIC_xI/s320/DSC_0036.JPG" alt="" id="BLOGGER_PHOTO_ID_5382225547212497874" border="0" /&gt;&lt;/a&gt;We went to Graz because we wanted to get from Vienna to Venice and also see Alps. The best part about going from Vienna to Venice are the breathtaking views from the train and the buses. It took about 3 hrs to get to Graz from Vienna by train, and about 6 hrs to get to Venice from Graz by bus. Both rides were great. The first ride (train Vienna to Graz) included about an hour of trans-mountain railroad (&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/Semmering_railway"&gt;&lt;layer id="google-toolbar-hilite-0" style="background-color: Yellow; color: black;"&gt;&lt;/layer&gt;Semmering Railway&lt;/a&gt;) that is an UNESCO World Heritage and a first mountain railroad&lt;layer id="google-toolbar-hilite-2" style="background-color: Cyan; color: black;"&gt;&lt;/layer&gt; ever. My camera would not stop shooting. When we arrived in Graz, we checked into Hotel Daniel that is right next to the awesome train station.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 0); font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;24 hours in Graz.&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SrGC2u5qnzI/AAAAAAAAIdU/6NrJLyCSXA4/s1600-h/train-station1.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 249px; height: 166px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SrGC2u5qnzI/AAAAAAAAIdU/6NrJLyCSXA4/s320/train-station1.JPG" alt="" id="BLOGGER_PHOTO_ID_5382226906498899762" border="0" /&gt;&lt;/a&gt;It is not right to spend all day in trains and buses. So we decided to stay 1 day and 2 nights in Graz, and then continue our journey to Venice. One day in Graz turned out perfect for us. We loved the fresh cheese bread rolls in numerous bakeries along the Annenstrasse that lead from the train station to downtown, and we had a coffee at &lt;a href="http://www.youtube.com/watch?v=snF9jT9-SrE"&gt;Cafe Tribeca&lt;/a&gt; that a friend recommended. We then walked through the main square (Hauptplatz) and took a little detour via the city gardens and finally climbed up the Schlossberg hill. The views from the Schlossbers are amazing, and the Schlossberg offers more things to see deep inside of the hill. There is an elevator that brings you to the top of the hill, and also few tunnels you can explore. They served as a bomb shelter for the locals.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 0); font-weight: bold;"&gt;Kunsthaust&lt;/span&gt;&lt;a style="color: rgb(51, 51, 0); font-weight: bold;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SrGNA2SeU-I/AAAAAAAAIeo/3AjNlWqbkb0/s1600-h/DSC_0434.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 257px; height: 375px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SrGNA2SeU-I/AAAAAAAAIeo/3AjNlWqbkb0/s320/DSC_0434.JPG" alt="" id="BLOGGER_PHOTO_ID_5382238075396969442" border="0" /&gt;&lt;/a&gt;&lt;span style="color: rgb(51, 51, 0); font-weight: bold;"&gt; and Schlossberg&lt;/span&gt;&lt;br /&gt;This building was the only thing I knew about Graz prior to our visit. I could not wait to shoot this &lt;a href="http://en.wikipedia.org/wiki/Kunsthaus_Graz"&gt;blob style building&lt;/a&gt; at night. It turned out, this building is hard to shoot, because other buildings are obstructing the view. The best photos of it were taken from the top of the Schlossberg. We did not go in, did not feel like going into a museum. The building fits well with the old town's architecture and the red roofs.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SrGHtLwUmPI/AAAAAAAAId8/fIYTpxLsoBo/s1600-h/DSC_0281.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 519px; height: 346px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SrGHtLwUmPI/AAAAAAAAId8/fIYTpxLsoBo/s320/DSC_0281.JPG" alt="" id="BLOGGER_PHOTO_ID_5382232240003782898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 0);"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 0);"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Grazer Murinsel&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;This bridge was my second most favorite thing to shoot (after the elvator). &lt;a href="http://de.wikipedia.org/wiki/Grazer_Murinsel"&gt;Grazer Murinsel&lt;/a&gt; was designed by a New York artist and built in 2003 and hosts a cafe and a playground for kids. It looks best at night. It does appear to be an island, but in fact this bridge just floats. I wish there were more structures like this all over the world.&lt;br /&gt;&lt;br /&gt;More photos from the trip can be found &lt;a href="http://picasaweb.google.com/zaskodnik/Summerlicious2009GrazVenicePragueZilina#"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SrGNnDh3tQI/AAAAAAAAIfE/WzpOF8mvhQs/s1600-h/DSC_0449.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 380px; height: 253px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SrGNnDh3tQI/AAAAAAAAIfE/WzpOF8mvhQs/s320/DSC_0449.JPG" alt="" id="BLOGGER_PHOTO_ID_5382238731786237186" border="0" /&gt;&lt;/a&gt;&lt;a style="font-weight: bold; color: rgb(51, 51, 0);" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SrGL-UfCBfI/AAAAAAAAIeg/Mamvgm1B3kQ/s1600-h/DSC_0022.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 399px; height: 270px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SrGL-UfCBfI/AAAAAAAAIeg/Mamvgm1B3kQ/s320/DSC_0022.JPG" alt="" id="BLOGGER_PHOTO_ID_5382236932451468786" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-5011313095750695818?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/5011313095750695818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=5011313095750695818' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5011313095750695818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5011313095750695818'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/09/take-train-to-graz.html' title='Take a train to Graz'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ODq6UoGYnB4/SrGBnnKiI9I/AAAAAAAAIdA/KCXBemIC_xI/s72-c/DSC_0036.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-7306244436592912993</id><published>2009-05-13T11:25:00.000-07:00</published><updated>2009-05-13T11:44:20.278-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tour'/><category scheme='http://www.blogger.com/atom/ns#' term='tourguide'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Googleplex'/><title type='text'>200 Second Googleplex Tour</title><content type='html'>&lt;div style="width: 50%; float: left;"&gt;&lt;object width="640" height="505"&gt;&lt;param name="movie" value="http://www.youtube.com/v/eFeLKXbnxxg&amp;hl=en&amp;fs=1&amp;rel=0&amp;color1=0x234900&amp;color2=0x4e9e00"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/eFeLKXbnxxg&amp;hl=en&amp;fs=1&amp;rel=0&amp;color1=0x234900&amp;color2=0x4e9e00" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="505"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div style="width: 18%; float: right;"&gt;I volunteer as a Googleplex tour guide and give tours of Googleplex to various groups of visitors (middle school girls, various company executives, winners of coding contests, etc.). I take them to 20 to 40 minute tours though the main buildings of Googleplex. Friends often ask me to show them around, and I try to if I can. But many of my other friends are outside of the U.S., and I have hard time explaining to them how the Googleplex looks. Fortunately, there is &lt;a href="http://www.youtube.com/watch?v=eFeLKXbnxxg"&gt;a video&lt;/a&gt; made by my co-tourguides, summarizing the tour of Googleplex in 200 seconds. Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-7306244436592912993?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/7306244436592912993/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=7306244436592912993' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/7306244436592912993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/7306244436592912993'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/05/googleplex-tour.html' title='200 Second Googleplex Tour'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-5529848591714181340</id><published>2009-05-11T19:31:00.000-07:00</published><updated>2009-05-22T00:52:31.778-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pros and cons'/><category scheme='http://www.blogger.com/atom/ns#' term='GWT'/><category scheme='http://www.blogger.com/atom/ns#' term='minuses'/><category scheme='http://www.blogger.com/atom/ns#' term='pros'/><category scheme='http://www.blogger.com/atom/ns#' term='pluses'/><category scheme='http://www.blogger.com/atom/ns#' term='google web toolkit'/><category scheme='http://www.blogger.com/atom/ns#' term='disadvantages'/><category scheme='http://www.blogger.com/atom/ns#' term='cons'/><category scheme='http://www.blogger.com/atom/ns#' term='advantages'/><title type='text'>GWT Pros and Cons</title><content type='html'>&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Pros:&lt;/span&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;no need to learn JavaScript (yay!)&lt;/li&gt;&lt;li&gt;you get the fast productivity of Java =&gt; resulting in a faster and more optimized JavaScript than what you would have written by hand&lt;br /&gt;&lt;/li&gt;&lt;li&gt;no need to worry about browser quirks&lt;/li&gt;&lt;li&gt;using statically typed language (Java) to develop the client-side of the app allows to catch various problems even before the code is compiled (tools, IDEs, static analysis tools are available)&lt;/li&gt;&lt;li&gt;debugging tools like any other Java app (can set breakpoints and debug the app in hosted mode)&lt;/li&gt;&lt;li&gt;sharing the same language between the client and server (ability to use a shared Java package)&lt;/li&gt;&lt;li&gt;hosted mode (you can make changes in Java on the fly and just hit "refresh" in the hosted mode browser)&lt;/li&gt;&lt;li&gt;generics in GWT 1.5 (better static type checking on the client part of the app)&lt;/li&gt;&lt;li&gt;DOM abstraction =&gt; code in one language and compile properly for any browser&lt;/li&gt;&lt;li&gt;history support&lt;/li&gt;&lt;li&gt;open source =&gt; many free widgets&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Cons:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;only a subset of JRE available to use on the client side (translatable to JavaScript using GWT compiler)&lt;/li&gt;&lt;li&gt;the concept of modules can get very confusing&lt;/li&gt;&lt;li&gt;web indexing of Javascript is difficult, often developers need to create a HTML-only version of the app just to allow search engines to index it =&gt; hard to maintain, pain to write&lt;/li&gt;&lt;li&gt;hard to the use a wider range of browsers for testing&lt;/li&gt;&lt;li&gt;can not edit CSS while in hosted mode&lt;/li&gt;&lt;li&gt;does not offer RPC mechanism using Comet&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-5529848591714181340?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/5529848591714181340/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=5529848591714181340' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5529848591714181340'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5529848591714181340'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/05/gwt-pros-and-cons.html' title='GWT Pros and Cons'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-2417865407585868799</id><published>2009-04-19T12:16:00.000-07:00</published><updated>2009-04-19T13:05:21.465-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='binding'/><category scheme='http://www.blogger.com/atom/ns#' term='GWT'/><category scheme='http://www.blogger.com/atom/ns#' term='MVC'/><category scheme='http://www.blogger.com/atom/ns#' term='controller'/><category scheme='http://www.blogger.com/atom/ns#' term='GWT test'/><category scheme='http://www.blogger.com/atom/ns#' term='data store'/><category scheme='http://www.blogger.com/atom/ns#' term='model'/><category scheme='http://www.blogger.com/atom/ns#' term='GWTTestCase'/><category scheme='http://www.blogger.com/atom/ns#' term='view'/><title type='text'>Binding the Model to the View in GWT</title><content type='html'>When you start creating a simple GWT widget, it is very tempting to keep all UI elements (view), the data (model), and the logic that manipulates the view and model (controller) in one place. When your app gets bigger, you end up creating a spaghetti code, especially when you want make an event to cause an update in a widget defined in another class. To untangle the mess, split the code into three logically separate parts: Model, View, and Controller.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;To bind the data to the view:&lt;/span&gt;&lt;br /&gt;The best solution is to register a ChangeListener in the Model and notify the View on change (this is what MVC pattern does). Ideally, you would split the code associated with a Widget into three separate classes. One would be a Controller, one a Model, and one a View.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The Model (the Observable) does not have any reference to the Controller or the View&lt;/li&gt;&lt;li&gt;The Controller has a reference to Model&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The View has a reference to the Model (is able to add listeners to it) and the Controller&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;So what does View do?&lt;br /&gt;&lt;ul&gt;&lt;li&gt;It registers listeners with a Model, allowing the Model to fire onChange() events which the View can use to update itself.&lt;/li&gt;&lt;li&gt;It registers various listeners on its UI elements (ClickListener for a Button, etc) and defines the onClick() or such methods, where the calls to controller are made.&lt;/li&gt;&lt;li&gt;When the user clicks on an UI element, the controller method is called and performs the necessary computation and/or updates the model.&lt;/li&gt;&lt;/ul&gt;What does Controller do?&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Exposes various public methods that perform computations and manipulate the data in a Model&lt;/li&gt;&lt;li&gt;Controller does not update the View directly. It updates the Model which View listens to.&lt;/li&gt;&lt;/ul&gt;What does Model do?&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Allows to register change listeners via addChangeListener()&lt;br /&gt;&lt;/li&gt;&lt;li&gt;It contains the state of the data, and fires the onChange events when Controller calls its setter methods&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;This decoupling of the model, view, and controller allows better reusability of code, as well as testability. You do not need to extend (the painfully slow to use) &lt;span style="font-family: courier new;"&gt;GwtTestCase&lt;/span&gt; to test the code in Model or Controller. You simply extend the &lt;span style="font-family: courier new;"&gt;junit.framework.TestCase&lt;/span&gt; and you can use any Java library, not only those supported by GWT.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-2417865407585868799?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/2417865407585868799/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=2417865407585868799' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2417865407585868799'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2417865407585868799'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/04/binding-model-to-view-in-gwt.html' title='Binding the Model to the View in GWT'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-3796761749030444354</id><published>2009-04-19T12:08:00.000-07:00</published><updated>2009-04-19T13:06:53.526-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='strategy'/><category scheme='http://www.blogger.com/atom/ns#' term='GWT'/><category scheme='http://www.blogger.com/atom/ns#' term='observable'/><category scheme='http://www.blogger.com/atom/ns#' term='MVC'/><category scheme='http://www.blogger.com/atom/ns#' term='design pattern'/><category scheme='http://www.blogger.com/atom/ns#' term='observer'/><title type='text'>Design Patterns and GWT</title><content type='html'>I discovered &lt;a href="http://css.dzone.com/news/design-patterns-and-gwt?page=0,0"&gt;this&lt;/a&gt; amazing article about the use of MVC in GWT. It is the best GWT article I have read in the past few months. It shows a practical example (Calculator widget) using MVC with Observer and Strategy patterns. I immediately ordered the book "GWT IN PRACTICE" and can not wait to read it in the shuttle during my long commute to work.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-3796761749030444354?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/3796761749030444354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=3796761749030444354' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3796761749030444354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3796761749030444354'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/04/design-patterns-and-gwt.html' title='Design Patterns and GWT'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-6493006916984064311</id><published>2009-04-06T22:06:00.000-07:00</published><updated>2009-04-08T22:08:43.458-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='rembrandt'/><category scheme='http://www.blogger.com/atom/ns#' term='brad'/><category scheme='http://www.blogger.com/atom/ns#' term='shoot'/><category scheme='http://www.blogger.com/atom/ns#' term='portrait'/><title type='text'>Portraits</title><content type='html'>&lt;div style="width: 50%; float: left;"&gt;&lt;iframe src="http://www.flickr.com/slideShow/index.gne?set_id=72157616403996123&amp;amp;" align="center" frameborder="0" height="500" scrolling="no" width="500"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div style="width: 36%; float: right;"&gt;I had a little portrait lesson with &lt;a href="http://www.flickr.com/photos/62322342@N00/"&gt;Bill&lt;/a&gt; and Laura yesterday. &lt;a href="http://bradfordcross.blogspot.com/"&gt;Brad&lt;/a&gt; and Polina posed, and the results were pretty good. We first tried Rembrandt Light, then soft light on Polina, and hard light on Brad. We used four strobes: two from the front, one for the top of the hair, and one for the backdrop. I still do not get the theory behind this all, but I am getting there. I finally understand the meaning on the inverse square law and the square root of 2 used when computing the distance between stops. It is pretty simple when you get it. But at first you just wonder why the hell they are talking about square roots when they talk about light.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-6493006916984064311?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/6493006916984064311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=6493006916984064311' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/6493006916984064311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/6493006916984064311'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/04/face-i-love.html' title='Portraits'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-651496389566544560</id><published>2009-03-29T17:40:00.000-07:00</published><updated>2009-03-29T17:57:50.417-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bridge'/><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='night'/><category scheme='http://www.blogger.com/atom/ns#' term='beach'/><category scheme='http://www.blogger.com/atom/ns#' term='san francisco'/><category scheme='http://www.blogger.com/atom/ns#' term='baker beach'/><category scheme='http://www.blogger.com/atom/ns#' term='Golden Gate'/><title type='text'>Waiting For the Golden Gate Bridge</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SdAYYVyMJpI/AAAAAAAAFaU/Pax24QF64MU/s1600-h/DSC_0031.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 205px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SdAYYVyMJpI/AAAAAAAAFaU/Pax24QF64MU/s320/DSC_0031.JPG" alt="" id="BLOGGER_PHOTO_ID_5318777966368138898" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/62322342@N00/3394447176/"&gt;Bill&lt;/a&gt; and I decided to go shooting Golden Gate Bridge at night. Sunset was at 7:29pm, and we made sure we were at the Baker Beach on time. The bridge is a beauty, it has many faces, and strikes a different pose each time you trigger the shutter. Weather in San Francisco can not be summarized in one sentence. Each neighborhood has its own micro-climate which dramatically changes during the day. As the sunset approached, Baker Beach turned into a cold windy place. We climbed over some boulders, walked through one of the beaches, and settled our tripods at a nice spot with a great view at the bridge. The &lt;a href="http://www.flickr.com/photos/bubli/sets/72157616057242348/"&gt;pictures&lt;/a&gt; were well worth the frozen asses we had towards end of the photo trip.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-651496389566544560?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/651496389566544560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=651496389566544560' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/651496389566544560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/651496389566544560'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/03/waiting-for-golden-gate-bridge.html' title='Waiting For the Golden Gate Bridge'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ODq6UoGYnB4/SdAYYVyMJpI/AAAAAAAAFaU/Pax24QF64MU/s72-c/DSC_0031.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-5806310271966028986</id><published>2009-03-15T17:01:00.001-07:00</published><updated>2009-04-08T22:05:33.448-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vespa'/><category scheme='http://www.blogger.com/atom/ns#' term='bike'/><category scheme='http://www.blogger.com/atom/ns#' term='sfmc'/><category scheme='http://www.blogger.com/atom/ns#' term='san francisco'/><category scheme='http://www.blogger.com/atom/ns#' term='motorcycle'/><category scheme='http://www.blogger.com/atom/ns#' term='ride'/><title type='text'>Muchas Motos!!!</title><content type='html'>&lt;div style="width: 50%; float: left;"&gt;&lt;iframe src="http://www.flickr.com/slideShow/index.gne?set_id=72157615263821097&amp;amp;" align="top" frameborder="0" height="500" scrolling="no" width="500"&gt;&amp;amp;amp;amp;lt;br /&amp;amp;amp;amp;gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div style="width: 36%; float: right;"&gt;­We opened the riding season with the Duel Sport Ride organized by &lt;a href="http://www.sf-mc.org/index.html"&gt;San Francisco Motorcycle Club&lt;/a&gt;. It seemed it would rain any moment, but the weather held nice.&lt;br /&gt;&lt;br /&gt;I came to the club on time, when I realized my tank was dry. I went to the closest gas station, got my gas, and tried to catch up with the group that already took off. I kept catching up until I realized that there is no way a bunch of hairy Harley riders will drive so far ahead. I then started suspecting that I was ahead of the group and asked a group of Mexican day workers if they saw a bunch of bikes. The did not understand. Then I spread my hands wide and said "many many bikes". Then one of them told the others "Muchas motos!!!" and I knew they got my question. They all nodded "no", so I knew that the group was behind me. I made a U-turn, they all waving at me, and rode back about half a mile until I heard the humming sound of a &lt;a href="http://www.flickr.com/photos/bubli/sets/72157615263821097/"&gt;bunch of bikes&lt;/a&gt; approaching me from around the corner. Excited that I found my group, I made another U-turn and continued riding with them. We all passed by the same group of Mexicans and they all were jumping and waving at me, they seemed happy that I found my group.&lt;br /&gt;&lt;br /&gt;The ride was smooth, the &lt;a href="http://www.flickr.com/photos/bubli/sets/72157615263821097/"&gt;club members&lt;/a&gt; were guarding every red light, and every stop sign, allowing the bikes to drive without having to stop.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-5806310271966028986?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/5806310271966028986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=5806310271966028986' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5806310271966028986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5806310271966028986'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/03/muchas-motos.html' title='Muchas Motos!!!'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-5411709031213612295</id><published>2009-03-06T22:50:00.000-08:00</published><updated>2009-03-06T22:56:23.792-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flickr'/><category scheme='http://www.blogger.com/atom/ns#' term='photos'/><title type='text'>They Won</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SbIZydqFeAI/AAAAAAAAFWI/0c-BUzM6OaY/s1600-h/DSC_0068.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 213px; height: 320px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SbIZydqFeAI/AAAAAAAAFWI/0c-BUzM6OaY/s320/DSC_0068.JPG" alt="" id="BLOGGER_PHOTO_ID_5310335265368537090" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SbIad1Y3FKI/AAAAAAAAFWQ/hzLd7ME4WrA/s1600-h/DSC_0101.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 229px; height: 320px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SbIad1Y3FKI/AAAAAAAAFWQ/hzLd7ME4WrA/s320/DSC_0101.JPG" alt="" id="BLOGGER_PHOTO_ID_5310336010473116834" border="0" /&gt;&lt;/a&gt;My friends keep asking when will I finally create a Flickr profile for my photos. They got what they want. Ladies and gentlemen, here is &lt;a href="http://www.flickr.com/photos/bubli/"&gt;my photostream&lt;/a&gt;. As a teaser, here is a picture of &lt;a href="http://www.flickr.com/photos/reelgeek"&gt;Erin&lt;/a&gt; in the flight and &lt;a href="http://www.flickr.com/photos/siliconmonkey"&gt;Dave's&lt;/a&gt; awesome front cover shot.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-5411709031213612295?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/5411709031213612295/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=5411709031213612295' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5411709031213612295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5411709031213612295'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/03/they-won.html' title='They Won'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ODq6UoGYnB4/SbIZydqFeAI/AAAAAAAAFWI/0c-BUzM6OaY/s72-c/DSC_0068.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-528183588567072590</id><published>2009-03-02T22:08:00.000-08:00</published><updated>2009-03-03T21:55:45.748-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='henna painting'/><category scheme='http://www.blogger.com/atom/ns#' term='dog'/><category scheme='http://www.blogger.com/atom/ns#' term='True Beauty'/><category scheme='http://www.blogger.com/atom/ns#' term='dead leaf'/><category scheme='http://www.blogger.com/atom/ns#' term='drawing'/><category scheme='http://www.blogger.com/atom/ns#' term='Shih-Tzu'/><category scheme='http://www.blogger.com/atom/ns#' term='Fluffy'/><category scheme='http://www.blogger.com/atom/ns#' term='leaf'/><category scheme='http://www.blogger.com/atom/ns#' term='TV show'/><title type='text'>True Beauty</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/Sa4X2IlvPSI/AAAAAAAAFV0/yYP7VyBkrUA/s1600-h/3278525544_d259b6f8c7_o.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/Sa4X2IlvPSI/AAAAAAAAFV0/yYP7VyBkrUA/s320/3278525544_d259b6f8c7_o.jpg" alt="" id="BLOGGER_PHOTO_ID_5309207229502536994" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SazLwCCcKcI/AAAAAAAAFVU/ArqfR_YBAKc/s1600-h/dosa_art.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SazLwCCcKcI/AAAAAAAAFVU/ArqfR_YBAKc/s320/dosa_art.JPG" alt="" id="BLOGGER_PHOTO_ID_5308842086804236738" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SazKYpwK02I/AAAAAAAAFUk/R7k0FkM1DIE/s1600-h/DSC_0128.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SazKYpwK02I/AAAAAAAAFUk/R7k0FkM1DIE/s320/DSC_0128.JPG" alt="" id="BLOGGER_PHOTO_ID_5308840585636533090" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SazMC986qAI/AAAAAAAAFVc/yiyTpeB2O1g/s1600-h/DSC_0116.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SazMC986qAI/AAAAAAAAFVc/yiyTpeB2O1g/s320/DSC_0116.JPG" alt="" id="BLOGGER_PHOTO_ID_5308842412124841986" border="0" /&gt;&lt;/a&gt;It was the season finale of one of the most ridiculous shows I've ever seen -- &lt;a href="http://en.wikipedia.org/wiki/True_Beauty_%28TV_series%29"&gt;True Beauty&lt;/a&gt;. 10 high maintenance looking people competed to be the most beautiful person in America. The winner ended up being one of the former Miss Teen USA contestants, a sweet girl from Texas.&lt;br /&gt;&lt;br /&gt;Here are the finalists of my very own True Beauty contest. The winner is... (dramatic pause) (commercial)... (and we are back)... and the winner is (dramatic pause) &lt;a href="http://www.fluffytemple.com/"&gt;FLUFFY&lt;/a&gt;!!!! The runner up is a henna painting from our neighborhood south Indian restaurant &lt;a href="http://www.dosasf.com/"&gt;Dosa&lt;/a&gt;, the third place got a dead leaf, and the fourth got my &lt;a href="http://picasaweb.google.com/zaskodnik/Artwork#"&gt;drawing&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-528183588567072590?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/528183588567072590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=528183588567072590' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/528183588567072590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/528183588567072590'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/03/true-beauty.html' title='True Beauty'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ODq6UoGYnB4/Sa4X2IlvPSI/AAAAAAAAFV0/yYP7VyBkrUA/s72-c/3278525544_d259b6f8c7_o.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-309745166478776454</id><published>2009-02-28T21:57:00.000-08:00</published><updated>2009-03-01T19:32:32.377-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='calculus'/><category scheme='http://www.blogger.com/atom/ns#' term='mathematical analysis'/><category scheme='http://www.blogger.com/atom/ns#' term='transfer student'/><category scheme='http://www.blogger.com/atom/ns#' term='school system'/><category scheme='http://www.blogger.com/atom/ns#' term='fields of mathematics'/><title type='text'>What the Hell is "Calculus"?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SaoktB8WJ7I/AAAAAAAAFTY/ebvqme98_9w/s1600-h/math_fields.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 126px; height: 400px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SaoktB8WJ7I/AAAAAAAAFTY/ebvqme98_9w/s400/math_fields.gif" alt="" id="BLOGGER_PHOTO_ID_5308095466843809714" border="0" /&gt;&lt;/a&gt;&lt;&lt; Click on the graph on the left to see the categorization of mathematical fields.&lt;br /&gt;&lt;br /&gt;I came to the states after 4 years of &lt;a href="http://www.uniza.sk/menu/inc.asp?ver=EN"&gt;university&lt;/a&gt; studies in Slovakia. I was a transfer student and as a transfer student I planned to continue my education on a &lt;a href="http://scu.edu/"&gt;different university&lt;/a&gt;. Among the usual annoyances of transferring to a different school, foreign students have a it little more difficult. Besides having to pay a full tuition and not having any chance to get any kind of scholarship, to transfer units from my old school, I had to get my previous coursework evaluated and approved as an equivalent to the classes at the university I was transferring to. The university has no interest in helping you to transfer as many units as you can, since doing so means you will spend less time and money at their educational institution.&lt;br /&gt;&lt;br /&gt;I happily strutted towards the "International Students Services" department (ISS) to hand them the coursework transcripts which were a result of a major collaborative efforts of student department at my old university, my parents, translators, and FedEx. Few days later, I get a decision of their coursework match-making -- only a handful of classes got accepted as equal to the classes at their school. That meant, I would have to study for 3 more years to complete my degree. Furious, I came back to ISS asking why did they accept my three semesters worth of "Matematicka Analyza" classes as "elective". They said, they do not have such class at their institution. It did not make any sense. They do not teach differential equations, multiple integrals, Fourrier transforms, and such? I objected and was given a pink form to fill out for every class I thought was transferable, and to get that signed by the appropriate dean of the department that teaches this class.&lt;br /&gt;&lt;br /&gt;And here started the leg work. My parents shipped me my old class notes and for each class that got approved as "elective", I visited the dean of the department, presented the English version of the transcript and offered to show my class notes. ISS approved my 1 semester of class called "Physics" as one quarter of class called "Physics 01". I objected, brought the transcript to the head of physics department who accepted it as "Physics 01", "Physics 02", and "Physics 03". At the end, I managed to transfer the maximum allowed number of units a school allows to transfer including all my "Mathematical Analysis" classes. I had to discard some of the approved units since they only allow to transfer 1/2 of the total units to complete a degree. So I had to study for 2 more years to complete my degree (not 3). I managed to graduate in 5 quarters instead of 6. Hey, each quarter is another huge chunk of money, so I was very determined to take on as many units per quarter as was allowed.&lt;br /&gt;&lt;br /&gt;One of the most retarded requests was when I was asked to prove that I do speak other language in order to waive a foreign language class. Otherwise I would have to take a foreign language class as required by the "GE" requirements of the curriculum. (I will rant about the stupidity of GE requirements at US universities in a different blog post.) There I was, just moved from Slovakia, gave them all the transcripts for classes I took in Slovak, had a thick Slovak accent, and they wanted a proof that I speak a language other than English?!?! I copied my High School diploma (not even translated into English) and gave it to them. They did not even look at it, thanked me, and filed it in my file. If I could do that again, I would have given them my Slovak cell phone bill instead.&lt;br /&gt;&lt;br /&gt;Another hardship I had to endure was to fight to get my "Chemistry 01" waived. Again, another irrelevant class to my major a.k.a. "&lt;a href="http://en.wikipedia.org/wiki/Intersegmental_General_Education_Transfer_Curriculum"&gt;a GE requirement&lt;/a&gt;". I told them I took 2 full years of chemistry at middle school, and 2 more years of chemistry at the high school. They did not know what to do since they only accept transfer units from colleges and universities. I got another pink sheet and off I went to the Chemistry department with a bunch of notebooks from an middle and high school, and got my Chemistry class waived. God bless Slovak school system.&lt;br /&gt;&lt;br /&gt;After hearing "calculus this" and "calculus that", I decided to clarify this once for all and created a graph of English names of mathematical fields (a rough and not 100% accurate one) to see how does the vague word "Calculus" fall into the various mathematical disciplines I studied in Slovak. Click on the image on the left to see the graph.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;And guess what!! I turned out "&lt;a href="http://en.wikipedia.org/wiki/Calculus"&gt;Calculus&lt;/a&gt;" is a "&lt;a href="http://en.wikipedia.org/wiki/Analysis_%28mathematics%29"&gt;Mathematical Analysis&lt;/a&gt;".&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-309745166478776454?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/309745166478776454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=309745166478776454' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/309745166478776454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/309745166478776454'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/math-fields.html' title='What the Hell is &quot;Calculus&quot;?'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ODq6UoGYnB4/SaoktB8WJ7I/AAAAAAAAFTY/ebvqme98_9w/s72-c/math_fields.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-8292983590406352096</id><published>2009-02-27T22:07:00.000-08:00</published><updated>2009-03-01T16:30:59.686-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dog'/><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='sparky'/><category scheme='http://www.blogger.com/atom/ns#' term='friday'/><title type='text'>Photo Friday by the Swamp</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SajWKNFymCI/AAAAAAAAFTA/2tR5CwyV2ZU/s1600-h/dog_and_photographers.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SajWKNFymCI/AAAAAAAAFTA/2tR5CwyV2ZU/s320/dog_and_photographers.JPG" alt="" id="BLOGGER_PHOTO_ID_5307727631657113634" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/Sasole9uJoI/AAAAAAAAFUA/YqJqvI53iRo/s1600-h/dustin_dave.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/Sasole9uJoI/AAAAAAAAFUA/YqJqvI53iRo/s320/dustin_dave.JPG" alt="" id="BLOGGER_PHOTO_ID_5308381210218473090" border="0" /&gt;&lt;/a&gt;Another week, another Photo Friday. This time, the star was Sparky. We went for a walk alongside a &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SasDDHeemyI/AAAAAAAAFTo/dannjy9-VdQ/s1600-h/ed_pentacon.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SasDDHeemyI/AAAAAAAAFTo/dannjy9-VdQ/s320/ed_pentacon.JPG" alt="" id="BLOGGER_PHOTO_ID_5308339937867635490" border="0" /&gt;&lt;/a&gt;gnarly swamp, smelling whiffs of &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ODq6UoGYnB4/SasEH3b95uI/AAAAAAAAFT4/C7oE7ilpftg/s1600-h/peter_brad.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://2.bp.blogspot.com/_ODq6UoGYnB4/SasEH3b95uI/AAAAAAAAFT4/C7oE7ilpftg/s320/peter_brad.JPG" alt="" id="BLOGGER_PHOTO_ID_5308341118973109986" border="0" /&gt;&lt;/a&gt;stench every few seconds. But hey, you can not smell it when you see the pictures! On the upper left picture from the left: &lt;a href="http://flickr.com/photos/polvero"&gt;Dustin&lt;/a&gt;, &lt;a href="http://flickr.com/photos/siliconmonkey/sets/72157613033760793/"&gt;Sparky &lt;/a&gt;(the star), Joey, and &lt;a href="http://flickr.com/photos/siliconmonkey"&gt;Dave&lt;/a&gt;. Bottom photos from the left: &lt;a href="http://flickr.com/photos/edho"&gt;Ed&lt;/a&gt; with his eastern-German Pentacon, &lt;a href="http://picasaweb.google.com/epstein.peter/200902PhotoFridays"&gt;Peter&lt;/a&gt; with his Canon, and &lt;a href="http://bradfordcross.blogspot.com/"&gt;Brad&lt;/a&gt;. Thanks to Dustin for letting me borrow the 50 mm lens. Message for Sparky: Wait till &lt;a href="http://www.fluffytemple.com/"&gt;Fluffy&lt;/a&gt; appears in all her starliciousness and takes the spotlight!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-8292983590406352096?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/8292983590406352096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=8292983590406352096' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8292983590406352096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8292983590406352096'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/photo-friday.html' title='Photo Friday by the Swamp'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ODq6UoGYnB4/SajWKNFymCI/AAAAAAAAFTA/2tR5CwyV2ZU/s72-c/dog_and_photographers.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-2084598516463982340</id><published>2009-02-26T00:15:00.000-08:00</published><updated>2009-02-26T00:56:08.410-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='concurrency basics'/><category scheme='http://www.blogger.com/atom/ns#' term='race conditions'/><category scheme='http://www.blogger.com/atom/ns#' term='Java concurrency'/><category scheme='http://www.blogger.com/atom/ns#' term='atomicity'/><category scheme='http://www.blogger.com/atom/ns#' term='basics'/><category scheme='http://www.blogger.com/atom/ns#' term='threading'/><category scheme='http://www.blogger.com/atom/ns#' term='concurrency'/><title type='text'>Java Concurrency In Practice (Part 1)</title><content type='html'>I highly recommend &lt;a href="http://jcip.net/"&gt;this&lt;/a&gt; book about Java concurrency. I extracted some of the main points from the book and will draft them out in this and the following blog posts.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;When do you need synchronization:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;when multiple threads access the same mutable state variable&lt;/li&gt;&lt;/ul&gt;3 ways to do it:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;don't share the state variable across threads (&lt;b&gt;isolation&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;make the state variable immutable (&lt;b&gt;immutability&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;use synchronization whenever accessing the state variable (&lt;b&gt;locking&lt;/b&gt;)&lt;/li&gt;&lt;/ul&gt;No state =&gt; no thread safety issues because stateless objects are always thread safe&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;COMPOUND ACTIONS NEED ATOMICITY:&lt;/span&gt;&lt;br /&gt;BAD:&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&amp;nbsp;private long count = 0;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&amp;nbsp;public long getCount() { return count; }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&amp;nbsp;&amp;nbsp;public void doSomething() {&lt;/span&gt;&lt;br /&gt;  &lt;span style="font-family:Courier New;"&gt;&amp;nbsp;&amp;nbsp;blah blah&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;++count; &lt;/span&gt;// this contains 3 operations: read, increment, write&lt;span style="font-family:Courier New;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;                                                 &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // they can be interrupted by other threads that see data in a bad state &lt;span style="font-family:Courier New;"&gt;&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;GOOD:&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;    &amp;nbsp;&amp;nbsp;private final AtomicLong count = new AtomicLong();&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;public long getCount() { return count.get(); }&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;public void doSomething() {&lt;/span&gt; &lt;span style="font-family:Courier New;"&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;blah blah&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;count.incrementAndGet();&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;If there are more variables that form an invariant, you need to update related state variables in a single atomic operation.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;if possible, try to use existing thread-safe objects, like &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/atomic/AtomicLong.html"&gt;AtomicLong&lt;/a&gt; to manage your class's state&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;RACE CONDITIONS&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Commonly found in check-then-act where a potentially stale observation is used to make a decision on what to do next.&lt;/li&gt;&lt;/ul&gt; &lt;ul&gt;&lt;li&gt;example of check-then-act: &lt;span&gt;LAZY INITIALIZATION&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;          &lt;span style="font-family:Verdana;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BAD:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private ExpensiveObject instance = null;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public ExpensiveObject getInstance() {&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (instance == null) &lt;span style="font-family:times new roman;"&gt;// this line can be executed by two threads at the same time and two ExpensiveObjects will get&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;           &lt;span style="font-family:courier new;"&gt;&lt;span style="font-family:times new roman;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// newed. That will make getInstance() return two different intances &lt;/span&gt;&lt;/span&gt;      &lt;span style="font-family:courier new;"&gt;     &lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;  instance = new ExpensiveObject();&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return instance;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-2084598516463982340?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/2084598516463982340/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=2084598516463982340' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2084598516463982340'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2084598516463982340'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/java-concurrency-in-practice-part-1.html' title='Java Concurrency In Practice (Part 1)'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-8066182973364028508</id><published>2009-02-25T22:24:00.000-08:00</published><updated>2009-04-13T13:25:26.204-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='beer'/><category scheme='http://www.blogger.com/atom/ns#' term='frustration'/><title type='text'>I Need a Beer</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaY6IS677AI/AAAAAAAAFPs/c9lFd_sgSTw/s1600-h/DSC_0018.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaY6IS677AI/AAAAAAAAFPs/c9lFd_sgSTw/s320/DSC_0018.JPG" alt="" id="BLOGGER_PHOTO_ID_5306993125095107586" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;That was my &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;IM&lt;/span&gt; status yesterday. Few minutes later, a co-worker who had a sympathetic concern for my misery shows up giving me a chilled bottle of beer. Why was I miserable? That is not important any more. I have my beer now and can look at it every day and smile. It goes well with all the other &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;googley&lt;/span&gt; trinkets (or as I say "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;trinklets&lt;/span&gt;") on my desk.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-8066182973364028508?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/8066182973364028508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=8066182973364028508' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8066182973364028508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8066182973364028508'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/i-need-beer.html' title='I Need a Beer'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ODq6UoGYnB4/SaY6IS677AI/AAAAAAAAFPs/c9lFd_sgSTw/s72-c/DSC_0018.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-2658301713898720116</id><published>2009-02-24T00:37:00.000-08:00</published><updated>2009-02-25T23:05:43.750-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='succulent'/><category scheme='http://www.blogger.com/atom/ns#' term='colorful'/><category scheme='http://www.blogger.com/atom/ns#' term='luscious'/><category scheme='http://www.blogger.com/atom/ns#' term='lively'/><category scheme='http://www.blogger.com/atom/ns#' term='Google colors'/><category scheme='http://www.blogger.com/atom/ns#' term='plant'/><category scheme='http://www.blogger.com/atom/ns#' term='green'/><title type='text'>So Much Color!!!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaOx9kPtUzI/AAAAAAAAFPE/h6sNImsuc74/s1600-h/DSC_0036.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 213px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaOx9kPtUzI/AAAAAAAAFPE/h6sNImsuc74/s320/DSC_0036.JPG" alt="" id="BLOGGER_PHOTO_ID_5306280457232274226" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SaOyPlUYU9I/AAAAAAAAFPM/XBuEcYQE1Z4/s1600-h/DSC_0026.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SaOyPlUYU9I/AAAAAAAAFPM/XBuEcYQE1Z4/s320/DSC_0026.JPG" alt="" id="BLOGGER_PHOTO_ID_5306280766757950418" border="0" /&gt;&lt;/a&gt;A succulent from our patio, and a photo of a front cover of Dwell Magazine (the best design magazine out there). Love the blueberries.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-2658301713898720116?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/2658301713898720116/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=2658301713898720116' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2658301713898720116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2658301713898720116'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/so-much-color.html' title='So Much Color!!!'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ODq6UoGYnB4/SaOx9kPtUzI/AAAAAAAAFPE/h6sNImsuc74/s72-c/DSC_0036.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-6843950162322427720</id><published>2009-02-24T00:07:00.000-08:00</published><updated>2009-02-24T22:43:20.542-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='death'/><category scheme='http://www.blogger.com/atom/ns#' term='short'/><category scheme='http://www.blogger.com/atom/ns#' term='life'/><category scheme='http://www.blogger.com/atom/ns#' term='fate'/><category scheme='http://www.blogger.com/atom/ns#' term='sad'/><category scheme='http://www.blogger.com/atom/ns#' term='miscarriage'/><title type='text'>Life Is So Perishable</title><content type='html'>Today was an interesting day. I got a call around 8pm from a friend who was freaking out. He just chatted with a girl over IM, and she IMed him that she does not feel well, and is considering calling an ambulance. Few minutes later, she is leaving the chat, and giving my friend a phone number where he can reach her at. So he called. Someone else picked up and told my friend that the owner of the cell phone is laying on an operating table, cut open, having her uterus removed. She was recovering from a miscarriage for three days before this happened. I do not know if she is still allive. I get home and my &lt;a href="http://bradfordcross.blogspot.com/"&gt;Bradfordik&lt;/a&gt; tells me his grandma just died. We lit a candle and looked at it.&lt;br /&gt;&lt;br /&gt;An Update: The girl died. She was 26.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-6843950162322427720?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/6843950162322427720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=6843950162322427720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/6843950162322427720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/6843950162322427720'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/life-is-shorter-than-we-all-think.html' title='Life Is So Perishable'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-3238779675216327360</id><published>2009-02-22T12:13:00.000-08:00</published><updated>2009-02-22T16:03:39.999-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eames'/><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='miniature chairs'/><category scheme='http://www.blogger.com/atom/ns#' term='Google colors'/><category scheme='http://www.blogger.com/atom/ns#' term='many chairs'/><title type='text'>Eames Chair Extravaganza</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaHRfVpIWoI/AAAAAAAAFN0/hJ-TRAhBtGI/s1600-h/eames_lounge_chair.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaHRfVpIWoI/AAAAAAAAFN0/hJ-TRAhBtGI/s320/eames_lounge_chair.JPG" alt="" id="BLOGGER_PHOTO_ID_5305752172334963330" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SaG0GfeWq3I/AAAAAAAAFM0/Ghpe5C-nkJE/s1600-h/chair_band_2.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 217px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SaG0GfeWq3I/AAAAAAAAFM0/Ghpe5C-nkJE/s320/chair_band_2.JPG" alt="" id="BLOGGER_PHOTO_ID_5305719859640183666" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ODq6UoGYnB4/SaGyJokESbI/AAAAAAAAFMk/X8vwQoCLfuU/s1600-h/chair_band.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 214px; height: 320px;" src="http://2.bp.blogspot.com/_ODq6UoGYnB4/SaGyJokESbI/AAAAAAAAFMk/X8vwQoCLfuU/s320/chair_band.JPG" alt="" id="BLOGGER_PHOTO_ID_5305717714596415922" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaHRY3rGwNI/AAAAAAAAFNs/KAyGAFWaE7M/s1600-h/yellow_eames_correct_white_balance.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaHRY3rGwNI/AAAAAAAAFNs/KAyGAFWaE7M/s320/yellow_eames_correct_white_balance.JPG" alt="" id="BLOGGER_PHOTO_ID_5305752061210968274" border="0" /&gt;&lt;/a&gt;My chairs formed a rock band (with the yellow chair as a lead singer, and therefore in the forefront). The picture with white backdrop is called "Chairs on a chair", since I took it on my white lacquered &lt;a href="http://www.chiasso.com/assets/items/120-3735_10666.jpg"&gt;scoop chair&lt;/a&gt; from Chiasso. When I was buying it, I had no idea it would double-serve as a studio. This time, I used a correct white balance (for incandescent light). I have no idea what "incandescent" means, but the icon next to it looks like a regular light bulb, and it did work as expected, so I am sticking with "incandescent" when shooting at my desk. :) Two of these were taken on the top of my &lt;a href="http://www.apartmenttherapy.com/images/uploads/7-19-west-elm-desk.jpg"&gt;green west elm desk&lt;/a&gt; under the light of the &lt;a href="http://2.bp.blogspot.com/_XGRz6uWGK3I/SQSVEcCm7fI/AAAAAAAAF-s/4XNNxUwPjHs/s400-R/19056_PE104345_S4.jpg"&gt;IKEA desk lamp&lt;/a&gt;. I used a set aperture F5.6 (the widest my lens allows), and left the rest except for the focus on the auto. I think this should be the last chair photoshoot, since these little chairs got more than 15 minutes of fame already.&lt;br /&gt;I toured my home today and found a number of colorful surfaces that will make a great backdrop. I am especially excited about my deep &lt;a href="http://4.bp.blogspot.com/_CRI6VijMMhc/R92gIU9jHmI/AAAAAAAAAmI/r2CQXagyQ8k/s320/parsons%2Bcube%2Bside%2Btable.jpg"&gt;orange lacquered coffee tables&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-3238779675216327360?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/3238779675216327360/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=3238779675216327360' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3238779675216327360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3238779675216327360'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/google-colors.html' title='Eames Chair Extravaganza'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ODq6UoGYnB4/SaHRfVpIWoI/AAAAAAAAFN0/hJ-TRAhBtGI/s72-c/eames_lounge_chair.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-5994706133031229140</id><published>2009-02-20T23:09:00.000-08:00</published><updated>2009-02-26T01:10:54.051-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dog'/><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='walk'/><category scheme='http://www.blogger.com/atom/ns#' term='nikon D60'/><category scheme='http://www.blogger.com/atom/ns#' term='food'/><title type='text'>The Day After -- First Signs of Lens Envy</title><content type='html'>I am getting comfortable with the new Nikon, and attended our weekly Photo Friday -- this time as a photographer. It was getting dark, and &lt;a href="http://www.flickr.com/photos/polvero/3296917478/"&gt;six of us&lt;/a&gt; went wandering around Googleplex looking for things to shoot. I realized what it means to have a great lens, since I was not able to take the same kind of photos as people with F1.2 aperture. The ability to take an amazing detail with a shallow depth of field is something I really want now =&gt; and here starts the expensive hobby. Time to start learning about photography. A good start can be a new&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ-sLGDIpMI/AAAAAAAAFMM/WzQlC874v38/s1600-h/Rooroo.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ-sLGDIpMI/AAAAAAAAFMM/WzQlC874v38/s320/Rooroo.JPG" alt="" id="BLOGGER_PHOTO_ID_5305148192668034242" border="0" /&gt;&lt;/a&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SZ-qlmHs4jI/AAAAAAAAFLk/hS5OBhl1GoI/s1600-h/dave_by_the_google_sign.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SZ-qlmHs4jI/AAAAAAAAFLk/hS5OBhl1GoI/s320/dave_by_the_google_sign.JPG" alt="" id="BLOGGER_PHOTO_ID_5305146448930464306" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaHlKxGGM2I/AAAAAAAAFOE/rX1DjznD9Ns/s1600-h/hydrant.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SaHlKxGGM2I/AAAAAAAAFOE/rX1DjznD9Ns/s320/hydrant.JPG" alt="" id="BLOGGER_PHOTO_ID_5305773809159517026" border="0" /&gt;&lt;/a&gt;&lt;a href="http://photography.dustindiaz.com/blog/"&gt;blog&lt;/a&gt; Dustin just started.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SaHl2xlkmTI/AAAAAAAAFOM/gITs4IvC_Ho/s1600-h/tree_bloom.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SaHl2xlkmTI/AAAAAAAAFOM/gITs4IvC_Ho/s320/tree_bloom.JPG" alt="" id="BLOGGER_PHOTO_ID_5305774565205776690" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ODq6UoGYnB4/SaHlEK1nedI/AAAAAAAAFN8/d5v3G7jixno/s1600-h/evening_light.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://3.bp.blogspot.com/_ODq6UoGYnB4/SaHlEK1nedI/AAAAAAAAFN8/d5v3G7jixno/s320/evening_light.JPG" alt="" id="BLOGGER_PHOTO_ID_5305773695810632146" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ODq6UoGYnB4/SaHl_iK8WII/AAAAAAAAFOU/FbAyBwzc5e0/s1600-h/google_food.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 214px;" src="http://2.bp.blogspot.com/_ODq6UoGYnB4/SaHl_iK8WII/AAAAAAAAFOU/FbAyBwzc5e0/s320/google_food.JPG" alt="" id="BLOGGER_PHOTO_ID_5305774715686377602" border="0" /&gt;&lt;/a&gt;The first picture shows Roo Roo, our two-color eyed office dog (who is mostly still and therefore easy to shoot), the second one shows &lt;a href="http://flickr.com/photos/siliconmonkey"&gt;Dave&lt;/a&gt;, the third one is a top of a hydrant, followed by a blooming tree. The fifth one is a nightlamp at the Googleplex, and finally my lunch at a company cafeteria (truffle oil mac-n-cheese, dried fruit wild rice, brussels sprouts with mushrooms, and grilled zuchinni.... yum yum). One of the main reason I got this camera was to shoot food. I have some poor attempts &lt;a href="http://picasaweb.google.com/zaskodnik/OurCulinaryCreations#"&gt;here&lt;/a&gt;, but with the new camera, the future is hopeful and bright. The first food picture taken by my SLR is way better than any of the food pictures I ever took. Bon Apetit Magazine, beware!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SZ-qVPd2kqI/AAAAAAAAFLc/7ONPBR4LT_E/s1600-h/yellow_chair.JPG"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-5994706133031229140?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/5994706133031229140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=5994706133031229140' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5994706133031229140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/5994706133031229140'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/day-after-first-signs-of-lens-envy.html' title='The Day After -- First Signs of Lens Envy'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ-sLGDIpMI/AAAAAAAAFMM/WzQlC874v38/s72-c/Rooroo.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-3257282034253674951</id><published>2009-02-19T21:29:00.000-08:00</published><updated>2009-02-19T21:54:56.292-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eames'/><category scheme='http://www.blogger.com/atom/ns#' term='herman miller'/><category scheme='http://www.blogger.com/atom/ns#' term='chair'/><category scheme='http://www.blogger.com/atom/ns#' term='yellow'/><title type='text'>The Day Of</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Ek_cGTPI/AAAAAAAAFKU/e7-1c9DT5qk/s1600-h/DSC_0012.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 214px;" src="http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Ek_cGTPI/AAAAAAAAFKU/e7-1c9DT5qk/s320/DSC_0012.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5304752813384289522" /&gt;&lt;/a&gt;&lt;br /&gt;Here is the first decent picture I took today with the newly arrived Nikon D60. The very first picture was a fuzzy mess, not worth the screen real estate. I read up on the basics, and took few shots of my miniature chair collection. They turned out great, looking way bigger than they really are.&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;This baby is a Herman Miller Eames chair. One day, I will have the real thing, but the small one suffices for now.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-3257282034253674951?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/3257282034253674951/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=3257282034253674951' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3257282034253674951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3257282034253674951'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/nikon-arrived.html' title='The Day Of'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Ek_cGTPI/AAAAAAAAFKU/e7-1c9DT5qk/s72-c/DSC_0012.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-3064240842460820232</id><published>2009-02-18T22:39:00.001-08:00</published><updated>2009-02-22T16:05:15.307-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photography'/><category scheme='http://www.blogger.com/atom/ns#' term='camera'/><category scheme='http://www.blogger.com/atom/ns#' term='anticipating'/><category scheme='http://www.blogger.com/atom/ns#' term='nikon D60'/><title type='text'>The Day Before</title><content type='html'>Today is the day before I get my first SLR camera -- Nikon D60. I am anxiously awaiting the little gem of technology to arrive tomorrow. If it won't come, Petiatko will be very very sad.&lt;br /&gt;I will put it to use this Friday, at the next &lt;a href="http://www.flickr.com/photos/polvero/3261443556/"&gt;Photo Friday&lt;/a&gt; which we plan to do at the museum (after hours). Stay tuned for more about my little D60. Any suggestions on how should I name this new baby?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-3064240842460820232?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/3064240842460820232/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=3064240842460820232' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3064240842460820232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/3064240842460820232'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/day-before.html' title='The Day Before'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-2949555364126096198</id><published>2009-02-17T23:25:00.000-08:00</published><updated>2009-02-27T23:14:43.934-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='one lesson'/><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='simple'/><category scheme='http://www.blogger.com/atom/ns#' term='taxes'/><category scheme='http://www.blogger.com/atom/ns#' term='bureaucracy'/><title type='text'>Economics in One Lesson</title><content type='html'>Henry Hazlitt wrote &lt;a href="http://jim.com/econ/chap01p1.html"&gt;this&lt;/a&gt; book more than 30 years ago and it still keeps selling. I loved hearing (this was an audio book) his rants about bureaucracy, and wished I heard this book before my previous post.&lt;br /&gt;&lt;br /&gt;Basically, Henry points out that every government intervention into the natural flow of the economy causes more harm than good and hurts the economy beyond what we usually imagine. He explained this on a number of examples:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;you never get anything for nothing =&gt; if you give money to some group, it means you took it from some other group, thus discriminating that other group&lt;br /&gt;&lt;/li&gt;&lt;li&gt;cost of armed forces during the war and during the peace =&gt; army employees are living on money we (taxpayers) earned by being productive and yet they are not producing anything =&gt; as a result the whole country is less productive&lt;br /&gt;&lt;/li&gt;&lt;li&gt;impact of the controlled rent and its impact on the housing industry =&gt; builders not incentivised to build in areas with controlled rent, landlords unable to maintain and often abandon their buildings =&gt; people not utilizing the space economically (to keep the apartment, they are less likely to move into a more appropriately sized apartment as their families grow or shrink) =&gt; other people unable to live in the location with controlled rent since all apartments are taken (lack of price bidding for the space)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;worker unions and minimum wage rules =&gt; demanding wages higher than is the market price of their work =&gt; results in shrinkage of businesses and higher prices of products =&gt; results in less money in people's pockets =&gt; results in less money spent =&gt; results in less businesses coming to existence&lt;br /&gt;&lt;/li&gt;&lt;li&gt;import tariffs =&gt; forcing higher than free market price =&gt; making Americans pay more for the same item (eg: sweater) compared to the imported one =&gt; results in helping one American industry (such as sweater makers) at the expense of many other industries (where people would have spent their extra money which would be the sweater cost minus tariff)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;over-taxing people == forcefully taking money people earned and giving them to the groups with the best lobbyists. This is not to be confused with the taxing that is necessary to keep the society protected (firefighters, police), organized (judges, DMV), etc.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;import equals export =&gt; increased import means increased export and vice versa. There is no way we can only increase export, since we would end up with too much foreign currency which we can not use in the US.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;impact of fixed under-market pricing =&gt; more demand for cheap items =&gt; but less companies interested in producing goods that sell at a loss &lt;/li&gt;&lt;li&gt;other harmful effects of bureaucracy&lt;/li&gt;&lt;/ul&gt; Why isn't this book a required high school reading?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-2949555364126096198?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/2949555364126096198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=2949555364126096198' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2949555364126096198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2949555364126096198'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/economics-in-one-lesson.html' title='Economics in One Lesson'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-8779555806421630430</id><published>2009-02-09T19:18:00.000-08:00</published><updated>2009-02-09T19:40:54.900-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bank'/><category scheme='http://www.blogger.com/atom/ns#' term='bureaucracy'/><title type='text'>What Is a Bureaucracy?</title><content type='html'>I was just reading an article posted by a friend of mine, who is settling in Madrid for a year and goes through a series of bureaucratic steps to get all the permits, bank accounts, approvals, etc.&lt;br /&gt;&lt;br /&gt;This reminded me of an experience of my own, it was with Bank of America and happened about 4 years ago. About 8 years ago, I opened an account with Bank of America using two of my IDs I had at that time: Slovak driver's license, and Slovak passport.&lt;br /&gt;Fast forward 4 years and I am at the same bank, asking to cancel my account. I provide my California driver's license and my ATM card (with my photo on it!!!). The clerk refuses to close my account unless I bring at least one of the two IDs I used to open the account with.&lt;br /&gt;Slovak license was expired (and God knows where), and the Slovak passport was replaced by a new one, one with a different passport number. I brought the new passport to the banking center, and was rejected again. The clerk claimed it is not possible that one person has two passport numbers. Apparently they were not aware of Slovak customs.&lt;br /&gt;&lt;br /&gt;The ironic part is that I could withdraw all the cash, but I could not close an empty account. And that is what I did. I took all my money and informed the bank that I do not plan to pay for any fees that will be deducted from an empty account.&lt;br /&gt;&lt;br /&gt;I was not that lucky with Tatra Banka (Slovak bank), that kept deducting monthly fees on my canceled account. I kept emailing them, calling them, and they refused to re-cancel already canceled account unless I show up in person or have an authorized person show up in my name. To get the authorization, I would have to involve US and Slovak notary services, make my mom waste her time and gas money, and do all this to fix something that was not even my mistake. So I refused. The account is probably still there, and I have no intention to deal with it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;So what is Bureaucracy?&lt;/span&gt;&lt;br /&gt;I think bureaucracy is a result of allowing uneducated and/or poorly trained people perform their jobs. All they need to do is to follow rules someone else made up. These rules were not made from an experience, and therefore often do not make any sense. But these people follow them because they have to and because they do not think on their own and fight the nonsense. And this will never change.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-8779555806421630430?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/8779555806421630430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=8779555806421630430' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8779555806421630430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8779555806421630430'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/what-is-bureaucracy.html' title='What Is a Bureaucracy?'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-9092740754141251269</id><published>2009-02-08T23:20:00.001-08:00</published><updated>2009-02-19T22:06:42.975-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='munchen'/><category scheme='http://www.blogger.com/atom/ns#' term='munich'/><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='pet'/><category scheme='http://www.blogger.com/atom/ns#' term='pee'/><category scheme='http://www.blogger.com/atom/ns#' term='airport'/><category scheme='http://www.blogger.com/atom/ns#' term='animal'/><category scheme='http://www.blogger.com/atom/ns#' term='pet relief'/><category scheme='http://www.blogger.com/atom/ns#' term='flying'/><title type='text'>Peace on you!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ODq6UoGYnB4/SZ5IaxR9KWI/AAAAAAAAFKc/qlqV7NGh83o/s1600-h/IMG_1946.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_ODq6UoGYnB4/SZ5IaxR9KWI/AAAAAAAAFKc/qlqV7NGh83o/s320/IMG_1946.JPG" alt="" id="BLOGGER_PHOTO_ID_5304757035831470434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I am planning to travel with Fluffy later this year, and was excited to fly through one of my favorite and very efficient airports -- Munich Airport. I could not find any information about animal relief areas at this airport, so I sent an email to their customer service folks who replied that there are no animal relief areas at any of their terminals. Apparently, I have to leave the security area to get outside of the airport if my pet (who would be already eager to pee after waiting for 2 hours before flight + 12 hours of the actual flight) needs to go. I am very disappointed. I will probably end up finding a large planter in one of the airport halls and encourage Fluffy to water the indoor plants. Peace on you Munich Airport!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-9092740754141251269?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/9092740754141251269/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=9092740754141251269' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/9092740754141251269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/9092740754141251269'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/munich-airport-is-not-pet-friendly.html' title='Peace on you!'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ODq6UoGYnB4/SZ5IaxR9KWI/AAAAAAAAFKc/qlqV7NGh83o/s72-c/IMG_1946.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-8260785126612648048</id><published>2009-02-08T18:51:00.001-08:00</published><updated>2009-12-27T10:21:13.437-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RPC'/><category scheme='http://www.blogger.com/atom/ns#' term='mock'/><category scheme='http://www.blogger.com/atom/ns#' term='GWT'/><category scheme='http://www.blogger.com/atom/ns#' term='GWT test'/><category scheme='http://www.blogger.com/atom/ns#' term='fake'/><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><category scheme='http://www.blogger.com/atom/ns#' term='flaky'/><category scheme='http://www.blogger.com/atom/ns#' term='asynchronous'/><title type='text'>Getting Rid of Flakiness in GWT RPC Tests</title><content type='html'>&lt;div&gt;To avoid flaky RPC testing in GWT tests, use fake service implementation which you inject directly into the constructor of your custom widget. There will be no delays, and you will be in complete control.&lt;br /&gt;&lt;br /&gt;&lt;table id="vt6g" class="zeroBorder" border="0" cellpadding="3" cellspacing="0" width="800"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: left;" width="50%"&gt;&lt;b&gt;with real service&lt;/b&gt;&lt;/td&gt;&lt;td style="text-align: left;" width="50%"&gt;&lt;b&gt;with injected fake service&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="50%"&gt;public void testSomethingHappened() {&lt;br /&gt; CustomWidget w = new CustomWidget();&lt;br /&gt; w.doSomethingThatTriggersRpcCall();&lt;br /&gt;&lt;br /&gt; Timer timer = new Timer() {&lt;br /&gt;   public void run() {&lt;br /&gt;     assertTrue(widget.somethingHappened());&lt;br /&gt;     finishTest();&lt;br /&gt;   }&lt;br /&gt; };&lt;br /&gt; timer.schedule(200);&lt;br /&gt; delayTestFinish(500);&lt;br /&gt;}&lt;/td&gt;&lt;td width="50%"&gt;public void testSomethingHappened() {&lt;br /&gt; &lt;span style="background-color: rgb(255, 229, 153);"&gt;Service fake = new FakeService()&lt;/span&gt;;&lt;br /&gt; CustomWidget w =&lt;br /&gt;       new CustomWidget(&lt;span style="background-color: rgb(255, 229, 153);"&gt;fake&lt;/span&gt;);&lt;br /&gt; w.doSomethingThatTriggersRpcCall();&lt;br /&gt; assertTrue(widget.somethingHappened());&lt;br /&gt;}&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-8260785126612648048?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/8260785126612648048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=8260785126612648048' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8260785126612648048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8260785126612648048'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/02/untitled.html' title='Getting Rid of Flakiness in GWT RPC Tests'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-1714156500328543426</id><published>2009-01-27T23:14:00.000-08:00</published><updated>2009-12-27T00:13:20.451-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='GWT'/><category scheme='http://www.blogger.com/atom/ns#' term='test data'/><category scheme='http://www.blogger.com/atom/ns#' term='GWT test'/><category scheme='http://www.blogger.com/atom/ns#' term='persistence'/><category scheme='http://www.blogger.com/atom/ns#' term='data store'/><title type='text'>Populating Test Data for GWT Tests</title><content type='html'>Sometimes you need to test GWT code that expects to find data in the data store. This approach might work:&lt;br /&gt;&lt;br /&gt;In &lt;span style="font-family:courier new;"&gt;gwtSetUp()&lt;/span&gt; create the data (&lt;span style="font-family:courier new;"&gt;someData&lt;/span&gt;) you want to persist and call &lt;span style="font-family:courier new;"&gt;persist(someData)&lt;/span&gt; which would look like the following:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;/** Helper method to put data into data store prior to test run. */&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;private void persist(SomeThing someData) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; SomeServiceAsync someSvc = GWT.create(SomeService.class);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; AsyncCallback&lt;/span&gt;&lt;boolean&gt;&lt;span style="font-family:courier new;"&gt; callback = new AsyncCallback&lt;/span&gt;&lt;boolean&gt;&lt;span style="font-family:courier new;"&gt;() {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  public void onFailure(Throwable caught) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   fail("unable to store test data");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  public void onSuccess(Boolean success) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   if (success.equals(false)) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    fail("unable to store test data");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; };&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; // Make the call to the test service impl, passing in the callback object.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; // This is the same method you defined in the SomethingService interface&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; // that extends RemoteService and this method needs to be implemented in&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; // SomethingServiceImpl&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; someSvc.saveSomething(someData, callback);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; // Wait for it to persist.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; // Using Thread.sleep(200) would give compile errors.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; // Use gwt.user.client.Timer instead.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; Timer timer = new Timer() {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public void run() {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; };&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; timer.schedule(200);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/boolean&gt;&lt;/boolean&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-1714156500328543426?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/1714156500328543426/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=1714156500328543426' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/1714156500328543426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/1714156500328543426'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/populating-test-data-for-gwt-tests.html' title='Populating Test Data for GWT Tests'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-918350472409136820</id><published>2009-01-25T22:38:00.000-08:00</published><updated>2009-02-19T22:11:53.216-08:00</updated><title type='text'>Regular vs Underground Party</title><content type='html'>I was invited to go to a party in Oakland last Saturday. It is called "People's party" and my friends were raving about the great vibe you find at this place. So we went. Brad driving, me giving directions (thanks to my Google phone).&lt;br /&gt;&lt;br /&gt;We got there at 11pm (which is fairly early for clubbin) and the place was packed. It definitely exceeded the maximum allowed occupancy as it took us about 10 minutes to squeeze through people to get to the back room and to the patio. People were friendly, dancing to African music, eating African food and drinking tea (which I loved) in addition to the standard bar drinks. You could smell some weed in the air, and everyone was taking it easy. So my friends were right, it does feel like a best friend's house party, but with 10 times more people than is healthy.&lt;br /&gt;There were only two things wrong with this party:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;there was a line outside (Why do American clubs try to keep a visible line of people freezing their tails outside on the street? Is this a marketing strategy? Can someone explain why you do not see any lines in clubs outside of the US?)&lt;/li&gt;&lt;li&gt;everybody knew about it and everybody went there =&gt; there was absolutely no space to dance&lt;/li&gt;&lt;/ul&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Jf7y2ADI/AAAAAAAAFKk/-6nfCdyx5NY/s1600-h/dance1.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 214px; height: 320px;" src="http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Jf7y2ADI/AAAAAAAAFKk/-6nfCdyx5NY/s320/dance1.jpg" alt="" id="BLOGGER_PHOTO_ID_5304758224064741426" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Sec&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;ond Chance&lt;/span&gt;&lt;br /&gt;It was 12:30 and we bailed out. Our Google phone came to the rescue again... we looked up another party that night... at the underground venue (you need to call a hotline to get the address). Q Burns (our favorite DJ) was playing and it was only few blocks from our loft in San Francisco! So we headed back through the Bay Bridge into the industrial neighborhood at the very south of SOMA.&lt;br /&gt;&lt;br /&gt;Finding underground parties requires a bit of patience. First drive to the place Google Maps arrow points to. Then get out of the car and start walking around carefully listening to warehouses. You will get to a door on the side of a dark warehouse. There is no line, no bouncers, no lights, no visible signs of anything happening. You know that you are at the right place because there is definitely a loud house music playing behind that door. You go in, and there is a handful of people who check your ID, take the cover, and let you in. The dancefloor is mostly dark. Few lights point at the bare walls of the warehouse, cars and machinery is moved to one side of the hall, and makeshift bar serves a limited selection of drinks. There is plenty of space for dancing and few dozen people are practicing their house dance routines. There is not stage, no go-go dancers, no posers, no skimpy dressed girls. Just you, them, great music, and great vibe.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-918350472409136820?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/918350472409136820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=918350472409136820' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/918350472409136820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/918350472409136820'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/poser-vs-underground-party.html' title='Regular vs Underground Party'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Jf7y2ADI/AAAAAAAAFKk/-6nfCdyx5NY/s72-c/dance1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-8736530582643004336</id><published>2009-01-24T21:17:00.000-08:00</published><updated>2009-12-27T00:15:36.497-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RPC'/><category scheme='http://www.blogger.com/atom/ns#' term='mock'/><category scheme='http://www.blogger.com/atom/ns#' term='GWT'/><category scheme='http://www.blogger.com/atom/ns#' term='fake'/><category scheme='http://www.blogger.com/atom/ns#' term='TestCase'/><category scheme='http://www.blogger.com/atom/ns#' term='ServiceImpl'/><category scheme='http://www.blogger.com/atom/ns#' term='service impl'/><category scheme='http://www.blogger.com/atom/ns#' term='unit test'/><category scheme='http://www.blogger.com/atom/ns#' term='implementation'/><category scheme='http://www.blogger.com/atom/ns#' term='GWTTestCase'/><title type='text'>Testing RPC in GWT</title><content type='html'>There is very little information about sticking with &lt;span style="font-family:courier new;"&gt;GWTTestCase&lt;/span&gt; (instead of &lt;span style="font-family:courier new;"&gt;TestCase&lt;/span&gt;) and using fake server-side service implementation.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Problem:&lt;/span&gt;&lt;br /&gt;You do not want to make any database-calls when your client-side tests run (when client-side tests make RPC calls to the service impl). You already have to live with crappy test speeds due to GWT test framework starting up an invisible hosted-mode browser to be able to execute JavaScript (that many widgets natively use) and you am too lazy to refactor your code to follow the &lt;a href="http://blog.springsource.com/2008/02/19/enabling-test-driven-development-in-gwt-client-code/"&gt;GWT using MVC model&lt;/a&gt; example (to be able to stop using &lt;span style="font-family:courier new;"&gt;GWTTestCase&lt;/span&gt;).&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Solution:&lt;/span&gt;&lt;br /&gt;Define a separate fake service implementation (&lt;span style="font-family:courier new;"&gt;TestServiceImpl&lt;/span&gt;) and a module for testing (&lt;span style="font-family:courier new;"&gt;TestModule.gwt.xml&lt;/span&gt;). Simply make a copy of the production module, and change the contents  of the &lt;span style="font-family:courier new;"&gt;&lt;servlet&gt;&lt;/servlet&gt;&lt;/span&gt; &lt;span style="font-family:courier new;"&gt;servlet path&lt;/span&gt; tag to point to your &lt;span style="font-family:courier new;"&gt;TestSeviceImpl&lt;/span&gt;. Then make sure your &lt;span style="font-family:courier new;"&gt;GWTTestCase&lt;/span&gt; specifies this module in its &lt;span style="font-family:courier new;"&gt;getModuleName()&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Voila! Tests run, they return expected values (either baked into &lt;span style="font-family:courier new;"&gt;TestServiceImpl&lt;/span&gt; or if you get fancy, your &lt;span style="font-family:courier new;"&gt;TestServiceImpl&lt;/span&gt; can implement a nice in-memory data store).&lt;br /&gt;You can now be confident that your asynchronous RPC mechanism works as intended and you can test the production &lt;span style="font-family:courier new;"&gt;ServiceImpl&lt;/span&gt; separately (using &lt;span style="font-family:courier new;"&gt;JUnit&lt;/span&gt;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-8736530582643004336?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/8736530582643004336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=8736530582643004336' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8736530582643004336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8736530582643004336'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/testing-rpc-in-gwt.html' title='Testing RPC in GWT'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-8770388679252285198</id><published>2009-01-23T18:55:00.000-08:00</published><updated>2009-01-24T22:05:17.461-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='2009'/><category scheme='http://www.blogger.com/atom/ns#' term='Gerald Celente'/><category scheme='http://www.blogger.com/atom/ns#' term='crysis'/><category scheme='http://www.blogger.com/atom/ns#' term='prediction'/><category scheme='http://www.blogger.com/atom/ns#' term='economy'/><title type='text'>Are you scared yet?</title><content type='html'>&lt;a href="http://www.youtube.com/results?search_type=&amp;amp;search_query=gerald+celente"&gt;Gerald Celente&lt;/a&gt; predicts a major economic depression, tax rebellions, food riots, and by 2012 people will worry about food for Christmas rather than gifts. He predicts that local governments will keep raising taxes to get as much money from public as possible.&lt;br /&gt;Soon, people will have food-producing gardens, and the only thing that can save us must be comparable to an invention of the wheel. He predicts revolutionary advances in renewable energy technologies, medical science, and a shift towards holistic healing practices and a crash of the overpriced college education system.&lt;br /&gt;&lt;br /&gt;So buy some gold and then dust off your gardening gear and plant some food!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-8770388679252285198?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/8770388679252285198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=8770388679252285198' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8770388679252285198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8770388679252285198'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/are-you-scared-yet.html' title='Are you scared yet?'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-48810753549150421</id><published>2009-01-23T17:42:00.000-08:00</published><updated>2009-01-27T23:01:30.685-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='new Guice'/><category scheme='http://www.blogger.com/atom/ns#' term='Guice'/><category scheme='http://www.blogger.com/atom/ns#' term='1.0'/><title type='text'>Guice 1.0 vs 2.0</title><content type='html'>The &lt;a href="http://code.google.com/p/google-guice/wiki/Changes20"&gt;Guice 2.0 &lt;/a&gt;contains lots of neat improvements. It removes lots of unnecessary boilerplate and allows to write more compact Guice modules. Here is an example of how a confusing binding  can be refactored into a simple provider method.&lt;br /&gt;&lt;br /&gt;Example using Guice 1.0:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;@Override&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; protected void configure() {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  bind(new TypeLiteral&amp;lt;List&amp;lt;string&amp;gt;&amp;gt;(){})&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;nbsp;&amp;nbsp;.annotatedWith(TagsToProcess.class)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;nbsp;&amp;nbsp;.toProvider(TagsProvider.class);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The same example using Guice 2.0:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;@Provides @TagsToProcess&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; public List&amp;lt;string&amp;gt; provideTags(&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;@Named("tags") String tags) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;nbsp;&amp;nbsp;return ImmutableList.of(StringUtil.splitAndTrim(tags, ","));&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  }&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-48810753549150421?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/48810753549150421/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=48810753549150421' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/48810753549150421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/48810753549150421'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/guice-10-vs-20.html' title='Guice 1.0 vs 2.0'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-8811496584476926634</id><published>2009-01-22T00:55:00.001-08:00</published><updated>2009-01-24T22:14:31.688-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comparison'/><category scheme='http://www.blogger.com/atom/ns#' term='versus'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='easymock'/><category scheme='http://www.blogger.com/atom/ns#' term='unit testing framework'/><category scheme='http://www.blogger.com/atom/ns#' term='jmock'/><title type='text'>JMock vs EasyMock Smackdown</title><content type='html'>Lets see which of the two popular Java test object mocking tools is more straightforward. Cast your vote! (in comments)&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;table class="zeroBorder" id="rnl9" border="0" cellpadding="3" cellspacing="0" width="750"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="background-color: rgb(249, 203, 156);"&gt;&lt;span style="font-size:130%;"&gt;&lt;b&gt;with jMock&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color: rgb(249, 203, 156);"&gt;&lt;span style="font-size:130%;"&gt;&lt;b&gt;with EasyMock&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(255, 242, 204);"&gt;&lt;b&gt;you need to import&lt;/b&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="background-color: rgb(255, 242, 204);"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;import org.jmock.Expectations;&lt;/td&gt;&lt;td valign="top"&gt;import static org.easymock.classextension.&lt;br /&gt; EasyMock.createMock;&lt;br /&gt;import static org.easymock.classextension.&lt;br /&gt; EasyMock.expect;&lt;br /&gt;import static org.easymock.classextension.&lt;br /&gt; EasyMock.expectLastCall;&lt;br /&gt;import static org.easymock.classextension.&lt;br /&gt; EasyMock.replay;&lt;br /&gt;import static org.easymock.classextension.&lt;br /&gt; EasyMock.verify;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;b&gt;your test class needs to extend&lt;/b&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;MockObjectTestCase&lt;/td&gt;&lt;td valign="top"&gt;TestCase&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;b&gt;in setUp() method&lt;/b&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;mockedThing = mock(SomeInterface.class)&lt;/td&gt;&lt;td valign="top"&gt;mockedThing = createMock(SomeInterface.class)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;b&gt;to set expectations&lt;/b&gt;&lt;/td&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;checking(&lt;br /&gt;new Expectations() {{&lt;br /&gt; // this run does not throw&lt;br /&gt; one(mockedThing).run();&lt;br /&gt;&lt;br /&gt; // expect an exception&lt;br /&gt; one(mockedThing).run();&lt;br /&gt; will(throwException(new RuntimeException());&lt;br /&gt;&lt;br /&gt; // expect multiple runs&lt;br /&gt; exactly(4).of(mockedThing).getBlah();&lt;br /&gt;}});&lt;/td&gt;&lt;td valign="top"&gt;// since run() returns void&lt;br /&gt;expect(mockedThing.run());&lt;br /&gt;&lt;br /&gt;// or if the method returns non-void&lt;br /&gt;expect(mockedThing.execute(SOMETHING))&lt;br /&gt; .andReturns(SOMETHING_ELSE);&lt;br /&gt;&lt;br /&gt;// expect an exception&lt;br /&gt;mockedThing.run();expectLastCall().times(1).&lt;br /&gt;&lt;br /&gt; andThrow(new RuntimeException());&lt;br /&gt;&lt;br /&gt;// expect multiple runs&lt;br /&gt;mockedThing.run();expectLastCall().times(1);&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;b&gt;to put into replay mode&lt;/b&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;N/A&lt;br /&gt;&lt;/td&gt;&lt;td valign="top"&gt;replay(mockedThing);&lt;br /&gt;// only after this call the mock is usable&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;b&gt;to use the mock in tests&lt;/b&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;RealThing realThing = new RealThing(mockedThing);&lt;br /&gt;&lt;br /&gt;// this will call the mocked thing at some point&lt;br /&gt;realThing.doSomething();&lt;/td&gt;&lt;td valign="top"&gt;RealThing realThing = new RealThing(mockedThing);&lt;br /&gt;&lt;br /&gt;// this will call the mocked thing at some point&lt;br /&gt;realThing.doSomething();&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;b&gt;to verify mock&lt;/b&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;N/A&lt;br /&gt;&lt;/td&gt;&lt;td valign="top"&gt;verify(mockedThing);&lt;br /&gt;// if you forget this, you will not know if the&lt;br /&gt;// expectations were fulfilled&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;b&gt;thread safe&lt;/b&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="background-color: rgb(255, 242, 204);" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;???&lt;br /&gt;&lt;/td&gt;&lt;td valign="top"&gt;mockedThing is not thread-safe.... use this&lt;br /&gt;to make it so:&lt;br /&gt;makeThreadSafe(mockedThing, true);&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-8811496584476926634?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/8811496584476926634/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=8811496584476926634' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8811496584476926634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8811496584476926634'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/untitled.html' title='JMock vs EasyMock Smackdown'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-30419562809570469</id><published>2009-01-19T22:39:00.001-08:00</published><updated>2009-02-19T22:16:42.122-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lesbian'/><category scheme='http://www.blogger.com/atom/ns#' term='proposition'/><category scheme='http://www.blogger.com/atom/ns#' term='rights'/><category scheme='http://www.blogger.com/atom/ns#' term='prop 8'/><category scheme='http://www.blogger.com/atom/ns#' term='love'/><category scheme='http://www.blogger.com/atom/ns#' term='gay'/><category scheme='http://www.blogger.com/atom/ns#' term='same sex'/><category scheme='http://www.blogger.com/atom/ns#' term='marriage'/><title type='text'>Who supported prop 8</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ODq6UoGYnB4/SZ5Ku5Dw9kI/AAAAAAAAFKs/K9IBNGjfnSk/s1600-h/IMG_0427.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_ODq6UoGYnB4/SZ5Ku5Dw9kI/AAAAAAAAFKs/K9IBNGjfnSk/s320/IMG_0427.JPG" alt="" id="BLOGGER_PHOTO_ID_5304759580540073538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.eightmaps.com/"&gt;eightmaps.com&lt;/a&gt; is a nice mashup of Google maps and prop 8 supporters. Zoom in to Castro and there he is -- a retired man who donated $300 to support prop 8. Seeing no prop 8 supporters in my neighborhood makes me feel warm and fuzzy about choosing the Mission to be my hood.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-30419562809570469?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/30419562809570469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=30419562809570469' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/30419562809570469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/30419562809570469'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/who-supported-prop-8.html' title='Who supported prop 8'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ODq6UoGYnB4/SZ5Ku5Dw9kI/AAAAAAAAFKs/K9IBNGjfnSk/s72-c/IMG_0427.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-6900015474425215667</id><published>2009-01-04T11:56:00.000-08:00</published><updated>2009-01-24T22:09:26.203-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tourism'/><category scheme='http://www.blogger.com/atom/ns#' term='europe'/><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='rome'/><category scheme='http://www.blogger.com/atom/ns#' term='tourist trap'/><category scheme='http://www.blogger.com/atom/ns#' term='italy'/><title type='text'>Tourist Trap</title><content type='html'>&lt;span style="font-style: italic;"&gt;Per &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;wikipedia&lt;/span&gt;:&lt;br /&gt;A &lt;/span&gt;&lt;b style="font-style: italic;"&gt;tourist trap&lt;/b&gt;&lt;span style="font-style: italic;"&gt; is an establishment, or group of establishments, that has been created with the aim of attracting tourists &lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;and&lt;/span&gt; their money. Tourist traps will typically provide services, entertainment, souvenirs and other products for tourists to purchase, and these will often be at inflated prices (compared to the local economy).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The first thing we did in Italy was buying 2 train tickets from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Fiumicino&lt;/span&gt; airport to Termini station. The ticket booth employee charged me 22 euros, took 50 euro bill and returned 18 euros. I asked for the other 10 euro, he looked at me disappointed and gave me my money. It seems like he is making good money this way, as there are many travelers that do not look twice at the change they get.&lt;br /&gt;&lt;br /&gt;Another tourist trap we visited was a small restaurant in front of a hotel Alexandra about a block from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Barberini&lt;/span&gt; square. This small restaurant called Alex cafe had a nice menu, professional looking staff, looking like a good place to eat at. We ordered 5.5 euro tea, 2 salads, some seafood pasta and mushroom risotto. The seafood stunk badly, and risotto was undercooked. We ate the salads, returned the main dishes and asked for a check. We ended up paying 35 Euro (plus tip) for the mediocre salads and a tea and headed out.&lt;br /&gt;&lt;br /&gt;We then got an advice from a local who recommended we eat at &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Trastevere&lt;/span&gt; neighbourhood of Rome where locals hang out. We ate there twice, loved the food, ate a lot of it, and always payed 32 euros or less for 2 multi-course meals (salad, mussels, tea, beer, main dishes). The mussels are the best in Rome, they are served in a garlic sauce and they are to die for. The roasted &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;chestnuts&lt;/span&gt; sold on the streets are also the best I had. They peel of easily and taste very sweet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-6900015474425215667?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/6900015474425215667/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=6900015474425215667' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/6900015474425215667'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/6900015474425215667'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/tourist-trap.html' title='Tourist Trap'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-2007951580660818329</id><published>2009-01-04T11:23:00.000-08:00</published><updated>2009-02-19T22:24:44.771-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tourism'/><category scheme='http://www.blogger.com/atom/ns#' term='delayed luggage'/><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='lost luggage'/><category scheme='http://www.blogger.com/atom/ns#' term='airport'/><category scheme='http://www.blogger.com/atom/ns#' term='AA'/><category scheme='http://www.blogger.com/atom/ns#' term='hell'/><category scheme='http://www.blogger.com/atom/ns#' term='American Airlines'/><title type='text'>Holiday travel from hell</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Mb8I2OoI/AAAAAAAAFK0/l_LgbwuGmnY/s1600-h/IMG_0935.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Mb8I2OoI/AAAAAAAAFK0/l_LgbwuGmnY/s320/IMG_0935.JPG" alt="" id="BLOGGER_PHOTO_ID_5304761453972437634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Warning: lots of bitching in this blog post&lt;br /&gt;&lt;br /&gt;After taking off 2 hours later than planned, we arrived to JFK too late to catch our connecting flight to London. No problems, (we thought) there were 2 more flights to London that same evening. First, we had to leave the secure area and come out to a check-in to get our new boarding passes, wait in a long line at the check-in, and then talk to a supervisor (who was overwhelmed by crying customers who apparently do not understand the reality of air travel). To our surprise, it turned out American Airlines booked 150 tickets for 120 passenger plane. 30 people had to stay at the airport all night to hope they can get on the plane the next day, the plane that was also overbooked. The 1 800 number they provided was "helpful"...  we called and booked us 2 seats that were (according to the customer service person) definitely available.  But the crew at the airport kept insisting that the plane is overbooked by 30 people and there are no seats available. Is this a software bug? Why do they give us conflicting information?&lt;br /&gt;&lt;br /&gt;As the airline employee recommended, "come at least 5 hours before the take off tomorrow, so you have better chances getting on the plane". Of course, we had to pay for our hotel, since the flight delays were caused by the weather, not the airlines. The next day, we came to the airport 7 hours early, got our boarding passes and did our best not to go crazy waiting for our flight. Once we got on, we buckled up, and waited. Then we waited little more. And then some more. And then we waited for something to be fixed on the plane, then we waited (according to the pilot) for "some paperwork for the repairs that were just performed", and then we waited "just another 1.5 hours or so for our turn to defrost the wings" and then we waited another 1.5 hours to take off. Total, we were sitting on that plane for 5 hours before we even took off. Wearing 2 days old clothes, praying for the torture to end.&lt;br /&gt;&lt;br /&gt;When we arrived to Heathrow, our bags were nowhere to be seen. American Airlines employee had no idea where bags can be, as they are not scanned at every city they fly through. We could fly to a moon in the 60s, and we still are unable to track our luggage in 2008! So there we were, in our 3 day old stinky clothes (slippers, sweatpants and sweatshirts) entering the winter London. We stayed 2 nights in London and did not get our bags. The phone number for baggage claim was not picked up and we left few voicemails. We also called a delivery company that delivers bags for American Airlines and the driver told us that the AA is not picking up calls since too many people are calling and complaining (AA employee told this to the delivery guy). So they are just sitting there, and not picking up calls. What a customer service.&lt;br /&gt;&lt;br /&gt;Our bags reached us in Slovakia, at the midnight of Dec 24. We checked in on the 19th, and got our bags after 5 days. This is the 5th time I had my bags delayed. Based on my small sample (I fly few times a year), delayed luggage is more common than the statistics claim.&lt;br /&gt;&lt;br /&gt;This picture shows how Brad dried his underwear while staying in London and waiting for his bag to arrive.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-2007951580660818329?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/2007951580660818329/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=2007951580660818329' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2007951580660818329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2007951580660818329'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2009/01/american-airlines-is-poorly-ran.html' title='Holiday travel from hell'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ODq6UoGYnB4/SZ5Mb8I2OoI/AAAAAAAAFK0/l_LgbwuGmnY/s72-c/IMG_0935.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-2404957141321864301</id><published>2008-12-17T22:11:00.000-08:00</published><updated>2009-01-24T22:12:10.654-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='carry-on'/><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='plastic bags'/><category scheme='http://www.blogger.com/atom/ns#' term='organize'/><category scheme='http://www.blogger.com/atom/ns#' term='prepare'/><category scheme='http://www.blogger.com/atom/ns#' term='ziplock bags'/><title type='text'>God Bless Ziplock Bags</title><content type='html'>After years of traveling back and forth between Europe and US, I learned a neat trick to organize the items in my carry on -- a wheel backpack full of thick double-zipper &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Ziplock&lt;/span&gt; 1 quart bags. How many of them? &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Ehm&lt;/span&gt;.....&lt;br /&gt;&lt;ul&gt;&lt;li&gt;one for hygienic stuff (yes, a woman has certain sanitary needs)&lt;/li&gt;&lt;li&gt;one for music (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;iPod&lt;/span&gt;, earphones, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;iPod&lt;/span&gt; charger, earphone splitter (if traveling in pair), &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;iPod&lt;/span&gt; data cable)&lt;/li&gt;&lt;li&gt;one for edibles (chewing gums, medicine, TUMS, vitamins, 4 tea bags (never expect random restaurants to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;carry&lt;/span&gt; a good tea)&lt;/li&gt;&lt;li&gt;one for small electronics (European power adapter, camera, camera charger, camera &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;USB&lt;/span&gt; cable, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;USB&lt;/span&gt; drive, phone, and phone charger)&lt;/li&gt;&lt;li&gt;one for tooth brush, little box with ear plugs, hair pins, ear rings&lt;br /&gt;&lt;/li&gt;&lt;li&gt;one for underwear &amp;amp; shirt for 1 day (experiencing lost luggage teaches you a lesson)&lt;/li&gt;&lt;li&gt;one for sunglasses and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;European&lt;/span&gt; wallet (hopefully containing enough Euros to get me to a hotel)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;and finally our good old "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;TSA&lt;/span&gt; liquids bag"&lt;/li&gt;&lt;/ul&gt;All of this (plus a passport bag, laptop and few magazines... oh... and few empty plastic bags for stuff like gifts or receipts) fits into a regular wheel backpack which I use as a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;carry on&lt;/span&gt;. As a result, instead of searching through bunch of random junk in my backpack, all I need to answer is "Which bag is it in?".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-2404957141321864301?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/2404957141321864301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=2404957141321864301' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2404957141321864301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/2404957141321864301'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2008/12/god-bless-ziplock-bags.html' title='God Bless Ziplock Bags'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-4866415617442139447</id><published>2008-12-07T01:28:00.000-08:00</published><updated>2009-01-24T22:12:34.625-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='understanding'/><category scheme='http://www.blogger.com/atom/ns#' term='friendship'/><category scheme='http://www.blogger.com/atom/ns#' term='differences'/><category scheme='http://www.blogger.com/atom/ns#' term='point of view'/><category scheme='http://www.blogger.com/atom/ns#' term='conflict'/><title type='text'>You see tomato, I see tomatho</title><content type='html'>Can two people see things the same way if they try really hard?&lt;div&gt;&lt;br /&gt;We all know what a difference in points of view can lead to. It breaks families, friendships, starts fights, and even wars.&lt;br /&gt;&lt;br /&gt;But how does this happen? How do two people who understand and love each other stop doing that? What does it take to turn a friend against a friend? Unfortunately, most of us do have buttons that when pushed, can trigger hurt feelings, little arguments, and eventually major conflicts. When things are good, we would not believe that we can ever turn against our friend. We might not even be aware of our issues, and our weak spots. But when the friend rubs us the wrong way, intentionally or not, when she/he presses our weak spots that touch the deeply rooted issues that make us self conscious, we lit on fire and start firing back, without accepting the possibility that the friend really did not try to hurt us.&lt;br /&gt;&lt;br /&gt;I do not need to be a psychologist to know that our past bad experiences influence our behavior, often subconsciously. This applies to all animals, including us, the "human animal".&lt;br /&gt;If you approach a dog that had been abused in the past, the dog might presume you are trying to do evil and even the smallest movement on your side might be considered as an attempt to hurt it. The dog bites, and you back off wondering what just happened. You clearly did not try doing anything wrong, so why would the dog do that?&lt;br /&gt;&lt;br /&gt;During fights, we do not know or realize that the people we deal with have certain fears, issues, experiences, and instincts, and that they can quickly reflect on these to make a decision about "your intentions". One minute you are John's best buddy, the next minute you are the guy trying to steal his girlfriend!!! And it was all because you smiled at her. John saw the look in your eyes when you looked at her! And you wonder "What have just happened?". Why is John attacking me?&lt;br /&gt;&lt;br /&gt;&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;&lt;/span&gt;When others fear something, they might start presuming your intentions are bad, and can see all your actions as bad. When they fear something bad might happen to their loved ones, or to themselves, they "watch for it" and they can see that it even in the most ordinary things. The fear self propagates and feeds on itself. And girlfriends become more jealous, boyfriends become more possessive, wives become more bitter, mothers become paranoid, a stranger taking to your kids might be molester, a person admiring your house from the street might be a potential burglar, an attractive woman sitting next to your husband might be his mistress. Everything is a possibility and &lt;span style="font-weight: bold;"&gt;you decide how things are&lt;/span&gt;!&lt;br /&gt;&lt;br /&gt;What happens next? Your friend holds grudges against you and when you press another one of her/his buttons, she/he enumerates all the bad things plus more that you ever did to her/him and how evil they all were and how bad it all made her/him feel and how mean it was of you to do all that. Yes, you are a bad bad person.&lt;br /&gt;&lt;br /&gt;And that is the end of the story.&lt;br /&gt;&lt;br /&gt;Unless... of course you are able to open up and discuss the most sensitive issues and fears of one another, to truly understand each others reactions. But how often does this happen? How often do you come to a friend who just attacked you and say: "Hey John, I am concerned about this, I want to understand why you think I am an asshole. I think you might help me see myself from your point of view, and possibly uncover some of my problems I am not aware of, and I think I can help you identify some of your fears and issues if we talk about this."&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-4866415617442139447?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/4866415617442139447/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=4866415617442139447' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/4866415617442139447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/4866415617442139447'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2008/12/you-see-tomato-i-see-tomatho.html' title='You see tomato, I see tomatho'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-4060506376077664029</id><published>2008-11-15T15:23:00.000-08:00</published><updated>2008-11-15T15:44:09.502-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tribe'/><category scheme='http://www.blogger.com/atom/ns#' term='territory'/><category scheme='http://www.blogger.com/atom/ns#' term='animal'/><category scheme='http://www.blogger.com/atom/ns#' term='city'/><category scheme='http://www.blogger.com/atom/ns#' term='live'/><category scheme='http://www.blogger.com/atom/ns#' term='human'/><category scheme='http://www.blogger.com/atom/ns#' term='experiment'/><title type='text'>My tribe is not your tribe</title><content type='html'>I watched an episode of BBC series "The Human Animal" named "The Human ZOO" last night. The author and presenter -- Desmond Morris talks about the our ancient habits and how they reflect in the modern life. We need to belong to a smaller tribe, and thus living in large cities is very unnatural. He points out how we develop our own tribes, that are formed by a group of people who surround us, our family, and friends. These people do not necessarily need to know each other, they just belong to your own unique tribe. Every person has her/his own tribe, and this is how we survive in the flood of people that live around us.&lt;br /&gt;&lt;br /&gt;The author did an interesting experiment, where he would put a person on the ground and observe what others do about it. In the city, people look, maybe even slow down, but definitely keep walking past the possibly suffering individual that is laying motionless on the ground. In the village, however... the person is immediately surrounded by the locals (tourists still keep passing by the person as if it was a tree) and offered help.&lt;br /&gt;&lt;br /&gt;That made me realize how vulnerable we really are. No one is watching over us when we walk around alone even during a daylight, since you are just another tree in the forest of people who everyone tries to avoid as they are making their way though crowded streets of the city.&lt;br /&gt;&lt;br /&gt;Why do then people want to live in the cities? I think the answer is the number of options city can offer to you: choice of educational facilities, art museums, nightlife, shopping, dining... all of this makes us want to live in the city. But we loose the comfort of a tribe, and want to keep our borders and not allow the people who live across the street to enter our tribe.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-4060506376077664029?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/4060506376077664029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=4060506376077664029' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/4060506376077664029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/4060506376077664029'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2008/11/my-tribe.html' title='My tribe is not your tribe'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-112690974367100896</id><published>2008-11-13T00:28:00.000-08:00</published><updated>2009-01-24T22:13:06.028-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='same sex marriage'/><category scheme='http://www.blogger.com/atom/ns#' term='lesbian'/><category scheme='http://www.blogger.com/atom/ns#' term='proposition'/><category scheme='http://www.blogger.com/atom/ns#' term='rights'/><category scheme='http://www.blogger.com/atom/ns#' term='prop 8'/><category scheme='http://www.blogger.com/atom/ns#' term='love'/><category scheme='http://www.blogger.com/atom/ns#' term='gay'/><title type='text'>What is somebody passes a law that said you could not mary?</title><content type='html'>I am deeply ashamed of the 52% of Californian voters who voted YES on Prop 8. Keith Olbermann &lt;a href="http://www.msnbc.msn.com/id/21134540/vp/27652443#27652443"&gt;speaks &lt;/a&gt;for me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-112690974367100896?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/112690974367100896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=112690974367100896' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/112690974367100896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/112690974367100896'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2008/11/what-is-somebody-passes-low-that-said.html' title='What is somebody passes a law that said you could not mary?'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-8379195717861325846</id><published>2008-09-21T19:19:00.000-07:00</published><updated>2008-12-11T00:55:03.355-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='merchant'/><category scheme='http://www.blogger.com/atom/ns#' term='MasterCard'/><category scheme='http://www.blogger.com/atom/ns#' term='ID'/><category scheme='http://www.blogger.com/atom/ns#' term='drivers license'/><category scheme='http://www.blogger.com/atom/ns#' term='VISA'/><category scheme='http://www.blogger.com/atom/ns#' term='credit card'/><category scheme='http://www.blogger.com/atom/ns#' term='merchants'/><title type='text'>To show it or to not show it</title><content type='html'>I recently spent some time learning about protecting ones identity. One of the things that are considered "personal information" is a person's name, date of birth, and address. We all should try not to give these to anyone unless absolutely required.&lt;br /&gt;&lt;br /&gt;I noticed that I do not need to show my ID when I use my credit card in Europe. Instead, they complain about my card not being signed. In the US, merchants keep asking to see my ID when I use my card, an no-one ever complained about signing my card on the back.&lt;br /&gt;&lt;br /&gt;So I did a little research and found out that customers do not need to show their IDs. I also learned that unsigned cards are invalid. Various merchant agreements that credit card companies sign with merchants contain very specific information about asking for ID.&lt;br /&gt;&lt;br /&gt;The following is found in "Rules for VISA Merchants":&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"Although Visa rules do not preclude merchants from asking for cardholder ID, merchants cannot make an ID a condition of acceptance. Therefore, merchants cannot refuse to complete a transaction because a cardholder refuses to provide ID. Visa believes merchants should not ask for ID as part of their regular card acceptance procedures."&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The following is found in "MASTERCARD Worldwide Rules":&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"A merchant must not refuse to complete a MasterCard card transaction solely because a cardholder who has complied with the conditions for presentment of a card at the POI refuses to provide additional identification information."&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ever since I learned about this, I was tempted not to show my ID, realizing how easy it is for the cashier to glance over to my birth date or an address. I finally decided to refuse to show my ID yesterday at Metropark store in San Francisco Westfield. The cashier was taken off guard, and asked "why". I told her that I do not need to show the ID since MasterCard takes care of possible fraudulent charges, and that their merchant agreement clearly states that customers do not have to provide ID if their card is signed. She then swiped my card, and went to talk to her supervisor who confirmed this. She came back and politely appologized for her confusion and wished me a great day. I felt little awkward, since I obviously made her look bad, and now I am not sure if I want to keep exercising my right to not show my ID. It would take lots of energy and possible arguments to keep educating merchants about this rule.&lt;br /&gt;&lt;br /&gt;What do you think?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-8379195717861325846?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/8379195717861325846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=8379195717861325846' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8379195717861325846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/8379195717861325846'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2008/09/to-show-it-or-to-not-show-it.html' title='To show it or to not show it'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-6574302868108445678</id><published>2008-09-17T15:16:00.000-07:00</published><updated>2009-02-20T00:08:32.332-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='weasels'/><category scheme='http://www.blogger.com/atom/ns#' term='best friends'/><category scheme='http://www.blogger.com/atom/ns#' term='soul mates'/><category scheme='http://www.blogger.com/atom/ns#' term='friends'/><category scheme='http://www.blogger.com/atom/ns#' term='soul mate'/><category scheme='http://www.blogger.com/atom/ns#' term='BFF'/><title type='text'>Friends and other weasly creatures</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://coleworld.org/images/weasel_2.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 223px; height: 251px;" src="http://coleworld.org/images/weasel_2.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Friends are like songs. They can be very exciting at a first glance or absolutely uninteresting. Over time, a friend can become just a one hit wonder, or a stable long-term friend (Beatles for someone, Depeche Mode for me), or "an acquired taste" friend that keeps growing on you as time goes by. Friends also morph and grow, and so do you. The friend life-cycle is very unpredictable, just like a relationship between man and a woman. At some point you are happy about the other person and think that no matter what, you remain great buddies. And one month later you would not lean a bike against this person.&lt;br /&gt;&lt;br /&gt;Some friends of mine actually did not like me at first (mostly girls), but we got over the initial ping-pong and figured each other out.&lt;br /&gt;&lt;br /&gt;The word "friend" is not really descriptive enough, I prefer to categorize friends into few buckets which are here sorted by the size of the elements they usually contain.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;soul mates&lt;br /&gt;&lt;/li&gt;&lt;li&gt;best friends&lt;/li&gt;&lt;li&gt;friends&lt;br /&gt;&lt;/li&gt;&lt;li&gt;people I know (weezels, co-workers, neighbors, etc)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;People can migrate between buckets in any direction. There is also one more bucket "people I know but wish I did not". Surprisingly, this bucket might contain people who once were your soul mates. If they betrayed you beyond your belief, they belong to this bucket and they are not worth discussing.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;When to drop a friend:&lt;/span&gt;&lt;br /&gt;I am trying to figure out a system for maintaining the right set of friends. There is a fine balance that friends need to maintain, and when that is broken, they let go of each other. Like any relationship, one way efforts cause imbalance. I eventually let go of friends that react to my invitations, come to my parties, but never invite me to any, or drop me a line or a call. Some people are just not making any effort to socialize (to give and take), and expect others to take care of their social life for them (they just end up taking, not giving). These people are not even aware of this most of the time. These are the people who always say "This was fun! Lets do this again!"... but they never do anything unless YOU invite them. Such friendships tire me out and make me want to loose touch with that person.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Weasels:&lt;/span&gt;&lt;br /&gt;And then there are those people who want to be your friends because of their own personal agenda. Friends that want something from you. You usually haven't heard from them since high school, and now they are all over you, sending you their resumes, making you remember the "old times" when you were classmates. As soon as they find a new job, you don't hear from them again. I call them "weasels".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-6574302868108445678?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/6574302868108445678/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=6574302868108445678' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/6574302868108445678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/6574302868108445678'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2008/09/friends-are-like-songs.html' title='Friends and other weasly creatures'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3771326526937217859.post-1129760600284535610</id><published>2008-09-15T15:21:00.000-07:00</published><updated>2008-09-15T18:58:46.954-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ex-byfriend'/><category scheme='http://www.blogger.com/atom/ns#' term='ex'/><category scheme='http://www.blogger.com/atom/ns#' term='BF'/><category scheme='http://www.blogger.com/atom/ns#' term='email'/><category scheme='http://www.blogger.com/atom/ns#' term='jealous'/><title type='text'>Why are we jealous?</title><content type='html'>Hello ladies,&lt;br /&gt;&lt;br /&gt;I do not blog very often, well, maybe once a year. But today I received an email which my girlfriend (lets call her Lea) forwarded to me and I could not believe my eyes... so I thought I would share. This is totally a "Sex and the City" material. Even though I do not gossip a lot, I think this one is a good conversation starter. Please let me know what you think about this and how would YOU behave if you got an email like my friend got.&lt;br /&gt;&lt;br /&gt;Here goes the story:&lt;br /&gt;Lea's ex (lets call him Mark)  got recently married to a seemingly nice lady (lets call her the Sue). She even invited me for lunch when I visited the town they live in. Until today I thought "oh, what a nice wife Mark got", and I was genuinely happy for him, since I thought Sue really matched his personality better than Lea and they looked like a perfect couple together.&lt;br /&gt;&lt;br /&gt;But it all changed today when my friend Lea forwarded me an email from Sue (the wife). Sue reacted to an email Lea sent to Mark. So, apparently Sue reads her husband's email, what a big deal. There are many lovebirds that do not mind sharing email accounts. But the content of the email was quite disturbing.&lt;br /&gt;&lt;br /&gt;It all started when my friend Lea sent a group email to few dozen recipients. All of the recipients (incl Mark) were in blind carbon copy. The email contained the usual periodic update about her life and a link to some new web albums. The email was not addressed specifically to Mark.&lt;br /&gt;&lt;br /&gt;One day later Lea got an email from Sue. It went like this:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Hi Lea,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;I do not want you to send photos to Mark all the time. Send it to whoever you want, but stop trying to interfere with our life finally. I explained it to you once... when you were sending the postcards. IT'S ABOUT THE TIME. I am sorry you did not get the point earlier, and that I have to repeat it to you. Thank you for understanding.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Sue&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;Knowing Lea for years, I know that she sent postcards to Sue and Mark every time she traveled to a nice destination. Lea always sends cards, and buys them in dozens. But why would that bother anyone?&lt;br /&gt;&lt;br /&gt;Lea replied to Sue:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Dear Sue,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;I am sending these status emails to Mark as group email and he is one among the dozens of recipients. As you might have noticed, I am not addressing them to him, but they are sent to me, and all recipients are in bcc. If he wishes that I remove him from my mailing list, he can ask for it. No problem. But then he should not be sending me all your photos as well, since I might reply to one of his emails by accident.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Lea&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sue replied in return to Lea:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Behave like a lady! Realize, that Mark is my husband and you are his ex girlfriend. I do not understand what is your point and why you are trying to reply to me with explanation. Send your pictures to the other people and forget about us. That is all that is necessary to do. I am wondering why you did not do so right away, and you are lowering yourself to opposing me and are asking for a permissions from Mark. It is ridiculous. Pay attention to your other friends instead. I hope you got my point this time!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What I think:&lt;br /&gt;After reading this email thread I started wondering why is Lea reacting this way. Nowadays people often remain friends with their ex-es (well... if they had a civil breakup). Why would she be so jealous? Sue is a very intelligent and beautiful lady that is married to a devoted husband, and from my perspective I do not see why she would react this way. But there must be something I am not aware of. Is her husband making her self conscious? Or is he not giving her enough day-to-day assurance that she is the only lady he wants? Maybe the root of a problem is not in Mark. Maybe Sue just had bad experience with other ex-girlfriends in the past. Or maybe Sue is a more traditional lady and simply thinks that it is not appropriate to keep in touch with your ex-es.  I feel little sorry for her. I wish she could appreciate all friendly people around her, even Mark's friends.&lt;br /&gt;I once dated a person who made me very self conscious. He would make critical comments about other girls' bodies (girls that I considered prettier than me) and would not give any compliments to me, and thus make me compare myself to these girls and get more and more self conscious. At that point I was more jealous than it is healthy. But with a new relationship with a man that actually diggs me, my self esteem skyrocketed and I now feel happy about my looks.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;That brings me to a question: What makes a woman jealous?&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Is it really what she thinks it is... that some other woman is definitely trying to go after her man?&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Or is it a lack of self esteem or self-appreciation?&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Or is it something else?&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3771326526937217859-1129760600284535610?l=bublispot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bublispot.blogspot.com/feeds/1129760600284535610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3771326526937217859&amp;postID=1129760600284535610' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/1129760600284535610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3771326526937217859/posts/default/1129760600284535610'/><link rel='alternate' type='text/html' href='http://bublispot.blogspot.com/2008/09/why-are-girls-jealous.html' title='Why are we jealous?'/><author><name>Petra Cross</name><uri>http://www.blogger.com/profile/14340602009891879861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ODq6UoGYnB4/SNFPRRM37PI/AAAAAAAADik/_wbuXfqizzE/S220/Petka_thumb.png'/></author><thr:total>2</thr:total></entry></feed>
