terça-feira, agosto 26, 2008

Editors gravam disco novo em Outubro



Britânicos preparam terceiro álbum inspirado em Exterminador Implacável

Os Editors vão começar a gravar o sucessor de An End Has A Start em Outubro.

A banda britânica disse ao NME estar prestes a entrar em estúdio com o produtor Jacknife Lee para um registo baseado na saga Exterminador Implacável, protagonizada por Arnold Schwarzenegger.

"Começámos a escrever imensos riffs para sintetizadores e [o álbum] vai ter muito mais electrónica, samples e caixas de ritmos. Estou sempre a ir buscar o tema do Exterminador Implacável ", adiantou o guitarrista Christopher Urbanowicz.


Fonte: Blitz

Arctic Monkeys vão gravar com Josh Homme, dos QOTSA



Vocalista dos Queens of the Stone Age vai ajudar ingleses a "mudar de vida", produzindo-lhes algumas canções.


Josh Homme, vocalista e guitarrista dos Queens of the Stone Age, vai entrar em estúdio com os Arctic Monkeys já no próximo mês.

Segundo o NME, o norte-americano e os ingleses vão trabalhar juntos num projecto ainda sem destino certo: as músicas produzidas por Josh Hommes poderão ser usadas num futuro álbum dos Arctic Monkeys, ou apenas num single.

Certo é o desejo de os Arctic Monkeys mudarem a forma como vêm trabalhando: "Eles querem rodear-se de coisas que sejam o oposto daquilo que são as suas origens e daquilo a que estão habituados", explica Josh Homme, citado pelo NME.

"Penso que vamos começar por fazer uma ou duas músicas. Sem pressão. A ideia é fazermos uma coisa de que eles gostam tanto, que toda a gente possa gostar também", afirma o mentor dos Queens of the Stone Age.

Aquando do segundo álbum dos Arctic Monkeys, Favourite Worst Nightmare, a banda de Sheffield reconheceu a admiração pela música dos Queens of the Stone Age. Agora, essa admiração vai materializar-se numa colaboração que começa a ser "cozinhada" já em Setembro, na Califórnia.


Fonte: Blitz

Scorpions dão concerto acústico em Portugal



Banda alemã de regresso ao nosso país, desta feita para concerto acústico no Casino Estoril.

Os Scorpions estão de regresso a Portugal, para um concerto acústico no Casino Estoril, agendado para 19 de Novembro.

Segundo o Cotonete, o espectáculo insere-se nas comemorações dos 50 anos do Casino Estoril.

A banda alemã, que em 2001 esteve em Portugal para um concerto igualmente acústico, do qual nasceria o CD/DVD Acoustica , encontra-se de momento em digressão.

Depois de vários concertos no Brasil, no México e em Trinidad e Tobago, os autores de "Still Loving You" regressam à Europa, onde têm espectáculos marcados em países como Estónia, Letónia e Lituânia, além de Reino Unido, França, Suíça e Portugal.


Fonte: Blitz

Regex - Regular Expressions

A regular expression (regex or regexp for short) is a special text string for describing a search pattern. You can think of regular expressions as wildcards on steroids. You are probably familiar with wildcard notations such as *.txt to find all text files in a file manager. The regex equivalent is .*\.txt$.

But you can do much more with regular expressions. In a text editor like EditPad Pro or a specialized text processing tool like PowerGREP, you could use the regular expression \b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b Analyze this regular expression with RegexBuddy to search for an email address. Any email address, to be exact. A very similar regular expression (replace the first \b with ^ and the last one with $) can be used by a programmer to check if the user entered a properly formatted email address. In just one line of code, whether that code is written in Perl, PHP, Java, a .NET language or a multitude of other languages.


Info AQUI

Mais sobre JSON (Javascript Object Notation)

Mastering JSON ( JavaScript Object Notation )

Widely hailed as the successor to XML in the browser, JSON aspires to be nothing more than a simple, and elegant data format for the exchange of information between the browser and server; and in doing this simple task it will usher in the next version of the World Wide Web itself.


The Object: An Introduction

Behold, an Object…

varmyFirstObject ={};


It may not look like much, but those squiggly braces have the potential to record every bit of information humanity has ever gathered, and express the most complex programs computer scientists can dream up. In fact, Javascript itself is stored inside a set of squiggly braces just like that, as are all of its primitive data types -- strings, numbers, arrays, dates, regular expressions, they're all objects and they all started out just like myFirstObject.


Creating A New Object

The old way to create a new object was to use the "new" keyword.

varmyJSON=newObject();

This method has been deprecated now in favor of simply defining an empty object with squigly braces…

var myJSON = {};


Objects as Data

At its most base level a Javascript Object is a very flexible and robust data format expressed as "name/value pairs".
That is, an object holds a name which is an object's property -- think of it as a plain old variable name that's attached to the object name. And the object holds the value of that name. Here's an example…

var myFirstJSON = { "firstName" :"John",
"lastName" : "Doe",
"age" : 23 };

document.writeln(myFirstJSON.firstName); // Outputs John
document.writeln(myFirstJSON.lastName); // Outputs Doe
document.writeln(myFirstJSON.age); // Outputs 23

This object has 3 properties or name/value pairs. The name is a string -- in our example, firstName, lastName, and age. The value can be any Javascript object (and remember everything in Javascript is an object so the value can be a string, number, array, function, even other Objects) -- In this example our values are John, Doe, and 23. John and Doe are strings but age is a number and as you can see this is not a problem.

This data format is called JSON for JavaScript Object Notation. What makes it particularly powerful is that since the value can be any data type, you can store other arrays and other objects, nesting them as deeply as you need. Here is an example of a somewhat complex JSON structure…

var employees = { "accounting" : [ // accounting is an array in employees.
{ "firstName" : "John", // First element
"lastName" : "Doe",
"age" : 23 },

{ "firstName" : "Mary", // Second Element
"lastName" : "Smith",
"age" : 32 }
], // End "accounting" array.
"sales" : [ // Sales is another array in employees.
{ "firstName" : "Sally", // First Element
"lastName" : "Green",
"age" : 27 },

{ "firstName" : "Jim", // Second Element
"lastName" : "Galley",
"age" : 41 }
] // End "sales" Array.
} // End Employees

Here employees is an object. That object has two properties or name/value pairs. Accounting is an array which holds two JSON objects showing the names and age of 2 employees. Likewise sales is also an array which holds two JSON objects showing the name and ago of the two employees who work in sales. All of this data exists within the employees object. There are several different ways to access this data.
Accessing Data In JSON

The most common way to access JSON data is through dot notation. This is simply the object name followed by a period and then followed by the name/property you would like to access.

var myObject = { 'color' : 'blue' };

document.writeln(myObject.color); // outputs blue.

If your object contains an object then just add another period and name…

var myObject = { 'color' : 'blue',
'animal' : {'dog' : 'friendly' }
};

document.writeln(myObject.animal.dog); // outputs friendly

Using the "employee" example above, if we wanted to access the first person who worked in sales…

document.writeln(employees.sales[0].firstName + ' ' + employees.sales[0].lastName);

We can also access the second person who works in "accounting".

document.writeln(employees.accounting[1].firstName + ' ' + employees.accounting[1].lastName);

To recap, the "employee" example is an object which holds two arrays each of which holds two additional objects. The only limits to the structure are the amount of storage and memory available to it. Because JSON can store objects within objects within objects and arrays within arrays that can also store objects, there is no virtual limit to what a JSON object can store. Given enough memory and storage requirement, a simple JSON data structure can store, and properly index, all the information ever generated by humanity.
Simulating An Associative Array

You can also access JSON data as if it were an Associative Array.

var myFirstJSON = { "firstName" : "John",
"lastName" : "Doe",
"age" : 23 };

document.writeln(myFirstJSON["firstName"]); // Outputs John
document.writeln(myFirstJSON["lastName"]); // Outputs Doe
document.writeln(myFirstJSON["age"]); // Outputs 23

Be aware that this is NOT an associative array, however it appears. If you attempt to loop through myFirstObject you will get, in addition to the three properties above, any methods or prototypes assigned to the object, so while you're more than free to use this method of addressing JSON data, just treat it for what it is (Object Properties) and not for what it is not (Associative Array).



Mais em: http://www.hunlock.com/blogs/Mastering_JSON_(_JavaScript_Object_Notation_)

segunda-feira, agosto 25, 2008

JSON - Javascript Object Notation

JSON (JavaScript Object Notation - Notação de Objetos JavaScript) é uma formatação leve de troca de dados. Para seres humanos, é fácil de ler e escrever. Para máquinas, é fácil de interpretar e gerar. Está baseado em um subconjunto da linguagem de programação JavaScript, Standard ECMA-262 3a Edição -Dezembro - 1999.
JSON é em formato texto e completamente independente de linguagem, pois usa convenções que são familiares às linguagens C e familiares, incluindo C++, C#, Java, JavaScript, Perl, Python e muitas outras. Estas propriedades fazem com que JSON seja um formato ideal de troca de dados.

JSON está constituído em duas estruturas:

  • Uma coleção de pares nome/valor. Em várias linguagens, isto é caracterizado como um object, record, struct, dicionário, hash table, keyed list, ou arrays associativas.
  • Uma lista ordenada de valores. Na maioria das linguagens, isto é caracterizado como uma array, vetor, lista ou sequência.

Estas são estruturas de dados universais. Virtualmente todas as linguagens de programação modernas as suportam, de uma forma ou de outra. É aceitavel que um formato de troca de dados que seja independente de linguagem de programação se baseie nestas estruturas.

Em JSON, os dados são apresentados desta forma:

Um objeto é um conjunto desordenado de pares nome/valor. Um objeto começa com { (chave de abertura) e termina com } (chave de fechamento). Cada nome é seguido por : (dois pontos) e os pares nome/valor são seguidos por , (vírgula).

Uma array é uma coleção de valores ordenados. O array começa com [ (conchete de abertura) e termina com ] (conchete de fechamento). Os valores são separados por , (vírgula).

Um valor (value, na imagem acima) pode ser uma cadeia de caracteres (string), ou um número, ou true ou false, ou null, ou um objeto ou uma array. Estas estruturas podem estar aninhadas.

Uma string é uma coleção de nenhum ou mais caracteres Unicode, envolvido entre aspas duplas usando barras invertidas como caracter de escape. Um caracter está representando como um simples caracter de string. Uma cadeia de caracteres é parecida com uma cadeia de caracteres em C ou Java.

Um número é similar a um número em C ou Java, exceto quando não se usa os números octais ou hexadecimais.

Espaços em branco podem ser inseridos em quanlquer parte dos símbolos. Exceto pequenos detalhes de codificação, a linguagem é completamente descrita.




Podem consultar exemplos de JSON em http://www.json.org/json-pt.html

Music MySpace


Youtube Channel

Videos Watched: 1,789
Videos Uploaded: 38
Video Views: 57,433
Favorites: 2
Channel Type: Musician
Channel Views: 1,108
Subscribers: 11


Entretanto, lancei a minha primeira música original, que se intitula "Someone I Knew". De facto, a qualidade da gravaçao não é a melhor, visto que isto é apenas uma demo, tinha como objectivo ver como ficava.

Hélder Nascimento - Vocals, Acoustic Guitar and Electric Guitar


Someone I Knew



" what's getting bigger
Inside me?
Go deep, my digger
I'm ready to see

Don't fall
Don't die
Stand and crawl
Touch the sky


Go outside
Embrace yourself
Believe... in people
Believe... yourself
Smile...Smile...
Smile...Smile...
Smile...Smile...
Smile...Smile...


There was this kid, he just lost his smile
Became sad since the begining of the mile
The other day I heard myself screaming
Young boy didn't want to keep dreaming


Ignored
Alone at home
Sad and Ugly
Despised by everyone
HATE! Hate...
Hate...Hate...
Hate...Hate...
Hate...Hate...


Now I just don't care
And I'm too old to swear
Believe in your life
And just realize that...

The world is just too beautiful to fall down
People are just too beautiful to be crying
Your life runs fast, but don't mind that now
Just close your eyes and imagine you'r flying...

flying...
flying...
flying...
flying! "

AjaxPro - Ajax for Microsoft.NET Framework 2.0 and 1.1

Ajax.NET Professional

Microsoft.NET Framework 2.0 and 1.1

There are two new screen casts available to show how to use AjaxPro:

  • Lesson 1 How to change a feedback form to use AjaxPro
  • Lesson 2 How to use asynchronous methods to prevent web browser blocking

Below you will find some example web pages that are using Ajax.NET to get rid of the postback in typical ASP.NET applications:



Mais info aqui.

domingo, agosto 24, 2008

Liga SAGRES: Benfica desliza no arranque

O Benfica não foi além do empate (1-1) no jogo com o Rio Ave, que encerrou a jornada inaugural da Liga. Semedo (56) e Nuno Gomes (57) apontaram os golos da partida, disputada a ritmo intenso e pautada por grande equilíbrio. Águias deixam dois pontos em Vila do Conde... antes da recepção ao FC Porto.



Era grande a expectativa para o primeiro jogo oficial do Benfica sob orientação de Quique Flores – as bancadas do Estádio do Rio Ave pintaram-se de encarnado –, mas a divisão de pontos deixa um amargo de boca no universo benfiquista. De regresso ao escalão principal do futebol português, o Rio Ave fez prevalecer o estatuto de adversário incómodo, rubricando exibição aguerrida, solidária e muito personalizada ao longo dos 90 minutos.

O jogo disputou-se com ritmo de parada e resposta, com lances de perigo junto das duas balizas, mas apenas na etapa complementar o marcador sairia do «nulo». Antes, registo para a saída forçada de Carlos Martins (minuto 27), depois de protagonizar choque violento de cabeça com Yebda – imprevisto que prejudicou em muito a exibição da equipa, faltando quem assumisse o jogo no miolo do terreno.

Foi o Rio Ave o primeiro a chegar ao golo, por intermédio de Semedo, à passagem do minuto 56. Quique Flores lançara Nuno Gomes para formar dupla com Cardozo no ataque, fazendo sair Ruben Amorim, e a aposta revelou-se certeira, pois foi o avançado português a restabelecer a igualdade no lance imediato.

Até final da partida, o Benfica «carregou» à procura do golo da vitória e podia tê-lo conseguido em duas ocasiões, ao «cair do pano», por Aimar e Balboa, mas a igualdade manter-se-ia até ao derradeiro apito de João Capela.

Os encarnados estreiam-se assim na Liga com um empate, perdem dois pontos para Sporting e FC Porto, isto na antecâmara da recepção ao tricampeão nacional, no próximo sábado.


Estádio do Rio Ave, em Vila do Conde

Árbitro: João Capela (Lisboa)

Rio Ave: Paiva; Miguel Lopes, Gaspar, Bruno Mendes e Sílvio; André Vilas Boas, Livramento (André Carvalhas, 90+2), Evandro e Delson; Semedo (Ronaldo, 72m) e Tarantini (Niquinha, 82m)

Suplentes não utilizados: Mora, Henrique, Jorge Humberto e Wires

Benfica: Quim; Maxi, Luisão, Katsouranis e Léo; Ruben Amorim (Nuno Gomes, 46m), Carlos Martins (Fellipe Bastos, 28m), Yebda e Urreta (Balboa, 70m); Aimar e Cardozo

Suplentes não utilizados: Moreira, Sidnei, Binya e Makukula

Disciplina: Cartão amarelo a Miguel Lopes (45+2), Fellipe Bastos (49m), Livramento (69m) e Luisão (78m)

Marcadores: 1-0, Semedo (56m); 1-1, Nuno Gomes (57m)



Fonte: A Bola

Volta a Portugal 2008


Geral individual:

1. David Blanco, Esp (Palmeiras-Tavira), 39:49.45 horas
2. Hector Guerra, Esp (Liberty Seguros), a 26 segundos
3. Ruben Plaza, Esp (Liberty Seguros), a 3.59 minutos
4. Juan Jose Cobo, Esp (Scott-American Beef), a 4.42
5. Koldo Gil, Esp (Liberty Seguros), a 5.39
6. Francisco Mancebo, Esp (Fercase-R.Móveis), a 6.36
7. Rui Sousa, Por (LIberty Seguros), a 6.39
8. Cƒndido Barbosa, Por (Benfica), a 7.00
9. Tiago Machado, Por (Madeinox-Boavista), a 7.53
10. Daniel Martin, Irl (Garmin-Chipotle), a 8.04

Geral por equipas:

1. Liberty Seguros, Por, 119:40.42 horas
2. Benfica, Por, a 13.18 minutos
3. Palmeiras-Tavira, a 18.09

Pontos:

1. Francisco Pacheco, Por (Barot-Siper), 130 pontos
2. Hector Guerra, Esp (LIberty Seguros), 95
3. David Blanco, Esp (Palmeiras-Tavira), 87

Montanha:

1. Rui Sousa, Por (Liberty Seguros), 84 pontos
2. Koldo Gil, Esp (Liberty Seguros), 53
3. David Blanco, Esp (Palmeiras-Tavira), 41

Juventude:

1. Tiago Machado, Por (Madeinox-Boavista)
2. Daniel Martin, Irl (Garmin-Chipotle)
3. Jose Herrada, Esp (Contentpolis-Murcia)

Jogos Olímpicos 2008 :: EUA batem Espanha em final para a história



Na final mais prolífica da história dos Jogos Olímpicos, os Estados Unidos reconquistaram a medalha de ouro que lhe fugiu há 4 anos mas a Espanha vendeu muito cara a derrota que já se esperava, oferecendo um jogo do melhor que já se viu.

Sem o lesionado Calderón e com um rapaz de 17 anos como primeiro base - Ricky Rubio é o mais jovem de sempre a jogar uma final olímpica da modalidade -, os espanhóis nunca deixaram alargar a diferença apesar da superioridade evidenciada pelos norte-americanos, que acabaram por ganhar com 11 pontos de vantagem (118-107).

Numa partida em que a pontuação superou mesmo a do ano glorioso do Dream Team original - em 1992, na estreia dos jogadores profissionais da NBA em Jogos Olímpicos, os EUA bateram a Croácia na final por 117-85 -, o destaque vai para a primeira parte, fase em que as estrelas norte-americanas marcaram 69 pontos, contra 61 dos europeus.

Com percentagens quase inacreditáveis - o jogo terminou com os EUA a registarem 70% por cento nos lançamentos de 2 pontos e 46% nos triplos, enquanto a Espanha se ficava pelos 53% e 47%, respectivamente -, houve cestos para todos os gostos e espectáculo do princípio ao fim.

Dwyane Wade, com 27 pontos - não falhou qualquer lançamento de 2 e converteu 4 em 7 nos triplos -, foi a principal figura entre os norte-americanos, sendo muito bem acompanhado por Kobe Bryant (20), LeBron James (14), Chris Paul (13) e Carmelo Anthony (13).

Nos "nuestros hermanos", campeões do Mundo mas a fazerem um jogo como poucos estariam à espera, contaram com as suas estrelas ao melhor nível - Rudy Fernandez (22 pontos), Pau Gasol (21) e Juan Carlos Navarro (18) - mas não só. Carlos Jimenez (12), Marc Gasol (11) e Felipe Reyes (10) também chegaram à dezena de pontos e o jovem Ricky Rubio (6 pontos, 6 ressaltos, 3 assistências e 3 roubos de bola) nunca se mostrou inibido frente aos melhores atletas do Mundo. "

@ Record



Comentário: Custou-me imenso levantar às 7h30. E quem me conhece, sabe bem que eu não gosto nada de levantar cedo. No entanto, fiz o sacrifício. Valeu bem a pena. Um jogo emotivo, cheio de grandes momentos, percentagens de lançamentos altíssimas, um hino ao basquetebol. Fantástico.

Jogos Olímpicos 2008 :: Cerimónia de Encerramento









Photo: Fireworks explode over Bird's Nest

Photo: A London double decker bus

Photo: Fireworks explode

Photo: Fireworks explode over Bird's Nest

Photo: Acrobats perform on memory tower

Photo: General view of the festivities

Photo: General view of the festivities

Photo:

Photo: Acrobats perform on memory tower

Photo: A general view of the festivities

Jogos Olímpicos 2008 :: Lista de todos os Vencedores



ANDEBOL

Masculinos

1. França
2. Islândia
3. Espanha

Femininos

1. Noruega
2. Rússia
3. Coreia do Sul

ATLETISMO

Masculinos

- Triplo-salto:
1. NELSON ÉVORA (PORTUGAL)
2. Phillips Idowu (Grã-Bretanha)
3. Leevan Sands (Bahamas)

- 100 metros:
1. Usain Bolt (Jamaica)
2. Richard Thompson (Trindade e Tobago)
3. Walter Dix (EUA)

- 110 metros barreiras:
1. Dayron Robles (Cuba)
2. David Payne (EUA)
3. David Oliver (EUA)

- 200 metros:
1. Usain Bolt (Jamaica)
2. Shawn Crawford (EUA)
3. Walter Dix (EUA)

- 800 metros:
1. Wilfred Bungei (Quénia)
2. Ismail Ahmed Ismail (Sudão)
3. Alfred Kirwa Yego (Quénia)

- 1.500 metros:
1. Rashid Ramzi (Bahrain)
2. Asbel Kipruto Kiprop (Quénia)
3. Nicholas Willis (Nova Zelândia)

- 3.000 metros obstáculos:
1. Brimin Kiprop Kipruto (Quénia)
2. Mahiedine Mekhissi-B. (França)
3. Richard Kipkemboi Mateelong (Quénia)

- 5.000 metros:
1. Kenenisa Bekele (Etiópia)
2. Eliud Kipchoge (Quénia)
3. Edwin Cheruiyot Soi (Quénia)

- 10.000 metros:
1. Kenenisa Bekele (Etiópia)
2. Sileshi Sihine (Etiópia)
3. Micah Kogo (Quénia)

- Maratona:
1. Samuel Kamau Wansiru (Quénia)
2. Jaouad Gharib (Marrocos)
3. Tsegay Kebede (Etiópia)

- Salto em comprimento:
1. Irving Jahir Saladino Aranda (Panamá)
2. Khotso Mokoena (África do Sul)
3. Ibrahim Camejo (Cuba)

- Salto em altura:
1. Andrey Silnov (Rússia)
2. Germaine Mason (Grã-Bretanha)
3. Yaroslav Rybakov (Rússia)

- Salto com vara:
1. Steve Hooker (Austrália)
2. Evgeny Lukyanenko (Rússia)
3. Denys Yurchenko (Ucrânia)

- Lançamento do dardo:
1. Andreas Thorkildsen (Noruega)
2. Ainars Kovals (Letónia)
3. Tero Pitkamaki (Finlândia)

- Lançamento do disco:
1. Gerd Kanter (Estónia)
2. Piotr Malachowski (Polónia)
3. Virgilijus Alekna (Lituânia)

- Lançamento do martelo:
1. Primoz Kozmus (Eslovénia)
2. Vadim Devyatovskiy (Bielorrússia)
3. Ivan Tsikhan (Bielorrússia)

- Lançamento do peso:
1. Tomasz Majewski (Polónia)
2. Christian Cantwell (EUA)
3. Andrei Mikhnevich (Bielorrússia)

- Decatlo:
1. Bryan Clay (Estados Unidos)
2. Andrei Krauchanka (Bielorrússia)
3. Leonel Suarez (Cuba)

- 20 km marcha:
1. Valeriy Borchin (Rússia)
2. Jefferson Perez (Equador)
3. Jared Tallent (Austrália)

- 50 km marcha:
1. Alex Schwazer (Itália)
2. Jared Tallent (Austrália)
3. Denis Nizhegorodov (Rússia)

- 4x100 metros:
1. Jamaica (Nesta Carter/Michael Frater/Usain Bolt/Asafa Powell)
2. Trindade e Tobago (Keston Bledman/Marc Burns/Emmanuel Callender/Richard Thompson)
3. Japão (Naoki Tsukahara/Shingo Suetsugu/Shinji Takahira/Nobuharu Asahara)

- 4x400 metros:
1. EUA (LaShawn Merritt/Angelo Taylor/David eville/Jeremy Wariner)
2. Bahamas (Andretti Bain/Michael Mathieu/Andrae Williams/Christopher Brown)
3. Rússia (Maksim Dyldin/Vladislav Frolov/Anton Kokorin/Denis Alekseyev)

Femininos

- 100 metros:
1. Shelly-Ann Fraser (Jamaica)
2. Sherone Simpson (Jamaica)
2. Kerron Stewart (Jamaica)

- 100 metros barreiras:
1. Dawn Harper (EUA)
2. Sally McLellan (Austrália)
3. Priscilla Lopes-Schliep (Canadá)

- 200 metros:
1. Veronica Campbell-Brown (Jamaica)
2. Allyson Felix (EUA)
3. Kerron Stewart (Jamaica)

- 400 metros:
1. Christine Ohuruogu (Grã-Bretanha)
2. Shericka Williams (Jamaica)
3. Sanya Richards (EUA)

- 400 metros barreiras:
1. Melaine Walker (Jamaica)
2. Sheena Tosta (Estados Unidos)
3. Tasha Danvers (Grã-Bretanha)

- 800 metros:
1. Pamela Jelimo (Quénia)
2. Janeth Jepkosgei Busienei (Quénia)
3. Hasna Benhassi (Marrocos)

- 1 500 metros:
1. Nancy Jebet Langat (Quénia)
2. Iryna Lishchynska (Ucrânia)
3. Nataliya Tobias (Ucrânia)

- 3.000 metros obstáculos:
1. Gulnara Galkina-Samitova (Rússia)
2. Eunice Jepkorir (Quénia)
3. Ekaterina Volkova (Rússia)

- 5.000 metros:
1. Tirunesh Dibaba (Etiópia)
2. Elvan Abeylegesse (Turquia)
3. Meseret Defar (Etiópia)

- 10.000 metros:
1. Tirunesh Dibaba (Etiópia)
2. Elvan Abeylegesse (Turquia)
3. Shalane Flanagan (EUA)

- Maratona:
1. Constantina Tomescu (Roménia)
2. Catherine Ndereba (Quénia)
3. Zhou Chunxiu (China)

- Salto em comprimento:
1. Maurren Higa Maggi (Brasil)
2. Tatyana Lebedeva (Rússia)
3. Blessing Okagbare (Nigéria)

- Salto em altura:
1. Tia Hellebaut (Bélgica)
2. Blanka Vlasic (Croácia)
3. Anna Chicherova (Rússia)

- Salto com vara:
1. Elena Isinbayeva (Rússia)
2. Jennifer Stuczynski (EUA)
3. Svetlana Feofanova (Rússia)

- Triplo-salto:
1. Francoise Mbango Etone (Camarões)
2. Tatyana Lebedeva (Rússia)
3. Hrysopiyi Devetzi (Grécia)

- Lançamento do dardo:
1. Barbora Spotakova (Rep.Checa)
2. Maria Abakumova (Rússia)
3. Christina Obergfoll (Alemanha)

- Lançamento do disco:
1. Stephanie Brown Trafton (EUA)
2. Yarelys Barrios (Cuba)
3. Olena Antonova (Ucrânia)

- Lançamento do martelo:
1. Aksana Miankova (Bielorrússia)
2. Yipsi Moreno (Cuba)
3. Zhang Wenxiu (China)

- Lançamento do peso:
1. Valerie Vili (Nova Zelândia)
2. Natalia Mikhnevich (Bielorrússia)
3. Nadzeya Ostapchuk (Bielorrússia)

- Heptatlo:
1. Natalia Dobrynska (Ucrânia)
2. Hyleas Fountain (EUA)
3. Tatiana Chernova (Rússia)
- Lyudmila Blonska (Ucrânia) foi 2.ª mas desclassificada por doping

- 20 km marcha:
1. Olga Kaniskina (Rússia)
2. Kjersti Platzer (Noruega)
3. Elisa Rigaudo (Itália)

- 4x100 metros:
1. Rússia (Evgeniya Polyakova/Aleksandra Fedoriva/Yulia Gushchina/Yuliya Chermoshanskaya)
2. Bélgica (Olivia Borlee/Hanna Marien/Elodie Ouedraogo/Kim Gevaert)
3. Nigéria (Franca Idoko/Gloria Kemasuode/Halimat Ismaila/Oludamola Osayomi)

- 4x400 metros:
1. EUA (Mary Wineberg/Allyson Felix/Monique Henderson/Sanya Richards)
2. Rússia (Yulia Gushchina/Lyudmila Litvinova/Tatyana Firova/Anastasiya Kapachinskaya)
3. Jamaica (Shericka Williams/Shereefa Lloyd/Rosemarie Whyte/Novlene Williams)

BADMINTON

Masculinos

- Singulares:
1. Dan Lin (China)
2. Chong Wei Lee (Malásia)
3. Jin Chen (China)

- Pares:
1. Markis Kido/Hendra Setiawan (Indonésia)
2. Fu Haifeng/Cai Yun (China)
3. Lee Jae-jin/Hwang Ji-man (Coreia do Sul)

Femininos

- Singulares:
1. Zhang Ning (China)
2. Xie Xingfang (China)
3. Maria Kristin Yulianti (Indonésia)

- Pares:
1. Jing Du/Yang Yu (China)
2. Hyojung Lee/Kyungwon Lee (Coreia do Sul)
3. Yili Wei/Yawen Zhang (China)

Pares mistos

1. Lee Yongdae/Lee Hyojung (Coreia do Sul)
2. Nova Widianto/Liliyana (Indonésia)
3. He Hanbin/Yu Yang (China)

BASEBOL

1. Coreia do Sul
2. Cuba
3. Estados Unidos

BASQUETEBOL

Masculinos

1. Estados Unidos
2. Espanha
3. Argentina

Femininos

1. Estados Unidos
2. Austrália
3. Rússia

BOXE

-48 kg:
1.Shiming Zou (China)
2.Serdamba Purevdorj (Mongólia)
3. Yampier Hernandez (Cuba)
. Paddy Barnes (Rep. Irlanda)

-51 kg:
1. Somjit Jongjohor (Tailândia)
2. Andry Laffita (Cuba)
3. Vincenzo Picardi (Itália)
. Georgy Balakshin (Rússia)

-54 kg:
1. Badar-Uugan Enkhbat (Mongólia)
2. Yankiel Leon Alarcon (Cuba)
3. Bruno Julie (Ilhas Maurícias)
. Veaceslav Gojan (Moldávia)

-57 kg:
1. Vasyl Lomachenko (Ucrânia)
2. Khedafi Djelkhir (França)
3. Yakup Kilic (Turquia)
. Shahin Imranov (Azerbaijão)

-60 kg:
1. Alexey Tishchenko (Rússia)
2. Daouda Sow (França)
3. Hrachik Javakhyan (Arménia)
. Yordenis Ugas (Cuba)

-64 kg:
1. Felix Diaz (República Dominicana)
2. Manus Boonjumnong (Tailândia)
3. Rosniel Iglesias (Cuba)
. Alexis Vastine (França)

-69 kg:
1. Bakhyt Sarsekbayev (Cazaquistão)
2. Carlos Banteaux Suarez (Cuba)
3. Silamu Hanati (China)
. Kim Jung-joo (Coreia do Sul)

-75 kg:
1. James Degale (Grã-Bretanha)
2. Emilio Correa Bayeaux (Cuba)
3. Vijender Kumar (Índia)
. Darren John Sutherland (Irlanda)

- 81 kg:
1. Zhang Xiaoping (China)
2. Kenny Egan (Rep. Irlanda),
3. Tony Jeffries (Grã-Bretanha),
. Yerkebulan Shynaliyev (Cazaquistão)

-91 kg:
1. Rakhim Chakhkiev (Rússia)
2. Clemente Russo (Itália)
3. Deontay Wilder (EUA)
. Osmai Acosta Duarte (Cuba)

+91 kg:
1. Roberto Cammarelle (Itália)
2. Zhang Zhilei (China)
3. David Price (Grã-Bretanha)
. Vyacheslav Glazkov (Ucrânia)

CANOAGEM

Masculinos

- "Slalom" K1:
1. Alexander Grimm (Alemanha)
2. Fabien Lefevre (França)
3. Benjamin Boukpeti (Togo)

- "Slalom" C1:
1. Michal Martikan (Eslováquia)
2. David Florence (Grã Bretanha)
3. Robin Bell (Austrália)

- "Slalom" C2:
1. Eslováquia (Pavol Hochschorner/Peter Hochschorner)
2. República Checa (Jaroslav Volf/Ondrej Stepanek)
3. Rússia (Mikhail Kuznetsov/Dmitry Larionov)

- K1 500 metros:
1. Ken Wallace (Austrália)
2. Adam van Koeverden (Canadá)
3. Tim Brabants (Grã-Bretanha)

- C1 500 metros:
1. Maxim Opalev (Rússia)
2. David Cal (Espanha)
3. Iurii Cheban (Ucrânia)

- K2 500 metros:
1. Espanha (Saul Craviotto/Carlos Perez)
2. Alemanha (Ronald Rauhe/Tim Wieskotter)
3. Bielorrússia (Raman Piatrushenka/Vadzim Makhneu)

- C2 500 metros:
1. Chine (Guanliang Meng/Wenjun Yang)
2. Rússia (Sergey Ulegin/Alexander Kostoglod)
3. Alemanha (Christian Gille/Thomasz Wylenzek)

- K1 1000 metros:
1. Tim Brabants (Grã-Bretanha)
2. Eirik Veraas Larsen (Noruega)
3. Ken Wallace (Austrália)

- C1 1000 metros:
1. Attila Sandor Vajda (Hungria)
2. David Cal (Espanha)
3. Thomas Hall (Canadá)

- K2 1000 metros:
1. Alemanha (Martin Hollstein/Andreas Ihle)
2. Dinamarca (Kim Wraae Knudsen/Rene Holten Poulsen)
3. Itália (Andrea Facchin/Antonio Massimiliano Scaduto)

- C2 1000 metros:
1. Bielorrússia (Andrei Bahdanovich/Aliaksandr Bahdanovich)
2. Alemanha (Christian Gille/Thomasz Wylenzek)
3. Hungria (Kozmann, Kiss)

- K4 1000 metros:
1. Bielorrússia (Raman Piatrushenka/Aliaksei Abalmasau/Artur Litvinchuk/Vadzim Makhneu)
2. Eslováquia (Richard Riszdorfer/Michal Riszdorfer/Erik Vlcek/Juraj Tarr)
3. Alemanha (Lutz Altepost/Norman Brockl/Torsten Eckbrett/Bjorn Goldschmidt)

Femininos

- "Slalom" K1:
1. Elena Kaliska (Eslováquia)
2. Jacqueline Lawrence (Austrália)
3. Violetta Oblinger Peters (Áustria)

- K1 500 metros:
1. Inna Osypenko-Radomska (Ucrânia)
2. Josefa Idem (Itália)
3. Katrin Wagner-Augustin (Alemanha)

- K2 500 metros:
1. Hungria ((Katalin Kovacs/Natasa Janic)
2. Polónia (Beata Mikolajczyk/Aneta Konieczna)
3. França (Marie Delattre/Anne-Laure Viard)

- K4 500 metros:
1. Alemanha (Fanny Fischer/Nicole Reinhardt/Katrin Wagner-Augustin/Conny Wassmuth)
2. Hungria (Katalin Kovacs/Gabriella Timea Szabo/Danuta Kozak/Natasa Janic), 1:32.971
3. Austrália (Lisa Oldenhof/Hannah Davis/Chantal Meek/Lyndsie Fogarty), 1:34.704

CICLISMO

Masculinos

- Prova de estrada:
1. Samuel Sanchez (Espanha)
2. Davide Rebellin (Itália)
3. Fabian Cancellara (Suíça)

- Contra-relógio:
1. Fabian Cancellara (Suíça)
2. Gustav Larsson (Suécia)
3. Levi Leipheimer (EUA)

- Sprint:
1. Chris Hoy (Grã-Bretanha)
2. Jason Kenny (Grã-Bretanha)
3. Mickael Bourgain (França)

- Sprint por equipas:
1. Grã-Bretanha
2. França
3. Alemanha

- Perseguição individual:
1. Bradley Wiggins (Grã-Bretanha)
2. Hayden Roulston (Nova Zelândia)
3. Steven Burke (Grã-Bretanha)

- Perseguição por equipas:
1. Grã-Bretanha
2. Dinamarca
3. Nova Zelândia

- Corrida por pontos:
1. Joan Llaneras (Espanha)
2. Roger Kluge (Alemanha)
3. Chris Newton (Grã-Bretanha)

- Keirin:
1. Chris Hoy (Grã-Bretanha)
2. Ross Edgar (Grã-Bretanha)
3. Kiyofumi Nagai (Japão)

- Madison:
1. Argentina (Juan Curuchet/Walter Perez)
2. Espanha (Joan Llaneras/Antonio Tauler)
3. Rússia (Mikhail Ignatyev/Alexei Markov)

- BMX:
1. Maris Strombergs (Letónia)
2. Mike Day (EUA)
3. Donny Robinson (EUA)

- BTT - cross-country:
1. Julien Absalon (França)
2. Jean-Christophe Peraud (França)
3. Nino Schurter (Suíça)

Femininos

- Prova de estrada:
1. Nicole Cooke (Grã-Bretanha)
2. Emma Johansson (Suécia)
3. Tatiana Guderzo (Itália)

- Contra-relógio:
1. Kristin Armstrong (EUA)
2. Emma Pooley (Grã-Bretanha)
3. Karin Thurig (Suíça)

- Sprint:
1. Victoria Pendleton (Grã-Bretanha)
2. Anna Meares (Austrália)
3. Guo Shuang (China)

- Perseguição individual:
1. Rebecca Romero (Grã-Betanha)
2. Wendy Houvenaghel (Grã-Bretanha)
3. Lesya Kalitovska (Ucrânia)

- Corrida por pontos:
1. Marianne Vos (Holanda)
2. Yoanka Gonzalez (Cuba)
3. Leire Olaberria (Espanha)

- BMX:
1. Anne-Caroline Chausson (França)
2. Laetitia Le Corguille (França)
3. Jill Kintner (EUA)

- BTT - cross-country:
1. Sabine Spitz (Alemanha)
2. Maja Wloszczowska (Polónia)
3. Irina Kalentyeva (Rússia)

EQUESTRE

- Concurso completo individual:
1. Hinrich Romeike (Alemanha/Marius)
2. Gina Miles (EUA/McKinlaigh)
3. Kristina Cook (Grã-Bretanha/Miners Frolic)

- Concurso completo por equipas:
1. Alemanha
2. Austrália
3. Grã-Bretanha

- Ensino individual:
1. Anky van Grunsven (Holanda/Salinero)
2. Isabell Werth (Alemanha/Satchmo)
3. Heike Kemmer (Alemanha/Bonaparte)

- Ensino por equipas:
1. Alemanha
2. Holanda
3. Dinamarca

- Salto de obstáculos individual:
1. Eric Lamaze (Canadá/Hickstead)
2. Rolf-Goran Bengtsson (Suécia/Ninja)
3. Beezie Madden (EUA/Authentic)

- Salto de obstáculos por equipas:
1. EUA
2. Canadá
3. Noruega

ESGRIMA

Masculinos

- Espada individual:
1. Matteo Tagliariol (Itália)
2. Fabrice Jeannet (França)
3. Jose Luis Abajo (Espanha)

- Florete individual:
1. Benjamin Philip Kleibrink (Alemanha)
2. Yuki Ota (Japão)
3. Salvatore Sanzo (Itália)

- Sabre individual:
1. Zhong Man (China)
2. Nicolas Lopez (França)
3. Mihai Covaliu (Roménia)

- Espada por equipas:
1. França (Jerome Jeannet/Fabrice Jeannet/Ulrich Robeiri)
2. Polónia (Tomasz Motyka/Robert Andrzejuk/Radoslaw Zawrotniak)
3. Itália (Diego Confalonieri/Alfredo Rota/Mateo Tagliariol/Stefano Carozzo)

- Sabre por equipas:
1. França (Nicolas Lopez/Julien Pillet/Boris Sanson)
2. EUA (Tim Morehouse/Jason Rogers/Keeth Smart/James Williams)
3. Itália (Aldo Montano/Diego Occhiuzzi/Giampiero Pastore/Luigi Tarantino)

Femininos

- Espada individual:
1. Britta Heidemann (Alemanha)
2. Ana Maria Branza (Roménia)
3. Ildiko Mincza-Nebald (Hungria)

- Florete individual:
1. Maria Valentina Vezzali (Itália)
2. Nam Hyunhee (Coreia do Sul)
3. Margharita Granbassi (Itália)

- Sabre individual:
1. Mariel Zagunis (EUA)
2. Sada Jacobson (EUA)
3. Becca Ward (EUA)

- Florete por equipas:
1. Rússia (Victoria Nikichina/Svetlana Boyko/Evgenia Lamonova)
2. EUA (Emily Cross/Hanna Thompson/Erinn Smart)
3. Itália (Ilaria Salvatori/Maria Valentina Vezzali/Margherita Granbassi)

- Sabre por equipas:
1. Ucrânia (Olga Kharlan/Olena Khomrova/Halyna Pundyk/Olha Zhovnir)
2. China (Yingying Bao/Haiyang Huang/Hong Ni/Xue Tan)
3. EUA (Sada Jacobson/Becca Ward/Mariel Zagunis)

FUTEBOL

Masculinos

1. Argentina
2. Nigéria
3. Brasil

Femininos

1. Estados Unidos
2. Brasil
3. Alemanha

GINÁSTICA

Masculinos

- Artística - Equipas:
1. China
2. Japão
3. EUA

- Artística - concurso geral individual:
1. Yang Wei (China)
2. Kohei Uchimura (Japão)
3. Benoit Caranobe (França)

- Artística - solo:
1. Zou Kai (China)
2. Gervasio Deferr (Espanha)
3. Anton Golotsutskov (Rússia)

- Artística - cavalo com arções:
1. Xiao Qin (China)
2. Filip Ude (Croácia)
3. Louis Smith (Grã-Bretanha)

- Artística - argolas:
1. Chen Yibing (China)
2. Yang Wei (China)
3. Oleksandr Vorobiov (Ucrânia)

- Artística - salto de cavalo:
1. Leszek Blanik (Polónia)
2. Thomas Bouhail (França)
3. Anton Golotsutskov (Rússia)

- Artística - barras paralelas:
1. Li Xiaopeng (China)
2. Yoo Wonchul (Coreia do Sul)
3. Anton Fokin (Uzbequistão)

- Artística - barra fixa:
1. Zou Kai (China)
2. Jonathan Horton (EUA)
3. Fabian Hambuechen (Alemanha)

Femininos

- Artística - equipas:
1. China
2. Estados Unidos
3. Roménia

- Artística - concurso geral individual:
1. Nastia Liukin (Estados Unidos)
2. Shawn Johnson (Estados Unidos)
3. Yang Yilin (China)

- Artística - salto de cavalo:
1. Hong Un Jong (Coreia do Norte)
2. Oksana Chusovitina (Alemanha)
3. Cheng Fei (China)

- Artística - solo:
1. Sandra Izbasa (Roménia)
2. Shawn Johnson (EUA)
3. Nastia Liukin (EUA)

- Artística - barras assimétricas:
1. He Kexin (China)
2. Nastia Liukin (EUA)
3. Yang Yilin (China)

- Artística - trave:
1. Shawn Johnson (EUA)
2. Nastia Liukin (EUA)
3. Cheng Fei (China)

- Rítmica - concurso geral individual:
1. Evgeniya Kanaeva (Rússia)
2. Inna Zhukova (Bielorrússia)
3. Anna Bessonova (Ucrânia)

- Rítmica - concurso geral por equipas:
1. Rússia (Aliychuk, Gavrilenko, Gorbunova, Posevina, Shkurikhina e Zueva)
2. China (Cai, Chou, Lu, Sui, Sun e Zhang)
3. Bielorrússia (Babushkina, Ivankova, Lunina, Martinovich, Sankovich e Tumilovich)

HALTEROFILISMO

Masculinos

-56 kg:
1. Qingquan Long (China)
2. Hoang Anh Tuan (Vietname)
3. Eko Yuli Irawan (Indonésia)

-62 kg:
1. Zhang Xianqxiang (China)
2. Diego Salazar (Colômbia)
3. Triyatno (Indonésia)

-69 kg:
1. Liao Hui (China)
2. Vencelas Dabaya-Tientchev (França)
3. Tigran Gevorg Martirosyan (Arménia)

-77 kg:
1. Sa Jaeh-youk (Coreia do Sul)
2. Li Hongli (China)
3. Gevorg Davtyan (Arménia)

-85 kg:
1. Lu Yong (China)
2. Andrei Ribakou (Bielorrússia)
3. Tigran Martirosyan (Arménia)

-94 kg:
1. Ilya Ilin (Cazaquistão)
2. Szymon Kolecki (Polónia)
3. Khadzhimurat Akkaev (Rússia)

-105 kg:
1. Andrei Aramnau (Bielorrússia)
2. Dmitriy Klokov (Rússia)
3. Dmitry Lapikov (Rússia)

+105 kg:
1. Matthias Steiner (Alemanha)
2. Evgeny Chigishev (Rússia)
3. Viktors Scerbatihs (Letónia)

Femininos

-48 kg:
1. Xiexia Chen (China)
2. Sibel Ozkan (Turquia)
3. Wei-Ling Chen (Taipé)

-53 kg:
1. Prapawadee Jaroenrattanatarakoon (Tailândia)
2. Yoon Jin-hee (Coreia do Sul)
3. Nastassia Novikava (Bielorrússia)

-58 kg:
1. Chen Yangqing (China)
2. Marina Shainova (Rússia)
3. O Jong-ae (Coreia do Norte)

-63 kg:
1. Pak Hyon-suk (Coreia do Norte)
2. Irina Nekrassova (Cazaquistão)
3. Lu Ying-chi (Taipé)

-69 kg:
1. Liu Chunhong (China)
2. Oxana Slivenko (Rússia)
3. Natalya Davydova (Ucrânia)

-75 kg:
1. Cao Lei (China)
2. Alla Vazhenina (Cazaquistão)
3. Nadezda Evstyukhina (Rússia)

+75 kg:
1. Jang Miran (Coreia do Sul)
2. Olha Korobka (Ucrânia)
3. Mariya Grabovetskaya (Cazaquistão)

HÓQUEI EM CAMPO

Masculinos

1. Alemanha
2. Espanha
3. Austrália

Femininos

1. Holanda
2. China
3. Argentina

JUDO

Masculinos

-60 kg:
1. Choi Min-ho (Coreia do Sul)
2. Ludwing Paischer (Áustria)
3. Rishod Sobirov (Uzbequistão)
. Ruben Houkes (Holanda)

-66 kg:
1. Masato Uchishiba (Japão)
2. Benjamin Darbelet (França)
3. Yordanis Arencibia (Cuba)
. Pak Chol-min (Coreia do Norte)

-73 kg:
1. Elnur Mammadli (Azerbaijão)
2. Kichun Wang (Coreia do Sul)
3. Rasul Boqiev (Tajiquistão)
. Leandro Guilheiro (Brasi)

-81 kg:
1. Ole Bischof (Alemanha)
2. Jaebum Kim (Coreia do Sul)
3. Roman Gontiuk (Ucrânia)
. Tiago Camilo (Brasil)

-90 kg:
1. Irakli Tsirekidze (Geórgia)
2. Amar Benikhlef (Argélia)
3. Hesham Mesbah (Egipto)
. Sergei Aschwanden (Suíça)

-100 kg:
1. Tuvshinbayar Naidan (Mongólia)
2. Askhat Zhitkeyev (Cazaquistão)
3. Movlud Miraliyey (Azerbaijão)
. Henk Grol (Holanda)

+100 kg
1. Satoshi Ishii (Japão)
2. Abdullo Tangriev (Geórgia)
3. Teddy Riner (França)
. Oscar Brayson (Cuba)

Femininos

-48 kg:
1. Alina Dumitru (Roménia)
2. Yanet Bermoy (Cuba)
3. Ryoko Tani (Japão)
. Paula Paretto (Argentina)

-52 kg:
1. Xian Dongmei (China)
2. An Kum Ae (Coreia do Norte)
3. Soraya Haddad (Argélia)
. Misato Nakamura (Japão)

-57 kg:
1. Giulia Quintavalle (Itália)
2. Deborah Gravenstijn (Holanda)
3. Ketleyn Quadros (Brasil)
. Yan Xu (China)

-63 kg:
1. Ayumi Tanimoto (Japão)
2. Lucie Decosse (França)
3. Elisabeth Wolleboordse (Holanda)
. Won Ok-im (Coreia do Norte)

-70 kg:
1. Masae Ueno (Japão)
2. Anaysi Hernandez (Cuba)
3. Ronda Rousey (Estados Unidos)
. Edith Bosch (Holanda)

-78 kg:
1. Yang Xiuli (China)
2. Yalennis Castillo (Cuba)
3. Stéphanie Possamai (França)
. Jeong Gveongmi (Coreia do Norte)

+78 kg:
1. Tong Wen (China)
2. Maki Tsukada (Japão)
3. Idalys Ortiz (Cuba)
. Lucija Polavder (Eslovénia)

LUTA GRECO-ROMANA

Masculinos

-55 kg:
1. Nazyr Mankiev (Rússia)
2. Rovshan Bayramov (Azerbaijão)
3. Roman Amoyan (Arménia)
. Eun-Chul Park (Coreia do Sul)

-60 kg:
1. Islam-Beka Albiev (Rússia)
2. Vitaliy Rahimov (Azerbaijão)
3. Nurbakyt Tengizbayev (Cazaquistão)
. Ruslan Tiumenbaev (Quirguistão)

-66 kg:
1. Steeve Guénot (França)
2. Kanatbek Begaliev (Quirguistão)
3. Mikhail Siamionau (Bielorrússia)
. Armen Vardanyan (Ucrânia)

-74 kg:
1. Manuchar Kvirkelia (Geórgia)
2. Yongxiang Chang (China)
3. Yavor Yanakiev (Bulgária)
. Christophe Guénot (França)

-84 kg:
1. Andrea Minguzzi (Itália)
2. Zoltan Fodor (Hungria)
3. Ara Abrahamian (Suécia)
. Nazmi Avluca (Turquia)

-96 kg:
1. Aslanbek Khushtov (Rússia)
2. Mirko Englich (Alemanha)
3. Adam Wheeler (Estados Unidos)
. Asset Mambetov (Cazaquistão)

-120 kg:
1. Mijain Lopez (Cuba)
2. Khasan Baroev (Rússia)
3. Yuri Patrikeev (Arménia)
Mindaugas Mizgaitis (Lituânia)

LUTA LIVRE

Masculinos

-55 kg:
1. Henry Cejudo (Estados Unidos)
2. Tomohiro Matsunaga (Japão)
3. Radoslav Velikov (Bulgária)
. Besik Kudukhov (Rússia)

-60 kg:
1. Mavlet Batirov (Rússia)
2. Vasyl Fedoryshyn (Ucrânia)
3. Seyedmorad Mohammadi (Irão)
. Kenichi Yumoto (Japão)

-66 kg:
1. Ramazan Sahin (Turquia)
2. Andriy Stadnik (Ucrânia)
3. Otar Tushishvili (Geórgia)
. Sushil Kumar (Índia)

-74 kg:
1. Buvaysa Saytiev (Rússia)
2. Soslan Tigiev (Uzbequistão)
3. Murad Gaidarov (Bielorrússia)
. Kiril Terziev (Bulgária)

-84 kg:
1. Revazi Mindorashvili (Geórgia)
2. Yusup Abdusalomov (Tajiquistão)
3. Taras Danko (Ucrânia)
. Georgy Ketoev (Rússia)

-96 kg:
1. Shirvani Muradov (Rússia)
2. Taimuraz Tigiyev (Cazaquistão)
3. George Gogshelidze (Geórgia)
. Khetag Gazyumov (Azerbaijão)

-120 kg:
1. Artur Taymazov (Usbequistão)
2. Bakhtiyar Akhmedov (Rússia)
3. Marid Mutalimov (Cazaquistão)
. David Musulbes (Eslováquia)

Femininos

-48 kg:
1. Carol Huynh (Canadá)
2. Chiharu Icho (Japão)
3. Mariya Stadnik (Azerbaijão)
. Irini Merleni (Ucrânia)

-55 kg:
1. Saori Yoshida (Japão)
2. Li Xu (China)
3. Tonya Verbeek (Canadá)
. Jackeline Renteria (Colômbia)

-63 kg:
1. Kaori Icho (Japão)
2. Alena Kartashova (Rússia)
3. Randi Miller (EUA)
. Yelena Shalygina (Cazaquistão)

-72 kg:
1. Wang Jiao (China)
2. Stanka Zlateva (Bulgária)
3. Kyoko Hamaguchi (Japão)
. Agnieszka Wieszczek (Polónia)

NATAÇÃO

Masculinos

- 50 metros livres:
1. César Cielo Filho (Brasil)
2. Amaury Leveaux (França)
3. Alain Bernard (França)

- 100 metros livres:
1. Alain Bernard (França)
2. Eamon Sullivan (Austrália)
3. Jason Lezak (EUA)
. Cesar Cielo Filho (Brasil)

- 100 metros mariposa:
1. Michael Phelps (EUA)
2. Milorad Cavic (Sérvia)
3. Andrew Lauterstein (Austrália)

- 100 metros bruços:
1. Kosuke Kitajima (Japão)
2. Alexander Dale Oen (Noruega)
3. Hugues Duboscq (França)

- 100 metros costas:
1. Aaron Peirsol (EUA)
2. Matthew Grevers (EUA)
3. Arkady Vyatchanin (Rússia)
. Hayden Stoeckel (Austrália)

- 200 metros livres:
1. Michael Phelps (EUA)
2. Park Taeh-wan (Coreia do Sul)
3. Peter Vanderkaay (EUA)

- 200 metros mariposa:
1. Michael Phelps (EUA)
2. Laszlo Cseh (Hungria)
3. Takeshi Matsuda (Japão)

- 200 metros costas:
1. Ryan Lochte (EUA)
2. Aaron Peirsol (EUA)
3. Arkady Vyatchanin (Rússia)

- 200 metros bruços:
1. Kosuke Kitajima (Japão)
2. Brenton Rickard (Austrália)
3. Hugues Duboscq (França)

- 200 metros estilos:
1. Michael Phelps (EUA)
2. Laszlo Cseh (Hungria)
3. Ryan Lochte (EUA)

- 400 metros livres:
1. Park Tae-hwan (Coreia do Sul)
2. Lin Zhang (China)
3. Larsen Jensen (Estados Unidos)

- 400 metros estilos:
1. Michael Phelps (Estados Unidos)
2. Laszlo Cseh (Hungria)
3. Ryan Lochte (Estados Unidos)

- 1.500 metros livres:
1. Oussama Mellouli (Tunísia)
2. Grant Hackett (Austrália)
3. Ryan Cochrane (Canadá)

- 4x100 metros livres:
1. Estados Unidos
2. França
3. Austrália

- 4x100 metros estilos:
1. Estados Unidos
2. Austrália
3. Japão

- 4x200 metros livres:
1. Estados Unidos
2. Rússia
3. Austrália

- 10 km maratona:
1. Maarten van der Weijden (Holanda)
2. David Davies (Grã-Bretanha)
3. Thomas Lurz (Alemanha)

Femininos

- 50 metros livres:
1. Britta Steffen (Alemanha)
2. Dara Torres (EUA)
3. Cate Campbell (Austrália)

- 100 metros livres:
1. Britta Steffen (Alemanha)
2. Libby Trickett (Austrália)
3. Natalie Coughlin (EUA)

- 100 metros mariposa:
1. Lisbeth Trickett (Austrália)
2. Christine Magnusson (EUA)
3. Jessicah Schipper (Austrália)

- 100 metros bruços:
1. Leisel Jones (Austrália)
2. Rebecca Soni (EUA)
3. Mirna Jukic (Áustria)

- 100 metros costas:
1. Natalie Coughlin (EUA)
2. Kirsty Coventry (Zimbabué)
3. Margaret Hoelzer (EUA)

- 200 m livres:
1. Federica Pellegrini (Itália)
2. Sara Isakovic (Eslovénia)
3. Jiaying Pang (China)

- 200 metros mariposa:
1. Liu Zige (China)
2. Jiao Liuyang (China)
3. Jessicah Schipper (Austrália)

- 200 metros bruços:
1. Rebecca Soni (EUA)
2. Leisel Jones (Austrália)
3. Sara Nordenstam (Noruega)

- 200 metros costas:
1. Kirsty Coventry (Zimbabué)
2. Margaret Hoelzer (EUA)
3. Reiko Nakamura (Japão)

- 200 metros estilos:
1. Stephanie Rice (Austrália)
2. Kirsty Coventry (Zimbabué)
3. Natalie Coughlin (Estados Unidos)

- 400 metros livres:
1. Rebecca Adlington (Grã-Bretanha)
2. Katie Hoff (EUA)
3. Joanne Jackson (Grã-Bretanha)

- 400 metros estilos:
1. Stephanie Rice (Austrália)
2. Kirsty Coventry (Zimbabué)
3. Katie Hoff (Estados Unidos)

- 800 metros livres:
1. Rebecca Adlington (Grã-Bretanha)
2. Alessia Filippi (Itália)
3. Lotte Friis (Dinamarca)

- 4x100 metros livres:
1. Holanda
2. Estados Unidos
3. Austrália

- 4x100 metros estilos:
1. Austrália
2. EUA
3. China

- 4x200 metros livres:
1. Austrália
2. China
3. Estados Unidos

- 10 km maratona:
1. Larisa Ilchenko (Rússia)
2. Keri-Anne Payne (Grã-Bretanha)
3. Cassandra Patten (Grã-Bretanha)

NATAÇÃO SINCRONIZADA

- Dueto:
1. Rússia (Anastasia Davydova/Anastasia Ermakova)
2. Espanha (Gemma Mengual/Andrea Fuentes)
3. Japão (Saho Harada/Emiko Suzuki)

- Equipas:
1. Rússia (Anastasia Davydova/Anastasia Ermakova/Maria Gromova/Natalia Ishchenko/Elvira Khasyanova/Olga Kuzhela/Svetlana Romashina/Anna Shorina)
2. Espanha (Alba Maria Cabello/Raquel Corral/Andrea Fuentes/Thais Henriquez/Laura Lopez/Gemma Mengual/Irina Rodriguez/Paola Tirados)
3. China (Gu Beibei/Jiang Tingting/Jiang Wenwen/Liu Ou/Luo Xi/Sun Qiuting/Wang Na/Zhang Xiaohuan)

PENTATLO MODERNO

Masculinos

1. Andrey Moiseev (Rússia)
2. Edvinas Krungolcas (Lituânia)
3. Andrejus Zadneprovskis (Lituânia)

Femininos

1. Lena Schoneborn (Alemanha)
2. Heather Fell (Grã-Bretanha)
3. Victoria Tereshuk (Ucrânia)

PÓLO AQUÁTICO

Masculinos

1. Hungria
2. Estados Unidos
3. Sérvia

Femininos

1. Holanda
2. Estados Unidos
3. Austrália

REMO

Masculinos

- Single sculls:
1. Olaf Tufte (Noruega)
2. Ondrej Synek (República Checa)
3. Mahe Drysdale (Nova Zelândia)

- Double sculls:
1. Austrália (David Crawshay/Scott Brennan)
2. Estónia (Tonu Endrekson/Júri Jaanson)
3. Grã-Bretanha (Matthew Wells/Stephen Rowbotham)

- Double sculls pesos ligeiros:
1. Grã-Bretanha (Zac Purchase/Mark Hunter)
2. Grécia (Dimitrios Mougios/Vasileios Polymeros)
3. Dinamarca (Mads Reinholdt Rasmussen/Rasmus Nicholai Quist Hansen)

- Dois:
1. Austrália (Drew Ginn/Duncan Free)
2. Canadá (David Calder/Scott Frandsen)
3. Nova Zelândia (Nathan Twaddle/George Bridgewater)

- Quatro:
1. Grã-Bretanha (Tom James/Steve Williams/Pete Reed/Andrew Triggs-Hodge)
2. Austrália (Matt Ryan/James Marburg/Cameron McKenzie-McHarg/Francis Hegerty)
3. França (Julien Despres/Benjamin Rondeau/Germain Chardin/Dorian Mortelette)

- Quadruple sculls:
1. Polónia (Adam Korol/Marek Kolbowicz/Michal Jelinski/Konrad Wasielewski)
2. Itália (Rossano Galtarossa/Simone Raineri/Luca Agamennoni/Simone Venier)
3. França (Jonathan Coeffic/Cedric Berrest/Julien Bahain/Pierre-Jean Peltier)

- Oito:
1. Canadá (Kevin Light/Ben Rutledge/Andrew Byrnes/Jake Wetzel/Malcolm Howard/Dominic Seiterle/Adam Kreek/Kyle Hamilton/Brian Price)
2. Grã-Bretanha (Alex Partridge/Tom Stallard/Tom Lucy/Richard Egington/Josh West/Alastair Heathcote/Matt Langridge/Colin Smith/Acer Nethercott)
3. Estados Unidos (Beau Hoopman/Matt Schnobrich/Micah Boyd/Wyatt Allen/Daniel Walsh/Steve Coppola/Josh Inman/Bryan Volpenhein/Marcus McElhenney)

Femininos

- Single sculls:
1. Rumyana Neykova (Bulgária)
2. Michelle Guerette (EUA)
3. Ekaterina Karsten (Bielorrússia)

- Dois:
1. Roménia (Georgeta Andrunache/Viorica Susanu)
2. China (Wu You/Gao Yulan)
3. Bielorrússia (Yuliya Bichyk/Natallia Helakh)

- Double sculls:
1. Nova Zelândia (Georgina Evers-Swindell/Caroline Evers-Swindell)
2. Alemanha (Annekatrin Thiele/Christiane Huth)
3. Grã-Bretanha (Elise Laverick/Anna Bebington)

- Double sculls pesos ligeiros:
1. Holanda (Kirsten van der Kolk/Marit van Eupen)
2. Finlândia (Sanna Sten/Minna Nieminen)
3. Canadá (Melanie Kok/Tracy Cameron)

- Quadruple sculls:
1. China (Tang Bin/Jin Ziwei/Xi Aihua/Zhang Yangyang)
2. Grã-Bretanha (Annie Vernon/Debbie Flood/Frances Houghton/Katherine Grainger)
3. Alemanha (Britta Oppelt/Manuela Lutze/Kathrin Boron/Stephanie Schiller)

- Oito:
1. Estados Unidos (Erin Cafaro/Lindsay Shoop/Anna Goodale/Elle Logan/Anne Cummins/Susan Francia/Caroline Lind/Caryn Davies/Mary Whipple)
2. Holanda (Femke Dekker/Marlies Smulders/Nienke Kingma/Roline Repelaer van Driel/Annemarieke van Rumpt/Helen Tanger/Sarah Siegelaar/Annemiek de Haan/Ester Workel)
3. Roménia (Constanta Burcica/Viorica Susanu/Rodica Maria Serban/Eniko Barabas/Simona Dumitrita Musat/Ioana Cristina Papuc/Georgeta Andrunache/Doina Ignat/Elena Georgescu)

SALTOS PARA A ÁGUA

Masculinos

- Trampolim 3 metros sincronizado:
1. China (Feng Wang/Kai Qin)
2. Rússia (Dmitry Sautin/Yuriy Kunakov)
3. Ucrânia (Illya Kvasha/Oleksiy Prygorov)

- Plataforma 10 metros sincronizado:
1. China (Yue Lin/Liang Huo)
2. Alemanha (Patrick Hausding/Sascha Klein)
3. Rússia (Gleb Galperin/Dmitriy Dobroskok)

- Trampolim 3 metros individual:
1. He Chong (China)
2. Alexandre Despatie (Canadá)
3. Qin Kai (China)

- Plataforma 10 metros individual:
1. Matthew Mitcham (Austrália)
2. Zhou Luxin (China)
3. Gleb Galperin (Rússia)

Femininos

- Trampolim 3 metros sincronizado:
1. China (Guo Jingjing/Wu Minxia)
2. Rússia (Julia Pakhalina/Anastasia Pozdnyakova)
3. Alemanha (Ditte Kotzian/Heike Fischer)

- Plataforma 10 metros sincronizado:
1. China (Wang Xin/Chen Ruolin)
2. Austrália (Briony Cole/Melissa Wu)
3. México (Paola Espinosa/Tatiana Ortiz)

- Trampolim 3 metros individual:
1. Guo Jingjing (China)
2. Yulia Pakhalina (Rússia)
3. Wu Minxia (China)

- Plataforma 10 metros individual:
1. Chen Ruolin (China)
2. Emilie Heymans (Canadá)
3. Xin Wang (China)

SOFTBALL

1. Japão
2. EUA
3. Austrália

TAEKWONDO

Masculinos

-58 kg:
1. Guillermo Perez (México)
2. Yulis Gabriel Mercedes (República Dominicana)
3. Chu Mu-Yen (Taipé)
. Rohullah Nikpai (Afeganistão)

-68 kg:
1. Son Taejin (Coreia do Sul)
2. Mark Lopez (Estados Unidos)
3. Servet Tazegul (Turquia)
. Sung Yu-Chi (Taipé)

-80 kg:
1. Hadi Saei (Irão)
2. Mauro Sarmiento (Itália)
3. Steven Lopez (EUA)
. Zhu Guo (China)

+80 kg:
1. Cha Dong-min (Coreia do Sul)
2. Alexandros Nikolaidis (Grécia)
3. Chika Yagazie Chukwumerije (Nigéria)
. Arman Chilmanov (Cazaquistão)

Femininos

-49 kg:
1. Wu Jingyu (China)
2. Buttree Puedpong (Tailândia)
3. Dalia Contreras Rivero (Venezuela)
. Daynellis Montejo (Cuba)

-57 kg:
1. Lim Su-jeong (Coreia do Sul)
2. Azize Tanrikulu (Turquia)
3. Diana Lopez (EUA)
. Martina Zubcic (Croácia)

-67 kg:
1. Kyungseon Hwang (Coreia do Sul)
2. Karine Sergerie (Canadá)
3. Sandra Saric (Croácia)
. Gwladys Patience Epangue (França)

+67 kg:
1. Maria del Rosario Espinoza (México)
2. Nina Solheim (Noruega)
3. Natalia Falavigna (Brasil)
. Sarah Stevenson (Grã-Bretanha)

TÉNIS

Masculinos

- Singulares:
1. Rafael Nadal (Espanha)
2. Fernando González (Chile)
3. Novak Djokovic (Sérvia)

- Pares:
1. Suíça (Roger Federer/Stanislas Wawrinka)
2. Suécia (Thomas Johansson/Simon Aspelin)
3. EUA (Bob Bryan/Mike Bryan)

Femininos

- Singulares:
1. Elena Dementieva (Rússia)
2. Dinara Safina (Rússia)
3. Vera Zvonareva (Rússia)

- Pares:
1. EUA (Serena Williams/Venus Williams)
2. Espanha (Anabel Medina Garrigues/Virginia Pascual Ruano)
3. China (Yan Zi/Zheng Jie)

TÉNIS DE MESA

Masculinos

- Singulares:
1. Ma Lin (China)
2. Wang Hao (China)
3. Wang Liqin (China)

- Equipas:
1. China
2. Alemanha
3. Coreia do Sul

Femininos

- Singulares:
1. Zhang Yining (China)
2. Wang Nan (China)
3. Guo Yue (China)

- Equipas:
1. China
2. Singapura
3. Coreia do Sul

TIRO

Masculinos

- Pistola de ar 10 m:
1. Pang Wei (China)
2. Jin Jong-oh (Coreia do Sul)
3. Jason Turner (EUA)

- Pistola de ar 50 m:
1. Jin Jong Oh (Coreia do Sul)
2. Tan Zongliang (China)
3. Vladimir Isakov (Rússia)

- Pistola tiro rápido 25 m:
1. Oleksandr Petriv (Ucrânia)
2. Ralf Schumann (Alemanha)
3. Christian Reitz (Alemanha)

- Carabina de ar 10 m:
1. Abhinav Bindra (Índia)
2. Zhu Qinan (China)
3. Henri Hakkinen (Finlândia)

- Carabina deitado 50 m:
1. Artur Ayvazian (Ucrânia)
2. Matthew Emmons (EUA)
3. Warren Potent (Austrália)

- Carabina 3 posições 50 m:
1. Qiu Jian (China)
2. Jury Sukhorukov (Ucrânia)
3. Rajmond Debevec (Eslovénia)

- Fosso olímpico:
1. David Kostelecky (República Checa)
2. Giovanni Pellielo (Itália)
3. Alexey Alipov (Rússia)

- Duplo fosso:
1. Walton Eller (EUA)
2. Francesco D'Aniello (Itália)
3. Hu Binyuan (China)

- Skeet:
1. Vincent Hancock (EUA)
2. Tore Brovold (Noruega)
3. Anthony Terras (França)

Femininos

- Carabina de ar 10 m:
1. Katerina Emmons (Rep. Checa)
2. Lioubov Galkina (Rússia)
3. Snjezana Pejcic (Croácia)

- Pistola de ar 10 m:
1. Wenjun Guo (China)
2. Natalia Paderina (Rússia)
3. Nino Salukvadze (Geórgia)

- Pistola 25 m:
1. Chen Ying (China)
2. Gundegmaa Otryad (Mongólia)
3. Munkhbayer Dorjsuren (Alemanha)

- Carabina 3 posições 50 m:
1. Du Li (China)
2. Katerina Emmons (Rep. Checa)
3. Eglys Yaima Cruz (Cuba)

- Fosso olímpico:
1. Satu Makela-Nummela (Finlândia)
2. Zuzana Stefecekova (Eslováquia)
3. Corey Cogdell (EUA)

- Skeet:
1. Chiara Cainero (Itália)
2. Kimberly Rhode (EUA)
3. Christine Brinker (Alemanha)

TIRO COM ARCO

Masculinos

- Individual:
1. Viktor Ruban (Ucrânia)
2. Park Kyung-mo (Coreia do Sul)
3. Bair Badenov (Rússia)

- Equipas:
1. Coreia do Sul
2. Itália
3. China

Femininos

- Individual:
1. Zhang Juan Juan (China)
2. Park Sung-hyun (Coreia do Sul)
3. Yun Ok-hee (Coreia do Sul)

- Equipas:
1. Coreia do Sul
2. China
3. França

TRAMPOLINS

Masculinos

1. Lu Chunlong (China)
2. Jason Burnett (Canadá)
3. Dong Dong (China)

Femininos

1. He Wenna (China)
2. Karen Cockburn (Canadá)
3. Ekaterina Khilko (Uzbequistão)

TRIATLO

Masculinos

1. Jan Frodeno (Alemanha)
2. Simon Whitfield (Canadá)
3. Bevan Docherty (Nova Zelândia)

Femininos

1. Emma Snowsill (Austrália)
2. VANESSA FERNANDES (PORTUGAL)
3. Emma Moffatt (Austrália)

VELA

Masculinos

- Star:
1. Grã-Bretanha (Iain Percy/Andrew Simpson)
2. Brasil (Robert Scheidt/Bruno Prada),
3. Suécia (Fredrik Loof/Anders Ekstrom),

- Tornado:
1. Espanha (Fernando Echavarri/Anton Paz Blanco)
2. Austrália (Darren Bundock/Glenn Ashby)
3. Argentina (Santiago Lange/Carlos Espínola)

- Finn:
1. Ben Ainslie (Grã-Bretanha)
2. Zach Railey (Estados Unidos)
3. Guillaume Florent (França)

- 49er:
1. Dinamarca (Jonas Warrer/Martin Kirketerp Ibsen)
2. Espanha (Iker Martinez de Lizarduy/Xabier Fernandez)
3. Alemanha (Jan-Peter Peckolt/Hannes Peckolt)

- 470:
1. Austrália (Nathan Wilmot/Malcolm Page)
2. Grã-Bretanha (Nick Rogers/Joe Glanfield)
3. França (Nicolas Charbonnier/Olivier Bausset)

- Laser:
1. Paul Goodison (Grã-Bretanha)
2. Vasilij Zbogar (Eslovénia)
3. Diego Romero (Itália)

- RS:X:
1. Tom Ashley (Nova Zelândia)
2. Julien Bontemps (França)
3. Shahar Zubari (Israel)

Femininos

- Yngling:
1. Grã-Bretanha (Sarah Ayton/Sarah Webb/Pippa Wilson)
2. Holanda (Mandy Mulder/Annemieke Bes/Merel Witteveen)
3. Grécia (Sofia Bekatorou/Sofia Papadopoulou/Virginia Kravarioti)

- 470:
1. Austrália (Elise Rechichi/Tessa Parkinson)
2. Holanda (Marcelien de Koning/Lobke Berkhout)
3. Brasil (Fernanda Oliveira/Isabel Swan

- Laser radial:
1. Anna Tunnicliffe (Estados Unidos)
2. Gintare Volungeviciute (Lituânia)
3. Xu Lijia (China)

VOLEIBOL

Masculinos

1. Estados Unidos
2. Brasil
3. Rússia

Femininos

1. Brasil
2. EUA
3. China

VOLEIBOL DE PRAIA

Masculinos

1. EUA (Todd Rogers/Philip Dalhausser)
2. Brasil (Fábio Luiz/Márcio Araújo)
3. Brasil (Ricardo Santos/Emanuel Rego)

Femininos

1. EUA (Kerri Walsh/Misty May-Treanor)
2. China (Jia Tian/Jie Wang)
3. China (Chen Xie/Xi Zhang)

sexta-feira, agosto 22, 2008

Novo Single dos Metallica - The Day That Never Comes




Born to push you around
You better just stay down
You pull away
He hits the flesh
You hit the ground
Mouths so full of lies
Tend to black your eyes
Just keep them closed
Keep praying
Just keep waiting

Waiting for the one
The day that never comes
When you stand up and feel the warmth
but the sunshine never comes
No the sunshine never comes

Push you cross that line
Just stay down this time
Hide in yourself
Crawl in yourself
You'll have your time
God I'll make them pay
Take it back one day
I'll end this day
I'll splatter color on this gray

Waiting for the one
The day that never comes
When you stand up and feel the warmth
but the sunshine never comes
No the sunshine never comes

Love is a four letter word
And never spoken here
Love is a four letter word
Here in this prison
I suffer this no longer
I put it into
This I swear!
This I swear!
The sun will shine
This I swear!
This I swear!
This I swear!

Bloc Party com Novo Álbum

Banda dá novidade em chat com fãs: Intimacy , o novo disco, está pronto e pode ser ouvido na Quinta-feira.
O terceiro álbum dos Bloc Party chama-se Intimacy e sai dentro de apenas três dias.

A novidade foi dada pela própria banda esta tarde, numa sessão de "chat" com os seus admiradores.

Os fãs dos Bloc Party podem desde já encomendar o disco seguindo este link ; a versão em MP3 do disco (cerca de 6 euros) chegará às mãos dos compradores na próxima Quinta-feira, 21 de Agosto, ao passo que a versão em CD (10 euros) só será entregue a 27 de Outubro. Por 13 euros, é possível comprar uma versão mista (CD e MP3) de Intimacy (valores em euros arredondados).

De acordo com o NME, a versão em CD de Intimacy terá alguns temas a mais que a edição em MP3.

Recentemente, os Bloc Party haviam dado a entender que o sucessor de A Weekend In The City podia sair só em 2009.

Veja aqui o primeiro single de Intimacy, "Mercury".





Alinhamento de Intimacy

1. Ares
2. Mercury
3. Halo
4. Biko
5. Trojan Horse
6. Signs
7. One Month Off
8. Zephyrus
9. Better Than Heaven
10. Ion Square

ASP.NET: Trace

Mais um mecanismo poderosíssimo no ASP.NET é a capacidade de monitorização e de Trace que fornece. Existe a possibilidade de saber que métodos são invocados quando é executada uma página, quais os tempos de execução, que tabelas do SQL Server foram invocadas, quais os parâmetros de entrada daquela página e muito, muito mais.

Estás a desenvolver em ASP.NET e estás a bater com a cabeça na parede por não saber resolver o problema? A resposta pode estar aqui.



Trace no ASP.NET e WebServices


Por Mauro Sant'Anna (mas_mauro@hotmail.com).
Mauro é um "MSDN Regional Director", consultor e instrutor da MAS Informática (www.mas.com.br), tendo ministrado treinamentos na arquitetura .NET desde outubro de 2000.

No artigo anterior examinamos como depurar um programa ASP.NET® ou WebService com o Microsoft Visual Studio .NET®. Na depuração estamos interessados em executar o programa sobre nosso estrito controle e examinar na minúcia as suas entranhas. No "trace" não estamos tão interessados em minúcias e sim executar o programa sem impedimentos e obter informações de mais "alto nível" sobre o que está acontecendo.

A biblioteca ASP.NET pode gerar automaticamente bastante informação de trace. Para ligar o trace não precisamos modificar o programa nem ter acesso ao seu código fonte; basta mudar uma linha no arquivo web.config. Usarei o exemplo desenvolvido anteriormente no artigo sobre depuração, mas você poderá experimentar com qualquer programa Web feito com o Visual Studio .NET.



Existem várias maneiras de ligar e desligar o trace, mas a que eu considero a mais recomendável é modificar uma entrada no arquivo XML web.config. Na tag "trace" devemos mudar enabled="false" para enabled="true":

<trace enabled="true" requestlimit="10" pageoutput="false" tracemode="SortByTime" localonly="true"/>

A modificação pode ser feita no Visual Studio ou em qualquer outro editor de texto. Para ativá-la não é necessário sequer recompilar o programa, basta salvar o arquivo web.config. O aplicativo será automaticamente reinicializado em modo trace no próximo pedido de alguma página do aplicativo.



Nosso aplicativo agora está coletando informações de "trace". Precisamos então de um programa para exibir estas informações. A maneira mais fácil é usar o InternetExplorer e apontar para uma página especial em nosso aplicativo chamada "trace.axd". Por exemplo, se a nossa URL for "http://localhost/Soma/WebForm1.aspx", nosso aplicativo será "http://localhost/Soma/" e a página de trace será http://localhost/Soma/trace.axd. Observe que o trace é válido para todas as páginas do aplicativo. Veja um exemplo de saída:



A página acima contém a lista dos últimos quatro traces armazenados, para um total possível de até dez. A quantidade máxima de páginas pode ser modificada em requestLimit no arquivo web.config. Vamos selecionar um dos links "View Details":





É possível exibir a saída do trace na própria página do aplicativo colocando pageOutput= "true":

<trace enabled="true" requestlimit="10" pageoutput="true" tracemode="SortByTime" localonly="true"/>

A saída do trace agora é misturada com a saída do aplicativo:



Exibir esta página misturada tem vantagens e desvantagens: por um lado não precisamos chamar uma página específica, por outro lado a página fica confusa. É uma questão de gosto.



Em "Request Details" temos algumas informações óbvias. "Session ID" é a chave usada pelo mecanismo de variáveis de sessão do ASP.NET que identifica esta sessão. É a mesma string exibida no meio da URL se você estiver usando sessões sem cookies (entrada no arquivo config.web).

Em "Trace Information" são mostrados os eventos chamados e quanto tempo cada um tomou. É interessante para observar a ordem em que cada evento é disparado e qual está gastando mais tempo. É possível colocar informações nesta seção a partir do seu programa, como veremos a seguir.

Em "Control Tree" temos a lista de todos os controles criados pelo servidor no processamento da página, com informações de quantos bytes cada um gerou na saída e quanto cada um usa no campo escondido __VIEWSTATE para armazenar o estado da página. Essa informação é interessante para saber se temos muitos controles, o que pode tornar o aplicativo mais lento, qual está gerando mais saída e quais estão gastando espaço no __VIEWSTATE, já que tudo que está neste campo vai e volta ao navegador e pode comprometer a performance.

"Cookie Collection" mostra os cookies usados pelo aplicativo. Normalmente um cookie é usado para identificar a sessão e tem o mesmo nome que "Session ID", mas o seu programa pode tanto criar e usar outros cookies diretamente como usar sessões sem cookies.

"Header Collection" mostra exatamente os cabeçalhos enviados pelo navegador Web, conforme o protocolo HTTP. Você pode usar esta entrada para descobrir detalhes do pedido, como por exemplo a versão, modelo e fabricante do navegador que efetuou o pedido.

"Form Collection" ou "Query String Collection" mostra os pares "nome-valor" enviados pelo navegador, correspondendo normalmente aos campos da página.

"Server Variables" mostra os valores das diversas variáveis enviadas ao seu programa pelo servidor Web, conforme o protocolo CGI.



Nossos programas podem colocar informações na saída do "Trace" com o método Context.Trace.Write. Veja um exemplo:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim N1 As Double = TextBox1.Text
Dim N2 As Double = TextBox1.Text
Dim R = N1 + N2
ListBox1.Items.Add(R)
Context.Trace.Write("Test", "Sum with " & N1 & " " & N2)
End Sub


Veja a saída na página Web de trace com a nossa mensagem destacada:





As outras entradas na tag XML Trace têm o seguinte significado:
  • requestLimit: Número inteiro que indica quanta informação de trace deve ser armazenada em memória, em número de páginas; o padrão é 10;
  • traceMode: Indica como deve ser ordenada a saída no grupo "Trace Information". As opções são SortByTime para ordenar em ordem cronológica e SortByCategory para ordenar por categoria (a categoria é a primeira string do método Context.Trace.Write);
  • localOnly: Indica se a informação de trace pode ser vista apenas no servidor (true) ou em qualquer micro (false). Por segurança, ela a princípio pode ser vista apenas no servidor.




Conclusão

O Trace permite facilmente obter diversas informações de execução dos aplicativos ASP.NET de forma a saber melhor o que está acontecendo com o aplicativo, corrigir erros e melhorar a performance.



Artigo de Mauro Sant'Anna, pode consultá-lo aqui.

ASP.NET: Web.config

O web.config é provavelmente o ficheiro mais importante de qualquer aplicação asp.net. É nele que são definidas todos os parâmetros de configuração do projecto, desde connectionStrings (acesso à base de dados), até Regional Settings, Trace/Debug configuration, httpRunTime, entre muitos outros parâmetros.

Basicamente, pode-se colocar todas as configurações comuns a todas as páginas da aplicação neste ficheiro web.config.

O Ruben Heetebrij tem um excelente artigo no SitePoint sobre este tema.

The ASP.NET Web.config File Demystified

Applications of XML have been integrated into .NET to such an extent that XML is hardly a buzzword anymore. Microsoft, as you probably know, has taken XML into the core of its .NET framework. Not only is XML a generally accepted format for the exchange of data, it's also used to store configuration settings.

Configuration settings for any of your ASP.NET Web applications can be stored in a simple text file. Presented in an easily understandable XML format, this file, called Web.config, can contain application-wide data such as database connection strings, custom error messages, and culture settings.

Because the Web.config is an XML file, it can consist of any valid XML tags, but the root element should always be . Nested within this tag you can include various other tags to describe your settings. Since a Web.config file comes as a standard when you start to build a new Web application, let's look at the default XML file generated by Visual Studio .NET:




defaultLanguage="c#"
debug="true"
/>
mode="RemoteOnly"
/>




enabled="false"
requestLimit="10"
pageOutput="false"
traceMode="SortByTime"
localOnly="true"
/>
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
requestEncoding="utf-8"
responseEncoding="utf-8"
/>



Experienced ASP.NET programmers will have noticed that I've left out the comment tags that are generated automatically with the file. I've done that to provide a clear view of the XML that's used here. Also, I'll elaborate on each configuration tag later in this article, and this discussion will make the comment tags rather obsolete.

If you look at the example XML, you'll notice that the tag has only one child tag, which we call section group, the tag. A section group typically contains the setting sections, such as: compilation, customErrors, authentication, authorization, etc. The way this works is pretty straightforward: you simply include your settings in the appropriate setting sections. If, for example, you wanted to use a different authentication mode for your Web application, you'd change that setting in the authentication section.

Apart from the standard system.web settings, you can define your own specific application settings, such as a database connection string, using the tag. Consequently, your most common Web.config outline would be:








Let's discuss the details of both section groups now.

The system.web Section Group

In this section group, you'll typically include configuration settings that, in the pre-.NET era, you'd have set up somewhere in the IIS administration console. At Microsoft's MSDN Library, you can find an overview of all the tags that the system.web section group understands, but, depending on the complexity of your site, you may not ever use even half of those options.

Let's have a look at the most valuable tweaks you can make within the system.web section group, in alphabetical order.

The authentication section controls the type of authentication used within your Web application, as contained in the attribute mode. You'll enter the value "None" if anyone may access your application. If authentication is required, you'll use "Windows", "Forms" or "Passport" to define the type of authentication. For example:

To allow or deny access to your web application to certain users or roles, use or child tags.




It's important to understand that ASP.NET's authorization module iterates through the sections, applying the first rule that corresponds to the current user. In this example, users carrying the role Administrators or Users will be allowed access, while all others (indicated by the * wildcard) will encounter the second rule and will subsequently be denied access.

Here, you can configure the compiler settings for ASP.NET. You can use loads of attributes here, of which the most common are debug and defaultLanguage. Set debug to "true" only if you want the browser to display debugging information. Since turning on this option reduces performance, you'd normally want to set it to "false". The defaultLanguage attribute tells ASP.NET which language compiler to use, since you could use either Visual Basic .NET or C# for instance. It has value vb by default.


To provide your end users with custom, user-friendly error messages, you can set the mode attribute of this section to On. If you set it to RemoteOnly, custom errors will be shown only to remote clients, while local host users will see the ugly but useful ASP.NET errors -- clearly, this is helpful when debugging. Setting the mode attribute to Off will show ASP.NET errors to all users.

If you supply a relative (for instance, /error404.html) or absolute address (http://yourdomain.com/error404.html) in the defaultRedirect attribute, the application will be automatically redirected to this address in case of an error. Note that the relative address is relative to the location of the Web.config file, not the page in which the error takes place. In addition you can use tags to provide a statusCode and a redirect attribute:




The globalization section is useful when you want to change the encoding or the culture of your application. Globalization is such an extensive subject that an entire article could be dedicated to the matter. In short, this section allows you to define which character set the server should use to send data to the client (for instance UTF-8, which is the default), and which settings the server should use to interpret and displaying culturally specific strings, such as numbers and dates.

culture="nl-NL" />

Encoding is done through the attributes requestEncoding and responseEncoding. The values should be equal in all one-server environments. In this example, the application culture is set to Dutch. If you don't supply a culture, the application will use the server's regional settings.

You can use the httpRuntime section to configure a number of general runtime settings, two of which are particularly convenient.

The first attribute specifies the number of requests the server may queue in memory at heavy-traffic times. In the example, if there are already 100 requests waiting to be processed, the next request will result in a 503 error ("Server too busy").

The executionTimeout attribute indicates the number of seconds for which ASP.NET may process a request before it's timed out.

In this section of the Web.config file, we tell ASP.NET where to store the session state. The default is in the process self:

Session variables are very powerful, but they have a few downsides. Information is lost when the ASP.NET process crashes, and sessions are generally useless in the case of a Web farm (multiple Web servers). In that instance, a shared session server can solve your issues. It's beyond the scope of this article to expand on this topic, but it's worth a mention. More information on sessionState can be found in the MSDN Library online.

Your application's trace log is located in the application root folder, under the name trace.axd. You can change the display of tracing information in the trace section.

The attributes you will look for initially are enabled: localOnly, and pageOutput.

Set localOnly to "false" to access the trace log from any client. If you set the value of pageOutput to "true", tracing information will be added to the bottom of each Web page.

The appSettings Section Group

Apart from the Website configuration settings I've been talking about in the preceding paragraphs, you'll know that a programmer frequently likes to use custom application-wide constants to store information over multiple pages. The most appealing example of such a custom constant is a database connection string, but you can probably think of dozens more from your own experience.

The common denominator of these constants is that you want to retrieve their values programmatically from your code. The Web.config file provides the possibility to do so, but as a security measure, these constants have to be included in the section group. Just like , is a direct child tag of the Web.config's configuration root.

A typical custom section group would look something like this:




The example shows that keys and values can be included in the custom application settings via an tag. The way to access such a value in any of your Web pages is illustrated below:

ConfigurationSettings.AppSettings("sqlConn")

Yes, it's as easy as that! Note that the value of these settings is always a String format.

A Few Other Issues

I won't go into them here, but the Web.config file can contain several other section groups besides the aforementioned system.web and appSettings, such as the configSettings group.

  • A Web application can contain more than one Web.config file. The settings in a file apply to the directory in which it's located, and all child directories. Web.config files in child directories take precedence over the settings that are specified in parent directories.
  • Web.config files are protected by IIS, so clients cannot get to them. If you try to retrieve an existing http://mydomain.com/Web.config file, you'll be presented with an "Access denied" error message.
  • IIS monitors the Web.config files for changes and caches the contents for performance reasons. There's no need to restart the Web server after you modify a Web.config file.
Closing Remarks

In this article, I've touched upon the possibilities that the Web.config file offers the ASP.NET programmer. You can use the easily accessible XML file to define your application settings, without the hassle of using the IIS management console. With the Web.config file, ASP.NET lets you add, change and delete basic configuration settings like authentication and authorization, custom error displaying, and tracing in a straightforward manner.

Moreover, the Web.config file offers you room to define any custom key you require, such as database connection strings. What we've subsequently seen is that, with just one line of code, you can retrieve the information you need from any page in your application.