<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>OpenOffice.org Conference 2007 - Travel</title>
<!-- Include the common CSS stylesheet -->
  <link rel="stylesheet" type="text/css" href="default.css">
  <script language="JavaScript" type="text/javascript" src="ooocon.js"></script>

</head>
<body>
<div id="content">

  <div id="title">
    <a href="/conference/index.html">
      <img style="border: 0px solid; margin-left: 25px; float: left;" 
           src="images/ooocon2007_176x105.png"
           alt="OpenOffice.org Conference logo" />
    </a>
    <h3>OpenOffice.org Conference (OOoCon 2007)</h3>
    <p>19th-21st.September 2007<br />Barcelona, Spain<br /><br />
<!--
    <a href="attendees.html#register"><span class="register">Register Now</span></a>
-->
    </p>
  </div>

  <br style="clear: left;"/>
  <br />
  <div id="midtabs">
    <ul>
      <li><a href="index.html">Home</a></li>
      <li><a href="news.html">News</a></li>
      <li class="th"><a href="venue.html">Venue</a></li>
      <li><a href="travel.html">Travel</a></li>
      <li id="progroot">
        <a onmouseover="dropdown('prog','visible');" onmouseout="dropdown('prog','hidden');" href="programme.html">Programme</a>
        <ul id="progmenu" class="subtabs" onmouseover="dropdown('prog','visible');" onmouseout="dropdown('prog','hidden');">
          <li style="display: none;" id="fixfox" ><a href="programme.html">Programme</a></li>
          <li><a href="programme/tuesday.html">Tuesday</a></li>
          <li><a href="programme/wednesday.html">Wednesday</a></li>
          <li><a href="programme/thursday.html">Thursday</a></li>
          <li><a href="programme/friday.html">Friday</a></li>
        </ul>
      </li>
      <li><a href="speakers.html">Speakers</a></li>
      <li><a href="attendees.html">Attendees</a></li>
      <li><a href="sponsorship.html">Sponsors</a></li>
   </ul>
 </div>
  <div class="contentpart" id="contextualinformation"> <br />
    <br />
  </div>
  <h3>Conference Site</h3>
  <p><span class="content">Barcelona is the capital city of Catalonia, an Autonomous Community of Spain. The main Conference venue is the Universitat de Barcelona in the city centre (<a href="http://maps.google.com/maps?f=q&hl=ca&q=Gran+Via+Corts+Catalanes,+585,+08007+Barcelona&sll=37.0625,-95.677068&sspn=38.502405,96.328125&layer=&ie=UTF8&z=16&ll=41.385293,2.166452&spn=0.008919,0.030556&om=1&iwloc=addr">Google Map</a>).</span></p>
  <div id="title">
    <p><img style="padding: 10px;" src="images/confpix4.png" alt="Venue images" /></p>
  </div>
  <h3>Getting around</h3>
  <p class="news"><span class="date">Money saving tip</span> <span class="content"> All of the modes of public transport in Barcelona <a href="http://www.atm-transmet.org/ang/apartado2/apart2_01.htm">">are integrated</a> into the <a href="http://www.atm-transmet.org/index_ang.htm">Autoritat del Transporte Metropolitá</a> (ATM) system. Anyone planning on being in Barcelona for a number of days will benefit from buying a ticket called the T-10 de 1 Zona (1 Zone T-10 ticket). This ticket will get you to Barcelona from El Prat (Barcelona's Airport) on the train (RENFE) and allow you to take 9 more trips within Zone 1. You will also be able to continue your trip on other modes of transportation without paying again as long as you make your connection within a little over an hour of having started your trip. The T-10 de 1 Zona presently costs 6.90€ (March, 2007).</span></p>
  <p class="news"><span class="date">The metro</span> <span class="content">This is probably the quickest and easiest mode of transportation around the inner areas while buses or suburban trains can get you to places that are a little further out. Buses service the airport and can get you into town pretty efficiently. There is limited all night metro service on Saturdays for those of you celebrating a night on the town. <a href="http://en.wikipedia.org/wiki/Barcelona_Metro">http://en.wikipedia.org/wiki/Barcelona_Metro</a></span></p>
  <p class="news"><span class="date">Underground rail</span> <span class="content">The metro is the easiest way to get around most of the city. To get to other places you may need to transfer to a bus or to one of two train systems, <a href=" http://www.renfe.es/cercanias/barcelona/index_horarios.html">RENFE</a> or <a href="http://en.wikipedia.org/wiki/Ferrocarrils_de_la_Generalitat_de_Catalunya">FGC</a>. Renfe can get you into town from the airport.</span></p>
  <p class="news"><span class="date">Bus</span> <span class="content">The bus service runs along most city routes every few minutes and also provides limited routes every night. There is a <a href="http://www.barcelona-on-line.es/eng/reserves/bus_turistic.htm">tourist bus</a> that covers two major circuits of major sites (three in the summer). You can also take a bus from <a href="http://en.wikipedia.org/wiki/Barcelona_International_Airport">the airport</a> to get into town.</span></p>
  <p class="news"><span class="date">Walking</span> <span class="content">The Barri Gòtic and surrounding areas are <a href="http://www.barcelonaturisme.com/">ideal for walking</a> but you'll probably need to use public transport to get to sites like La Sagrada Familia and Parc Güell. Walking tours are also available.</span></p>
  <p class="news"><span class="date">Taxi</span> <span class="content">For the most part it's better not to rent a car while you're here because the traffic is more grief than it's worth. Taxis can get you around easily. Look for a green light on the roof which means that the taxi is for hire. Telephone: (+34) 93 303 3033</span></p>
  <p class="news"><span class="date">Biking</span> <span class="content">Bicycle aficionados will enjoy the latest of the <a href="http://www.bcn.cat/bicicleta/en/">ever expanding transportation services</a> in this Catalonian city.</span></p>
  <h3>Money</h3>
  <p class="news"><span class="date">Plastic</span> <span class="content"> is one of the most efficient ways to purchase things in Barcelona. ATMs are widely available and accessible if you need cash. You will be able to withdraw your money in euros from your credit and debit accounts at what is usually the best rate for non-euro zone visitors. It would be good to carry around at least two cards and having a few travelers checks as a backup is not a bad idea.</span></p>
  <p class="news"><span class="date"> Travelers checks</span> <span class="content">can be cashed at banks and exchange offices. They usually have a higher change rate than cash.</span></p>
  <p class="news"><span class="date"> One euro (€)</span> <span class="content">is divided into 100 cents or centimes (not called centavos for those of you who have traveled in Latin America). Coins of 1, 2, and 5 centimes are copper-colored; coins of 10, 20 and 50 centimes are gold-colored: 1 and 2 euro coins are gold-and-silver colored. Euro notes come in denominations of 5, 10, 20, 50, 100, 200 and 500. It is often difficult to get change for a 500€ note.</span></p>
  <h3>Tipping</h3>
  <p class="news"><span class="content">You are not expected to tip on top of restaurant service charges but it is common to leave a small amount, say 1€ per person. If there is no service charge you might consider leaving 10% but this is by no means obligatory. In bars it is customary to leave any small change as a tip, often only 5 or 10 centimes (0.05€ or 0.10€). Tipping taxi drivers is not common practice but you should tip the porter at higher-class hotels.</span></p>
  <h3>Maps in Barcelona</h3>
  <p class="news"><span class="content">Most travel books present the Barcelona metropolitan area on a solar north-south-east-west grid and travellers soon find themselves turning their maps 45° to match the maps located at rail stations and bus stops. Barcelona's coordinates use an up-down-left-right grid based on the Muntanya-Mar-Llobregat-Besós geographical reference points. The mountains are at the top, the sea is below, the Llobregat River is on the left and the Besós River is on the right. Those travellers insisting on seeking solar guidance will have to settle on two major avenues to satisfy their needs, the north-south Avinguda Merdidiana and the east-west Avinguda Parallel. Those who manage to adapt to this localization will suddenly understand one of the most important characteristics of L'Eixample urban design, especially when they realize that the Nativity façade of La Sagrada Familia faces northeast and the Resurrection façade faces southwest.</span></p>

  <h3>Tourist attractions</h3>

  <p class="news">
    <span class="date">CIUTAT VELLA (OLD CITY)</span>
    <span class="content"> Barcelona offers a unique opportunity for tourists to walk from Roman remains to a medieval city, and then to the modern city with its open thoroughfares and grid-iron street pattern. This historic city center is fairly flat, while the modern city fans out towards the surrounding hills, bordered by steep streets that are vaguely reminiscent of those found in San Francisco.
    <br /><br />
    A notable feature of the city is La Rambla, a boulevard that runs from the city center to the waterfront. Crowded with locals, tourists and street entertainers until late at night, it is lined by kiosks that sell flowers and birds on the upper part. Handicrafts are sold further down where you will also find a number of cafés and restaurants. Walking along La Rambla you'll find the world-famous El Liceu opera house, La Boqueria food market, and the Plaça Reial (or Royal Square) with its arches and palm trees surrounded but many interesting buildings. La Rambla has a Wax Museum as well as the Museu de l'Erotica. Pay attention to your belongings since pickpockets also like hanging around this most exciting place.
    <br /><br />
    La Rambla ends at the old harbor, the place where you'll see a statue of Christopher Columbus pointing eastwards across the Mediterranean Sea toward his homeland of Genoa.
    <br /><br />
    Along the harbor is the Museo Marítim (Naval Museum) which has a collection that chronicles the history of life on the Mediterranean Sea, including a full-scale model of a galley. The museum is housed in a medieval shipyard (Drassanes), where the ships that made Catalonia a great sea power were built.
    <br /><br />
    The old harbor offers lots of amenities, including the second largest aquarium on the Mediterranean and an IMAX cinema.
    <br /><br />
    North of the Gothic Quarter lie the Jardins de Fonseré y Mestre, which contains modernist buildings housing zoological and geological collections. The adjacent Parc de la Ciutadella includes both the Parlament de Catalunya (Catalan Parliament) and the Parc Zoològic de Barcelona (Zoo). The zoo's whose most famous resident was an albino gorilla, named Floquet de Neu (Snowflake) that died of skin cancer due in part to decades-long exposure to Barcelona's fierce Mediterranean sun. This point was conveniently overlooked in the wave of sentiment generated by the local media when he died.
    </span>
  </p>
  <p class="news"><span class="date">MODERNIST ARCHITECTURE</span>
    <span class="content"> The architectural legacy of Antoni Gaudí is evident in many places around the city. The Palau Güell is in the old city center and the Parc Güell is at the northern tip of Gràcia. La Sagrada Familia, which has been under construction since 1882 is in L'Eixample. It is financed by popular donations in the tradition of the cathedrals of the middle ages and the planned completion date is 2020. It is often confused with Barcelona's cathedral which was built in the middle ages and is located in the Gothic quarter, the Cathedral of Santa Eulàlia.
    <br /><br />
    Another very notable modernist building in the older part of the city is the Palau de la Música Catalana, designed by Lluís Domènech i Montaner and built in 1908.
    <br /><br />
    In the modern districts of the city there are several avenues with international clothing, jewelry and leather goods stores. The most elegant avenue is Passeig de Gràcia, where two Gaudí buildings can be found, La Pedrera (Casa Milà) and the Casa Batlló. There are also buildings by other famous architects such as the Casa Ametller built by Josep Puig i Cadafalch, as well as the Casa Lleó Morera built by Domènech and Montaner. Several of these buildings which includes La Sagrada Familia are now threatened by plans to build a large railway tunnel for high-speed rail service under the city's shaky 19th century foundations. In recent years, office developments along the Passeig de Gràcia have been allowed to break up the architectural unity of the 19th and 20th century buildings lining the avenue, a process which shows no sign of weakening. Real estate speculation is also hurting other areas of the city, including the 19th century Poble Nou district with its many interesting buildings dating from Catalonia's Industrial Revolution. Many of these have been leveled to make room for the city's ill-starred “22@” project to build an area for information and communication technology based firms.
    </span>
  </p>
  <p class="news"><span class="date">MONTJUÏC AND TIBIDABO</span>
    <span class="content"> For spectacular views of the city and the coastline there are two hills. Montjüic is next to the harbor and perched above a large container terminal on the sea. There is an old fortress on the top of the hill which used to guard the entrance to the port. Around the hill are a group of installations known as the “Olympic ring” which were built for the 1992 summer Olympics. The Lluís Companys Olympic Stadium was originally build in 1929 but was refurbished for the games. The Palau Sant Jordi is a multi-purpose installation designed by Japanese architect Arata Isozaki which is used for all kinds of indoor sporting events as well as for concerts and other cultural activities. There is also the Bernat Picornell Pools installation and situated on Montjüic is the Botanical Garden and the gardens of Mossèn Costa i Llobera which has a unique cactus collection.
    <br /><br />
    Tibidabo is the hill found above, it reaches a height of 512 meters (1,680 ft) and has a monumental church on its summit. The church mosaics provide a curious example of the religious art style much in vogue during the Franco dictatorship. It also has an amusement park which after a long battle now belongs to the city. Close to Tibidabo you will find the Torre de Collserola, a telecommunications tower designed by Norman Foster which also has a windowed balcony which offers a great view of the city.
    </span>
  </p>

  <p class="news"><span class="date">ACADEMIA</span> 
    <span class="content"> In addition to the University of Barcelona, the city is home to the Pompeu Fabra University, the Autonomous University of Barcelona, the Technical University of Catalonia, the Ramon Llull University and the International University of Catalonia.</span>
  </p>

  <p class="news"><span class="date"><a href="http://w3.bcn.es/ab/asia/equipament/controller/0,2317,7610_54159_3,00.html?accio=fitxa_eq&idEquip=92086000173">FUNDACIÓ JOAN MIRÓ – MIRÓ GALLERY</a></span> 
  <span class="content"> This wonderfully captivating gallery showcases the work of Joan Miró. His close friend Josep Lluís Sert designed this space that combines white and light to create an unforgettable experience. Miró handed the gallery over to the city which now houses contemporary artist exhibitions.
    <br /><br />
    Hours: Tuesday – Saturday 10:00 – 19:00
    <br />
    Thursday 10:00 – 21:30, Sunday 10:00 – 14:30
    <br />
    </span>
  </p>
  <p class="news"><span class="date">GRÀCIA – HIP SUBURB</span> 
    <span class="content"> This suburb was established towards the end of the 19th century and is home to a combination of artists, students and intelligentsia mixed with average Joseps who give it a down-to-earth atmosphere. Gràcia has a number of lovely parks to enjoy during the day and at night the area becomes a popular and vivacious meeting place.</span>
  </p>

  <p class="news"><span class="date"><a href="http://nl.wikipedia.org/wiki/Font_M%C3%A0gica">LA FONT MÁGICA – CRAZY FOUNTAIN</a></span> 
    <span class="content"> This a wonderfully orchestrated music and light event, a fountain the comes to life to either Tchiakovsky or Abba. The best view of Montjüic's most famous attraction is from the series of terraces that overlook the fountain.
    <br /><br />
    Hours: June – September, Thursday – Sunday every half hour between 21:30 – 23:30.
    </span>
  </p>

  <p class="news"><span class="date"><a href="http://www.fundaciocaixacatalunya.org/osocial/main.html?idioma=3">LA PEDRERA – SPANISH WAVE</a></span> 
    <span class="content"> modernist building was previously known as the Casa Milà and is now called “The Quarry” or La Pedrera. Who else but Gaudí could have designed this enthralling apartment/office block. It was built between 1905 and 1910 and gets its new name for its uneven gray stone façade that creates a wave effect, further emphasized by elaborate balconies wrought from salvaged iron.</span>
  </p>

  <p class="news"><span class="date"><a href="http://www.aquariumbcn.com/AQUARIUM/info_horario.php">L'AQUARIUM – FISH FIESTA</a></span> 
    <span class="content"> This ultra-modern aquarium is one of Europe's largest and has the best collection of Mediterranean marine life. Highlights includes the 80m (262 ft) long shark tunnel, lots of touch-and-feel activities and the three-level interactive center featuring everything from piranhas to penguins.
    <br /><br />
    Hours: April – August, 9:30 – 23:00
    <br />
    September – June, Monday – Friday, 9:30 – 21:00, Saturday – Sunday, 9:30 – 21:30
    </span>
  </p>

  <p class="news"><span class="date"><a href="http://www.sagradafamilia.org/eng/index.htm">LA SAGRADA FAMILIA – HOLY GAUDÍ</a></span> 
    <span class="content"> Even if you're short on time, don't miss La Sagrada Familia, the most ambitious architectural marvel designed by Barcelona's favorite son, Antoni Gaudí. The magnificent swirling spires of this yet unfinished masterpiece are inspired by the holy Montserrat. The project began in 1882 and is planned for completion in 2020.
    <br /><br />
    Hours: April – September, 9:00 – 20:00
    <br />
    October – March, 9:00 – 18:00
    <br />
    </span>
  </p>

  <p class="news"><span class="date"><a href="http://www.macba.es/controller.php?p_action=show_page&pagina_id=23&inst_id=5165&lang=ENG&PHPSESSID=s9jbj5gs5rdgti54pthpkoalo2">MUSEU D'ART CONTEMPORANI DE BARCELONA (MACBA)</a></span>
    <span class="content"> This shiny glass structure built in El Raval in 1995 houses the best Catalan, Spanish and contemporary art as well as temporary exhibits and a good art-book shop. The museum's architecture and the art collection makes it a worthwhile visit.
    <br /><br />
    Hours: Monday, Wednesday – Friday, 11:00 – 19:30
    <br />
    Saturday, 10:00 – 20:00, Sunday, 10:00 – 15:00
    </span>
  </p>


  <p class="news"><span class="date"><a href="http://www.museupicasso.bcn.es/eng/services/index_serveis.htm">MUSEU PICASSO – PICASSO'S BLUES</a></span>
    <span class="content"> Barcelona's most visited museum shows numerous works tracing Pablo Ruiz Picasso's early years and is especially strong on his Blue Period, as well as ceramics and early works from the 1890s. The permanent exhibit contains more than 3,500 of Picasso's works. A portion of the museum traces Picasso's life and travels.
    <br /><br />
    Hours: Tuesday – Saturday, 10:00 – 20:00
    <br />
    Sunday, 10:00 – 15:00
    </span>
  </p>

  <p class="news"><span class="date"><a href="http://www.bcn.es/parcsijardins/pa_guell.htm">PALAU GÜELL – GROOVY GAUDÍ</a></span>
    <span class="content"> Gaudí's first work appears less flamboyant than his later efforts, but a journey to the rooftop reveals an amazing display of chimneys and mosaics. From here you can peer down into studio No. 6 where Picasso, who loathed Gaudí's work, began his Blue Period.
    <br /><br />
    Hours: June – September, Monday – Saturday, 10:00 – 18:15
    <br />
    October – April, Monday – Sunday, 10:00 – 16:15
    </span>
  </p>

  <p class="news"><span class="date"><a href="http://www.tibidabo.es/cat/horari.asp">PARC D'ATRACCIONS – FUNFAIR FOR ALL</a></span> 
    <span class="content"> For the ride of your life, get on a Ferris Wheel that gives you a panoramic view of Barcelona. It's atop Tibidabo mountain at an old-fashioned amusement park. Their's also a museum of 19th century carnival games and gizmos. Take the funicular to the fun waiting for you at the top of the mountain!</span>
  </p>

  <p class="news"><span class="date">Disclaimer</span> <span class="content">Schedule changes are common so make sure to check before going.  </span></p>
  

  <h3>Keep informed&nbsp;</h3>
  <p style="text-align: left;">Keep up to date with the latest news - subscribe to the conference attendees' mailing list <a href="/servlets/SummarizeList?listName=ooocon2007_discuss"> ooocon2007_discuss@marketing.openoffice.org</a> by sending an empty message to <a href="mailto:ooocon2007_discuss-subscribe@marketing.openoffice.org"> ooocon2007_discuss-subscribe@marketing.openoffice.org</a>.</p>

</div>
<!-- Right menu
<div id="menu">


    <p id="langLine">
		<span class="thisLang">En</span> -
		<a class="lang" href="index_fr.html">Fr</a>
	</p>

    <h3>OOoCon 2007</h3>
        <p><a href="indox.html">Home</a></p>
        <p><a href="news.html">News</a></p>
        <p><a href="travel.html">Travel</a></p>    
        <p><a href="programme.html">Programme</a></p>
        <p><a href="sponsorship.html">Sponsors</a></p>

    <h3>How to participate</h3>
        <p><a href="schedule.html">Programme</a></p>
        <p><a href="sponsorship.html">Sponsors</a></p>
        <p><a href="registration.html">Registration</a></p>
    <h3>Travel informations</h3>
        <p><a href="travel.html">Travel</a></p>    
        <p><a href="accommodation.html">Accommodation</a></p>
        <p><a href="map.html">Map</a></p> 
-->
</div>
</body>
</html>
