Eli
278meneos

Google no cierra sus tags HTML, a propósito [ENG]

Por lo visto lo hace para arañar unos cuantos milisegundos a la carga de sus páginas.

etiquetas: google, internet, html
negativos: 0  usuarios: 158  anónimos: 120  compartir:  twitter  facebook  friendfeed
últimas relacionadas
  1. #1   Y aún así, cada día me va más lento...
    votos: 3, karma: 34
    por fompi el 29-06-2009 08:09 UTC
  2. #2   <comentario>Vale, esto a pasado de una optimización de rendimiento a una obsesión compulsiva.
    votos: 6, karma: 19
    por Rastikko el 29-06-2009 08:10 UTC
  3. #3   #1 Es que al no cerrar los tags, por la noche le entra frio a google y se pone constipado. Seguro que tambien anda descalzo por la casa para no ponerse las zapatillas.
    votos: 3, karma: 26
    por sinoriel el 29-06-2009 08:11 UTC
  4. #4   #2 Cierto, se trata de milisegundos y ahorrarse unos pocos bytes en cada petición, pero con la carga (número de peticiones por segundo) que tienen, seguro que ahorran un huevo en transferencia de datos.
    votos: 9, karma: 88
    por nade el 29-06-2009 08:14 UTC
  5. #5   #4 Eso es, son bastantes bytes ahorrados por petición. No cierran las etiquetas <html> y <body> (12 bytes), y eliminan todos los espacios en blanco y saltos de linea innecesarios. Con los espacios en blanco y saltos de linea se ahorrarán mucho más que con ese par de etiquetas...
    votos: 9, karma: 84
    por morzilla el 29-06-2009 08:17 UTC
  6. #6   no es por querer inflar mi ego, pero yo intuí esto hace varios meses: www.forosdelweb.com/f91/curiosidad-google-655669/#post2714996
    votos: 23, karma: 210
    por EGraf el 29-06-2009 08:23 UTC
  7. por --64685-- el 29-06-2009 08:28 UTC
  8. #8   Que listos que son los jodios...

    ¡No te acostarás sin saber una cosa más! :)
    votos: 1, karma: 15
    por Pack-O el 29-06-2009 08:38 UTC
  9. #9   #7 que no lo pillas, el también optimiza
    votos: 57, karma: 507
    por thirdman el 29-06-2009 08:47 UTC
  10. #10   Google dominará la tierra.
    votos: 0, karma: 6
    por Penitencia el 29-06-2009 10:16 UTC
  11. #11   Cada carácter eliminado son muchos gigas al día. En google </p> puede generar más tráfico que todo meneame.
    votos: 2, karma: 21
    por calocen el 29-06-2009 10:16 UTC
  12. #12   #6, creo recordar que esto ya se hacía hace más de una año.
    #9 puede que #7 optimize, pero eso a ti no te sirve para escribir "el" en lugar de "él" xD
    #4 tiene mucha razón, pueden precer insignificantes, pero teniendo en cuenta el ancho de banda que usa google, seguro que eso se traduce en un ahorro de miles de dólares al mes.
    votos: 1, karma: 2
    por ignasivt el 29-06-2009 10:17 UTC
  13. #13   #12 Corrección: optimiCe en lugar de optimiZe.
    votos: 3, karma: 36
    por Penitencia el 29-06-2009 10:20 UTC
  14. #14   Eso en mi pueblo es saltarse el estándar a la torera... Pero como lo hace Google, es cool. Si lo hiciera el buscador de Microsoft... otro gallo cantaría.
    votos: 37, karma: 314
    por agus15 el 29-06-2009 10:22 UTC
  15. #15   Genial, nunca me había parado a pensar en el peso de todos estos elementos para un sitio como Google.
    votos: 0, karma: 6
    por Morcuende.Alfonso el 29-06-2009 10:22 UTC
  16. #16   #13 corrige a #12 que corrige a #9 que apostilla a #7 que corrige a #2

    Por si no quedaba claro xD
    votos: 21, karma: 190
    por kahun el 29-06-2009 10:26 UTC
  17. #17   #4, Pero eso no lo hace solo google.

    En mi grupo tenemos una biblioteca de funciones js como

    ge(s){return document.getElementById(s);}
    o
    sa(o,n,a,v){o.setAttributeNS(n,a,v);}

    Vamos, programamos normalmente y luego pasamos el código por una especie de ofuscador que lo reduce enormemente, pero dejando algo medio legible.
    votos: 4, karma: 36
    por GizzoFeetal el 29-06-2009 10:29 UTC
  18. #18   Pues a mi no me parece una buena práctica, lo haga Google o lo haga Jesucristo en su web oficial. Como bien dice #14, como lo hace el dueño de internet, pues no pasa nada.

    De todas formas, seguro que ellos lo tienen muy bien estudiado, pero yo pensaba que saltarse tags aumentaba el coste de la carga, pues el navegador tendría que buscar donde cerrar estos tags.

    Yo en mis webs cerraré tags que nunca he abierto, solo para joder xD

    EDIT:
    #17 Pero esa práctica es positiva, lo importante es guardar las fuentes. Lo que sería equivalente a lo que hace google es que te dejaras las llaves de cerrar funciones antes de declarar unas nuevas... claro que eso el navegador no te lo permite hacer.
    votos: 6, karma: 49
    por mikibcn el 29-06-2009 10:29 UTC
  19. #19   #12 ¿Que no optimiza? ¡Se ahorra un acento entero!
    votos: 0, karma: 7
    por triturator el 29-06-2009 10:42 UTC
  20. #20   #17 ¿refactorin a lo gochuzo? ¿para qué si puede saberse? El nombre de los metodos no es que importe demasiado a la hora de compilarlo... Y francamente, no creo que un mega arriba o abajo en texto sea tan importante, cuando en un proyecto grande lo que pesa no es precisamente la letra.
    votos: 0, karma: 10
    por CuaC el 29-06-2009 10:43 UTC
  21. #21   #20 Pues la técnica que comenta aquí el compi puede ahorrar un 67% de peso en los archivos javascripts; que además, no son compilados, sino que son interpretados directamente por el navegador.
    votos: 2, karma: 19
    por mikibcn el 29-06-2009 10:48 UTC
  22. #22   #18, sacrifica rendimiento, pero ahorra tráfico de red. Buena práctica según pa qué

    #20, conexiones GPRS con cobertura intermitente, y modem. Prima agilizar la descarga sobre todo lo demás.
    votos: 0, karma: 6
    por GizzoFeetal el 29-06-2009 10:52 UTC
  23. #23   #18 Dí que sí, la página de Google es un parche mal parido. El código debe ser horrible de mantener, deben usar herramientas automatizadas.

    Pero vamos, no entiendo cómo Google puede proclamarse protector de los estándares y no aplicarlos a ninguno de productos. Ni uno pasa el test de la W3C, ni su simplista página web.
    votos: 1, karma: 15
    por cumic el 29-06-2009 10:53 UTC
  24. #24   #14 Estás insinuando que Microsoft podría hacer lo mismo que Google... a la hoguera con ambos!! Viva Godgle!
    votos: 0, karma: 7
    por ciskod el 29-06-2009 10:54 UTC
  25. #25   #12 Realmente ocupa menos el que él, el vs él y si lo pones sin hacerlo de esta manera es ascii vs ascii extendido, de todas todas el ocupa menos que él.
    ;)
    votos: 0, karma: 6
    por uiop el 29-06-2009 10:56 UTC
  26. #26   Tiene bastante sentido. Y no sólo es cuestión de cerrar etiquetas, sino usar b en lugar de strong, y similares, además de no declarar el documento y, como traca final, la famosa limpieza de espacios en blanco, que es, quizá, una de las cosas que más desacelera la velocidad de carga.

    Yo tuve mi época de limpiar los espacios en blanco en todos los html y css que escribía pero, total, por una milésima de segundo no me voy a tirar ahí tanto rato para nada.
    votos: 0, karma: 8
    por Nosolomusica el 29-06-2009 10:59 UTC
  27. #27   #5
    Pues que eliminen los espacios en blanco que no son estandar, pero no las etiquetas.
    #6
    Cambiar la b por strong no deberia hacerse, aunque es cierto que la hace la mayoria de la gente (aunque estos no lo hagan por velocidad, si no porque ni siquiera saben que existe "strong" y cual es la diferencia de una a otra)
    votos: 0, karma: 7
    por RaistlinMajere el 29-06-2009 11:04 UTC
  28. #28   En mi pueblo lo llamo reducir el coste a base de reducir la calidad.

    Sí, la calidad del código, que no se ajusta a un puto estándar -aunque el navegador trague, que no debería, verás tú cómo se hacía código de calidad-.

    Las cosas bien hechas bien parecen.
    votos: 4, karma: 33
    por yosoyyo el 29-06-2009 11:09 UTC
  29. #29   Por lo tanto ninguna pagina de Google puede pasar los criterios de la W3C XHTML estricto.¿no?
    La pregunta es, ¿y esto pasara a ser estándar o aceptado por la W3C?

    Prefiero la idea de comprimir las paginas en su envío y que el navegador las descomprima con gzip, al menos se rige al estándar que empezamos así y acabamos con cosa inteligibles y el xhtml se ideo para evitar eso.
    votos: 3, karma: 39
    por Narf el 29-06-2009 11:11 UTC
  30. #30   lo siento pero yo un código sin espacios en blanco y tabulados me parece un infierno. Mientras que el código de mi web lo tenga que retocar yo no pienso quitar ese tipo de cosas, más que por mala leche por legibilidad. Es una buena costumbre que habría que arraigar, que luego ves unas cosas que dan dolor de estómago.
    votos: 0, karma: 6
    por AaLiYaH el 29-06-2009 11:12 UTC
  31. #31   #26 Yo me cree un "custom tag" en JSP llamado <t:trim> que simplemente eliminaba los espacios en blanco innecesarios.

    #14 No se salta el estándar, usa HTML y no XHTML. En el HTML no es obligatorio cerrar todos los tags, mientras que en XHTML, al ser un subconjunto de XML, es obligatorio. C&P de la wikipedia:
    Las diferencias entre HTML y la primera generación de XHTML (es decir, XHTML 1.x) son menores ya que, principalmente, están destinados a conseguir la conformidad con XML. El cambio más importante es el requisito de que el documento esté bien formado y que todas las etiquetas estén explícitamente cerradas, como se requiere en XML.
    votos: 4, karma: 34
    por pawer13 el 29-06-2009 11:12 UTC
  32. #32   Pues tendría que ser obligatorio cerrarlas, y que penalizase si no se hace.
    votos: 1, karma: 12
    por silviamar el 29-06-2009 11:12 UTC
  33. #33   #30 La solución es tan sencilla como tener los originales bien tabulados y solo quitar espacios, ofuscación... al subirlos.
    votos: 2, karma: 23
    por lg775n el 29-06-2009 11:15 UTC
  34. #34   lo se, pero si, por ejemplo quiero hacer cambios con algun complemento de firefox de forma no permanente como firebug, o cosas así, prefiero ver el código tabulado y con espacios.
    votos: 0, karma: 6
    por AaLiYaH el 29-06-2009 11:17 UTC
  35. #35   334 Firebug te "formatea" el html para hacerlo legible. Por ejemplo, menéame quita todas las tabulaciones y usa renglones kilométricos (un tag siempre es de una línea), pero con firebug se lee bastante bien. Otra cosa es la ofuscación del JS...
    votos: 0, karma: 7
    por pawer13 el 29-06-2009 11:20 UTC
  36. #36   vaya, no sabia que haxia legible el html y xml. De todas formas no se, es una buena costumbre que no cuesta nada hacer, como cerrar tags
    votos: 0, karma: 6
    por AaLiYaH el 29-06-2009 11:26 UTC
  37. #37   #14 Según el artículo, afirma que el DTD (publicado por el W3C) de HTML (que no en XHTML) indica que cerrar esos tags es opcional.
    votos: 3, karma: 35
    por mat30 el 29-06-2009 11:29 UTC
  38. #38   #27 Si omitir <body> y el cierre de <html> está soportado en HTML 4, ¿qué más da? Si con ello se puede hacer un ahorro significativo, adelante.
    votos: 0, karma: 9
    por morzilla el 29-06-2009 11:47 UTC
  39. #39   Google no "sierra"??????????
    votos: 1, karma: 12
    por bufon_cosmico el 29-06-2009 12:02 UTC
  40. #40   Pues dudo que sea por optimización, si así fuera, no usarían javascript intrusivo en cada link, las funciones JS no las embeberian en el mismo HTML, o sacarían el CSS a un archivo aparte, eso si que ahorraría de verdad.

    Es un html de primeros de los 90.
    votos: 0, karma: 6
    por alberizo el 29-06-2009 12:17 UTC
  41. #41   Me estoy imaginando que un becario de google se da cuenta de que no se cierran las etiquetas, añade un </html> y genera tal sobre coste que hace quebrar la compañía, amen de producir toneladas de CO2 y elevar la temperatura de la tierra dos grados.
    votos: 1, karma: 16
    por jaspe el 29-06-2009 12:30 UTC
  42. #42   Tiene sentido, pero se podría ahorrar también otros 3 caracteres por cada petición eliminando el www, como lo hace por ejemplo menéame...
    votos: 0, karma: 8
    por phal el 29-06-2009 12:40 UTC
  43. #43   Debería modernizarse el protocolo.
    En lugar de enviar HTML en texto plano porque no usar un html.gz comprimido que se descomprima en el cliente?

    La diferencia de velocidad y consumo de ancho de banda sería bestial. Hoy en día el procesamiento para descomprimir texto plano es rapidísimo, sobretodo en gzip.
    votos: 0, karma: 10
    por Ferk el 29-06-2009 13:17 UTC
  44. #44   #43 Para algo existe mod_gzip y se usa en casi todos los lados :P
    sourceforge.net/projects/mod-gzip/
    votos: 2, karma: 23
    por carlosdf el 29-06-2009 13:37 UTC
  45. #45   #12 Sin acentos puedes codificar el texto en 7 bits ahorrando un bit por caracter.

    #43 Ya se suele hacer la compresión gzip. Google supongo que lo hará en servicios que le compense ya que hay que tener en cuenta que la compresión tiene unas cabeceras que también pesan algo.

    También se ahorra tiempo enviando todos los archivos javascript y CSS compilados en un sólo archivo. Este archivo se puede crear automáticamente a partir de las fuentes y así en vez de por ejemplo 10 conexiones haces sólo 2 o 3.
    votos: 1, karma: 17
    por musg0 el 29-06-2009 13:51 UTC
  46. #46   #44 #45 ¡Caray! no lo sabia, gracias.
    Pero entonces la diferencia al eliminar el cierre del tag es aún más insignificante. Curioso que aun así compense.
    votos: 0, karma: 10
    por Ferk el 29-06-2009 14:03 UTC
  47. #47   ¿Google? ¿Quién es google?
    votos: 0, karma: 6
    por jorge_p el 29-06-2009 14:13 UTC
  48. #48   #47 Nuestro pastor y nada nos falta.
    votos: 0, karma: 6
    por pche el 29-06-2009 17:09 UTC
  49. #49   #20 #21 Ah ok... lo de que era JavaScript me lo pase por alto así porque me dio la gana xD Sorry.

    Bueno entonces solo dire, eso os pasa por usar Javascript :P (no me gusta nada, que le voy a hacer jejeje)
    votos: 0, karma: 10
    por CuaC el 29-06-2009 18:26 UTC
  50. #50   #24 No, no insinuaba eso. Está claro que cualquiera podría hacerlo... ¡generemos código feo!

    #31 y #37 Entonces rectifico lo de saltarse el estándar a la torera. Pero sigo pensando lo mismo del resto de la frase.

    De todas formas, me parece una cosa bastante "guarra". Si se utiliza compresión gzip supongo que no se ahorrarán tantos bytes como se ahorrarían en texto plano. Pero está claro que cualquier optimización, por pocos bytes que sean, no les viene nada mal para reducir el caudaloso tráfico que generan.
    votos: 0, karma: 6
    por agus15 el 29-06-2009 18:48 UTC
  51. #51   Si el único propósito que tiene es enviar un "</html>" de menos me parece una tontería. Al principio pensé que sería por algún detalle técnico, pero si es simplemente eso, pues lo dicho.
    votos: 0, karma: 6
    por Arth el 29-06-2009 21:32 UTC
comentarios cerrados

menéame