En algunas ocasiones puede interesarnos cronometrar el tiempo de determinadas operaciones. Aunque bien entendido que puede hacerse de diversas formas y a determinar la cual mas precisa, os dejo una idea como siempre muy simple de averiguar cuando nos esta tardando cierta operación, ya sea dentro de un bucle, en petición a un procedimiento externo, en una consulta a SQL o cualquier otra transacción.
'
' Simplificado y en VB9
'Bucles para test del tiempo en ejecucion
Dim Bucles = Val(InputBox("Numero de iteraciones"))
'Poner en marcha el cronometro
Dim CronoIncial = System.DateTime.Now
'Tarea a cronometrar
Dim numero = 0 'Variable para la simulacion
For x = 0 To Bucles
numero += 1
Text = numero.ToString
Refresh()
Next
'para saber el tiempo empleado! .. restamos
MessageBox.Show("Tiempo empleado : " + _
(System.DateTime.Now - CronoIncial).ToString + _
" s.", "Cronometro")
..............
'
' En VB8 Podria lucir como sigue
'Variable simulacion de calculos
Dim numero As Integer = 0
'Bucles para test del tiempo en ejecucion
Dim Bucles As Integer = Val(InputBox("Numero de iteraciones"))
'Poner en marcha el cronometro
Dim CronoIncial As DateTime = System.DateTime.Now
'Tarea a cronometrar
For x As Integer = 0 To Bucles
numero += 1
Label1.Text = numero.ToString
Label1.Refresh()
Next
'Tomar el tiempo del cronometro al finalizar
Dim CronoFinal As DateTime = System.DateTime.Now
'Restar Fin de Inicio para saber el tiempo empleado!
MessageBox.Show("Tiempo empleado : " + (CronoFinal - CronoIncial).ToString + " s.", "Cronometro"
Saludos,
Pep Lluis,
Para añidir otra forma de verlo, a esta serie de "cortos"
Private Sub Inicializar()
'
'Los Inicializadores de siempre
Dim MiPersona = New Persona
With MiPersona
.Nombre = "Carlos"
.Apellido = "Arjona"
.Edad = 28
End With
'
'Ahora en VB9, inicializadores basados en expresiones
'nos permiten crear colecciones de objetos complejos
Dim TusPersonas = New List(Of Individuo) _
{ _
{ .Nombre = "Jose", _
.Apellido = "Garcia"} _
{ .Nombre = "Antonio", _
.Apeliido = "Garrido"} _
}
End Sub
Partial Class Individuo
Public Property Nombre As String
Public property Apellido as String
Public Property Edad as Integer
End Class
:-))
YES!! 
Sixteen years ago, after unending “Basic” programs, running lines of sequential sentences by number interpreted by a sad Basic runtime compiler, VB born announcing great news, one of more expected features claimed for Basic developers are the Object-oriented programming and now included in this first release. (... I know.. Not full, light, but OOP ;-) ) , the other one, is changing the classical algorism when write programs, introducing advanced programming paradigms.
With this launch in 1992, VB for first time in several years becomes a first class language… this represent an incredible step for VB programmers and have your first implementation build for DOS space, using ASCII Chars to recreate real windows environment. ¡¡what’s folly!!
The short live of this product and the jumping Windows age, be responsible to not produce enough waves to arrival at wide developers community. Only few enterprises can develop real applications with this fantastic environment, but I’m sure that the spirit and essence of this language comes inside the heart of all versions.
UMM… good times. J
Pep Lluis,
Hace dieciséis años y después de interminables programas en Basic que ejecutaban líneas secuenciales de sentencias ordenadas por números interpretadas por aburridos compiladores, VB Nace anunciando una gran noticia en torno a la aplicación de nuevos paradigmas de programación avanzada. En esta Ocasión añadiendo la esperada y tan aclamada Programación orientada a objetos, aunque carecía de algunos aspectos primordiales de una POO real, podemos afirmar que era una buena implementación filosóficamente hablando. Con este avance VB se convierte en un lenguaje de primera línea… este gran paso para los programadores de Basic en 1992, vio su primera implementación en DOS y utilizando caracteres ASCII para simular un entorno real de ventanas. ¡Menuda locura! La corta vida de este producto y el despegue de la era de Windows fueron responsables e impidieron que llegara a conocimiento del grueso de la comunidad de desarrolladores. Solo unas pocas empresas pudieron desarrollar aplicaciones reales en este fantástico entorno, aunque estoy seguro de que el espíritu y la esencia del lenguaje continúan presentes en el corazón de todas sus versiones.
UM… qué tiempos aquellos.. J
Pep Lluis,

Una de las preguntas mas frecuentes en repetidas conversaciones, es : que hay de nuevo en el recien liberado VB9?
Pues bien a modo de cortos y para hacer mas asequible la utilizacion de algunas de las 'nuevas' aqui va la primera de una pequeña serie.
OfCourse... espero vuestro comentarios.
'Explicito.. lo de siempre
Dim MiNombre As String = "PepLluis"
Dim MiEdad As Integer = 29
Dim MisPersonas As Persona = New Persona With {.Nombre = "Maria"}
'Implicito, Inferencia en la definicion
Dim TuNombre = "Mauricio"
Dim TuEdad = 39
Dim TusPersonas = New Persona With {.Nombre = "Carmen", .Edad = 20}
'
'Nuestra clase Persona
Class Persona
Public Nombre = ""
Public Apellido = ""
Public Edad = 0
End Class
PD. Si asi lo considerais, podemos comentar el codigo, añadiendo mas explicaciones... quizas sea mas clarificador, espero vuestras valoraciones.