martes, 26 de julio de 2005

Windows Vista

Pues éste viene siendo el nombre oficial del que hasta ahora se había conocido como Longhorn, el que será el sustituto de Windows XP a mediados del año que viene (2006). Y nada más saberse el nombre empiezan a leerse opiniones: Algunos dicen que 'Vista' es más bonito, otros dicen que 'Longhorn' tenía más "gancho", en fin que ya tenemos servida otra nueva polémica que hará correr fútiles ríos de bits en los foros, y en los blogs.

De lo que no cabe duda es de que la gente ya no se cree las repetitivas promesas de fiabilidad, estabilidad, seguridad... y cómo no, los chascarrillos andan a la orden del día, algunos con tanta sutileza como 'mala leche'. Por ejemplo, ¿esta BSOD (Blue Screen Of Death) es auténtica o por el contrario es fruto del Photoshop?



Sólo el tiempo responderá esa pregunta... ;)

viernes, 22 de julio de 2005

Encaje de bolillos

Llevo unas semanas con un proyecto que se trata de generar un "simple" informe, pero que me ha hecho trabajar a fondo con el lenguaje SQL y he "descubierto" cosas bastante chulas. Por ejemplo, de todos es sabido (digo yo) que se pueden combinar dos tablas, así:

select * from Tabla1 t1
join Tabla2 t2
on t2.campo1 = t1.campo1
order by t1.campo2


Y puede también que sepamos cómo hacer una subconsulta:

select * from (
select campo1, campo2, campo3
from Tabla1
group by campo3, campo2
)


El caso es que según te van pidiendo cosas, el tema se complica (evidentemente). Un ejemplo es ésta consulta que averigua qué códigos postales están cubiertos por más de una oficina. Viene siendo (simplificada) algo parecido a esto:

select distinct o.Provincia, o.descripcion, p.Oficina, s1.CPostal
from (
select count(distinct p1.Oficina) Ofic, p1.cppob CPostal
from poblaciones p1 group by p1.cppob) as s1
join poblaciones p on p.cppob = s1.CPostal
join oficinas o on o.codofi = p.Oficina
where s1.Ofic > 1
order by s1.CPostal, p.Oficina


Es decir, estamos haciendo un join con una subconsulta, utilizándola como si de una tabla más se tratase!

Si lo pensamos, tiene toda la lógica del mundo. Una tabla no es más que un conjunto de registros y campos... y una consulta lo que devuelve es exactamente lo mismo. Luego si pensamos en tablas y en consultas no como tales sino como "Datasets", la luz aparece al final del túnel.

Por cierto, pese a lo que comentaba en el primer post del blog, sigo trabajando con ese magnífico lenguaje que es Delphi, al que podríamos llamar sin temor a equivocarnos el "hermano mayor" de C# (cronológicamente hablando, al menos), que para algo son hijos del mismo padre. Sin embargo no pierdo de vista el universo .NET, ya que es hacia donde camina, inevitablemente ya, el mundillo del software.

miércoles, 20 de julio de 2005

¿Hay alguien ahí?

Según parece por lo que he leído en algunos sitios, este blog estaría a día de hoy, casi a mitad de camino de convertirse en un "ciber-cadáver". En la red hay miles, qué digo miles, ¡cientos! de blogs moribundos o ya fenecidos y éste parecía tener el mismo destino, pero intentaré (de nuevo) que no vuelva a suceder.

Las razones por las cuales no he podido actualizar el blog en todo este tiempo (¡ocho meses!) posiblemente ya os las imaginaréis, pues son las mismas que pueden "atacar" a cualquier bloguero, así que no voy a entrar en más detalles. Por el contrario, las razones por las cuales precisamente hoy retomo la actividad en el blog, son dos y muy concretas: La primera, que como podéis comprobar, The Netrix cumple justo hoy un añito, y había que celebrarlo, digo yo. Y la segunda, y no por ello menos importante, es que casualmente (os lo juro, porque entonces aún no la conocía), también hoy es el cumpleaños de mi pareja. Felicidades cuseta!!