Paginar resultados en SQL Server 2000, al estilo Limit de mySQL

En mysql para devolver un rango de resultados en una consulta podemos hacerlo usando el comando Limit de la siguiente forma:

Select * from tabla Limit 4,8

Esto nos devuelve un rango de 8 resultados desde el 4º encontrado

Apunté como hacerlo en Oracle, también como hacerlo en Microsoft SQL Server 2005/2008, y ahora lo apunto para SQL Server 2000.

SELECT TOP 10 t.* FROM tabla as t where t.id = not in
( SELECT TOP 0 id from tabla order by id desc )
order by t.id desc


El primer TOP, el principal, indica el número de tuplas a devolver.

El segundo TOP, en la subconsulta, debe ser multiplicar 10 por el número de página de resultados a mostrar menos 1, es decir: (número de página-1) x número de filas a devolver.

En ese ejemplo, el top para la subconsulta sería 0 para la primera página, 10 para la segunda, 20 para la tercera y así sucesivamente.

Cómo perder el tiempo

1 – Contesta a tus emails inmediatamente. Contestar tus emails en el acto es una práctica grandiosa para perder el tiempo. Con mucha suerte lograrás tener respuestas inmediatas, transformando tu bandeja de entrada en un chat.

2 – Si el email que estás redactando es muy largo, adjunta el contenido en un archivo word. No hay nada mejor para perder el tiempo que trabajar con dos o más aplicaciones distintas para hacer el mismo trabajo que se puede hacer con una. Y en lugar de separar por asuntos los emails, es mejor mandar todo de una vez en uno, así si queremos buscar ese email tendremos que acordarnos del asunto que tenía.

3 – No gestiones tu google reader. Google reader es una poderosa herramienta para seguir miles de fuentes de información que se actualizan día a día. Si creas carpetas por temática o por prioridad puedes correr el riesgo de separar las fuentes importantes de las que no lo son, por lo que lo mejor pasar de ellos y mantener todos nuestros feeds en el menor número de carpetas posibles.

Trata de abrir el google reader el mayor número de veces posibles al día, e intenta no dejar ninguna noticia, artículo o paper sin leer. Esto puede hacerte perder todo el día perfectamente.

4 – En el GTalk o Messenger siempre disponible. Tienes una cantidad colosal de tiempo que perder, por lo que no te molestará que en el momento que más productivo te encuentres, se te abra una ventana de conversación en la que alguien te pregunte si quieres arreglarle su ordenador o ayudarle con su programa parabajarpelisgratis favorito o hablar de temas que pueden tratarse via email.

5 – No uses friendfeed ni herramientas similares. Twitter, Yammer y otros servicios similares pueden servir para compartir información de una forma concisa, rápida y asíncrona. Sin embargo, podemos pasarnos por la patilla el concepto de asincronidad, y usar esos servicios como el punto 1, es decir como si se tratase de un chat. Herramientas como friendfeed nos permiten centralizar y agrupar toda esa información en un solo sitio para poder revisarla con calma de una pasada en lugar de estar pendientes minuto a minuto, por lo que hay que pasar de ellos.

6 – Concreta el mayor número de reuniones posibles. Si tienes que desplazarte mucho mejor, y si ya tienes que coger un vuelo para ir y volver en el mismo día puedes considerarte sensei. Las reuniones si no siguen patrones o metodología como SCRUM, pueden ser una de las oportunidades a tener más en cuenta para lograr desprendernos de horas de nuestro abundante tiempo.

Debes evitar tener un guión con temas a tratar y asegurarte que las personas con las que te reunes tampoco lo tienen. Si es posible, se puede reincidir en temas que se han tratado en anteriores reuniones y quedaron ya zanjados, para volver a plantearlos y volver a hacer “brainstorming” sin ningún tipo de criterio ni metodologías.

Intenta divagar lo máximo posible, buscando analogías que os lleven a hablar sobre temas que no tienen nada que ver con lo que esteis tratando.

7 – Eres técnico, hazlo todo tú mismo. Si eres técnico seguramente seas capaz de hacer muchas cosas al margen de lo que realmente te proporciona ingresos, simplemente porque puedes hacerlas por tí mismo o mejorar las que puedes encontrar ya hechas. Montarte tu propio servidor y gestionarlo absolutamente todo por tí mismo, optimizar tu sistema para que el kernel esté ajustado al hardware de tu equipo, programarte o modificar tus propios drivers, evitar usar frameworks, maquetar para navegadores obsoletos, retocar css, “diseñar” a pesar de no ser diseñador, crearte tus propias herramientas de gestión de proyectos o facturación..

8 – No pagues a nadie por hacer lo que puedas hacer tú mismo. Eres una persona inteligente con mucho tiempo para gastar, ¿por qué pagar a otro por hacer algo que puedes hacer gratis? Reservar hoteles, vuelos, el dentista, hacer compras buscando el precio más barato, concretar citas, reuniones, llevar la facturación, apuntarse a eventos… todas esas cosas las puedes hacer tú mismo y gratis.

9 – Se inconformista. Probablemente mientras estés programando o implementando alguna solución te des cuenta de que no es la forma más óptima de hacerlo. Puedes refactorizar o cambiar todo sobre la marcha antes de completar los milestones, de esa forma puedes perder tiempo e incluso no acabar nunca.

10 – Decir a todo que sí. Esto es algo tremendamente fácil de hacer (sobre todo si necesitamos liquidez) y que  nos puede hacer perder tiempo e incluso alejarnos del foco de nuestro trabajo por cosas que no son importantes ni para el propio cliente o proyecto. Nos puede parecer que nos va reportar algún beneficio a muy corto plazo,pero lo que si va a hacer es consumir nuestro tiempo a una velocidad sorprendente.

11 – Acudir a todos los eventos que existan. Da igual donde sean o la temática, lo importante es ir. Si se habla de “emprender”, “web *.0″, “seo”, “innovación” o “cloud computing” hay que ir. En muchos de esos eventos te encontrarás a cantidad de gente que no sabe cómo funcionan técnicamente las cosas sobra las que habla, en su vida va a perder una hora de sueño apostando en sus proyectos e ideas, ni van a dejar su cómodo puesto de trabajo, pero será una oportunidad genial para hablar con ellos sobre internet, blogs, el iphone, apple o lo que sea en lugar de estar sacando tu negocio adelante.

Por otro lado hay eventos en los que puedes encontrar a gente como tú, conseguir contactos que incluso pueden ayudarte, colaborar contigo en algún proyecto o proporcionarte recursos y experiencia. Trata de evitar estos eventos ya que a la larga pueden optimizar tu tiempo o evitar que lo pierdas en cosas que no son útiles.

12 – No automatices. Automatizar te requiere tiempo ahora mismo que no tienes, a pesar de que a medio plazo puede ahorrarte cantidades considerables del mismo. Si por alguna razón quieres ponerte a automatizar, hazlo por tí mismo. Respeta el punto 7 y no pagues a nadie por hacer lo que tú sabes hacer.

Trata de evitar conocer el terminal o programas como automator y quicksilver en MacOSX.

Saliendo de la ironía de estos 12 puntos, sobra decir que el tiempo es el peor enemigo sobre todo para autónomos y emprendedores, ya que una hora perdida es una hora no facturada o invertida en tu proyecto, una hora que hay que sacar “de donde sea” y “como sea”, sacrificando todo lo demás.

Semanas moviditas

Desde que empezó el año mi tiempo se ha ido esfumando a una velocidad alarmante. Por suerte, y a pesar de que creo se podría optimizar mejor, creo que está siendo bien invertido.

En lo que respecta al proyecto que tengo entre manos, al margen de estar informándonos de qué ayudas nos pueden interesar, buscar el hardware adecuado para afrontar la infraestructura inicial que necesitamos, contratar la imagen de nuestra empresa y por supuesto trabajar para nuestros clientes actuales.. esta semana he estado en dos eventos que han sido tremendamente interesantes, gracias como siempre a la gente que encuentras en ellos.

El Jueves estuvimos en el evento de seguridad de Microsoft e Informática64 (Up To Secure) en Pamplona, donde nos encontramos a Chema Alonso que nos presentó a Iñaki Ayucar, director de desarrollo de SimaxVirt un proyecto que se merece todo un post y del que algo comenté en su día. Después de tener la oportunidad de comer con Paulo y Fernando de Microsoft entre otros, fuimos a un HOL impartido por Chema sobre técnicas avanzadas de hacking web centradas en sql injection y ldap injection.

El viernes estuvimos en Bazkaria, organizado por Ideateca, Hostinet y DomainProtect, que consiguió generar networking de calidad en el que pude volver a encontrarme con Carlos, Rubén e Iñaki teniendo la oportunidad de conocer a Gorka de Elurnet, Ruth Guerrero de Monazen, la gente de Abartia Team, Iñaki García de Novisline, Igor San Román de Innomarket, entre muchos otros con los que no pude intercambiar tarjetas.

Esta semana que entra no se queda muy atrás y la siguiente estaré en el Search Congress de Barcelona. Espero conocer a más personas y tomarme café con alguno de vosotros si os encontrais por esa ciudad.

Aprovecho para preguntar.. ¿alguien sabe de un buen libro para aprender a gestionar el tiempo? Busco algo que sea realmente útil, con referencias a servicios que se puedan contratar o técnicas que ayuden a afrontar de forma productiva el paso de las agujas del reloj.

Creando una nueva empresa: el email de contacto

email

Como sabéis mi primer objetivo este 2009 es crear una empresa, algo que ya he empezado a hacer junto a mi socio y de lo que he empezado a hablar.

Nos ha sorprendido que tras comentar por encima detalles, tanto técnicos como de estrategias y servicios que pensamos ofrecer, se haya visto cierto interés, entusiasmo e incluso disposición a prestar su ayuda, desde prácticamente el primer momento por parte de ciertas personas y empresas a las que respetamos profundamente y que nos ha llenado de ganas de ir a por todas poniendo toda la carne en el asador (Gracias, gracias y gracias!!).

Algunos de los que leáis esto probablemente ya conozcáis buena parte de nuestros planes de ejecución y de negocio e incluso, estéis recibiendo algunos de nuestros servicios.

Ahora mismo nos asalta una duda y es que hasta la fecha hemos contactado con nuestro email personal o nuestro teléfono, para todo tipo de temas relacionados con nuestro proyecto.

Esto ha sido así, porque hemos pensado que es importante que ante todo conozcáis quién está detrás del nombre del proyecto y que somos personas con nombres y apellidos las que os están ofreciendo estos servicios.

Pero se acerca la hora de mostrar un nombre, presentar un poco mejor y claramente nuestra apuesta, y claro está empezar a movernos y a conoceros a todos los que creemos que pueda resultaros interesante.

Por ello hemos pensado que quizá sea hora de contactaros con la dirección de nuestro proyecto y de nuestra futura empresa (aún no constituída) en lugar de hacerlo con los emails que ya muchos conocéis.

Y es que si vamos a hablaros de lo que tenemos planeado hacer, quizá sea mejor que veáis lo que estamos ya haciendo.

Pero dejo abierto el debate: ¿vosotros qué creéis que es mejor, contactar desde un email que sea el dominio de la futura empresa para presentar el proyecto, o esperar a constituirla y seguir contactando con nuestro email personal por ahora?

Quarentine y REC

Algunos ya lo han comentado, y yo no he podido evitar hacer lo mismo.

Personalmente no me suele gustar el cine hecho en España, simplemente porque lo que me gusta encontrarme en una película es una buena idea, alimentada de buenas actuaciones y de un guión inteligente. Tampoco me suele gusta el doblaje al español, ya que suele deteriorar notablemente el producto original.

Desde mi gusto REC es una excepción, como ocurre como otras muchas otras obras, de lo que puede encontrarse en el catálogo de producciones españolas. Fui muy escéptico al cine a verla y realmente el resultado me encantó.

Ahora veo atónico como una película americana, que no es más que una versión de REC, popularmente por el público español empieza a recibir más apoyo que la obra original.

No es la primera vez, ni creo que sea la última, que ocurre algo así. Mientras los espectadores no sepamos valorar lo bueno e ignorar/desaconsejar todo lo demás que se haga en este país, y los propietaros de los derechos de obras que realmente son buenas, permitan que aparezcan versiones de las mismas que eclipsen las obras originales, pienso que el cine en este país va a seguir el camino hacia /dev/null la perdida de interés total por parte del espectador.

Os dejo con los trailers tanto de rec como de quarentine.

Algunas de las mejoras en Windows Server 2008 R2

Estas son las mejoras que más me han gustado en la nueva versión R2 para Microsoft Windows Server 2008

Estará disponible sólo en 64Bits

HyperV 2 soporta 32 procesadores lógicos en la máquina anfitriona

Las máquinas virtuales corriendo en HyperV 2 se pueden migrar en caliente sin pérdida de servicio

Se pueden agregar discos a las máquinas virtuales corriendo en HyperV 2 sin necesidad de reinicio

Soporte de SLAT (second level address translation), se pueden aprovechar nuevas características de procesador que proporcionan un mayor rendimiento y reducen la carga de Hypervisor.

Se puede atacar a IIS7 desde PowerShell 2.0 (gracias!)

ASP.NET se puede ejecutar ahora en modo Server Core (gracias!)

Powershell se puede ejecutar ahora en modo Server Core (gracias!)

Los scripts de Powershell 2.0 pueden ser internacionalizados

Mejoras en la seguridad de DNS para prevenir ataques DDOS y respuestas no legítimas

Se ha conseguido reducir considerablemente el consumo de energía

    Unpossible, riesgos al viajar en el tiempo

    Como bien ha quedado demostrado en películas como Primer o El efecto mariposa, viajar en el tiempo no es una tarea trivial.

    En el hipotético caso de contar con un dispositivo que nos permitise conseguirlo, hay que tener en cuenta las repercusiones que podemos ocasionar en la historia de toda la humanidad si cambiamos un mínimo detalle del pasado, las posibles paradojas que se crearían al perder el dispositivo o incluso duplicar su existencia o la nuestra propia dentro de varios universos temporales paralelos.

    Unpossible es un corto de Robin King en el que, muy al estilo de primer, se nos muestra brevemente el riesgo que puede ocasionar un viaje en el tiempo a tan sólo unos escasos minutos atrás.


    Unpossible from Robin King on Vimeo.

    Comienzo un nuevo año y un nuevo proyecto

    El jueves comenzó un nuevo año, un año que algunos han clasificado como temible y otros tantos le han puesto la etiqueta oportunidad.

    Lo cierto es que, a pesar de entender los motivos que lo hacen temible digno de todo respeto desde un punto de vista económico, yo me encuentro en el segundo grupo. Creo sinceramente que este año va a ponernos a todos a prueba, algo que me resulta francamente emocionante.

    Y es que este año para mí va a resultar especialmente relevante, mucho más que el anterior incluso, ya que desde hace algunos meses estoy preparando el camino para lo que va a ser mi segundo intento de crear una empresa.

    Lejos de buscar la etiqueta de emprendedor, esta entrada la escribo para explicar de una forma breve a los que esteis interesados en qué es lo que tengo entre manos y que va a ver la luz este año.

    Creo que debo empezar comentando que este proyecto no lo estoy llevando a cabo en solitario, lo estoy llevando a cabo junto a otra persona en la que confío plenamente.

    Nuestro proyecto está orientado a ofrecer soluciones a empresas, startups, desarrolladores web y emprendedores que requieran asesoramiento, tecnologías en sus últimas versiones, arquitecturas escalables, administración/optimización de sus sistemas para llevar a buen puerto su proyecto en internet.

    Tenemos experiencia técnica trabajando tanto bajo el área de sistemas como en el de desarrollo en internet, por lo que creemos que podemos hablar el mismo idioma que nuestros clientes y ser conscientes de sus inquietudes desde su mismo punto de vista, algo que sinceramente es lo que más me atrae de este proyecto.

    Para los que os interese saber más sobre este proyecto, estaré encantado de charlar sobre él con vosotros en los siguientes eventos en los que podéis encontrarme este mes.

    Pamplona el día 15: Microsoft Technet: Up to Secure

    Bilbao (sede eitb) el día 16: Bazkaria

    Barcelona los días del 28 al 30: Search Congress