Los formularios seguramente son uno de los sistemas de interacción hombre-máquina más usados y aunque son omnipresentes, muchas veces nos encontramos con formularios mal diseñados que al final no hacen otra cosa que dificultar la tarea para la que están pensados.
¿Qué son y para que se usan los formularios?
Según wikipedia, la definición de formulario es:
Se llama formulario a una plantilla o página con espacios vacíos que han de ser rellenados con alguna finalidad.
Y ahora que ya tenemos claro que es un formulario y para que se usa, vamos a ver unas guidelines o buenas prácticas que tenemos que tener en mente cuando nos enfrentemos a la tarea de diseñar o implementar elementos de este tipo.
Seguramente estas guidelines ya las conozcas ya que son evidentes, pero siempre está bien recordarlas. Y ahora vamos a ver estas buenas prácticas.
Pide únicamente la información necesaria.
Los formularios no son eternos, es decir, son elementos finitos y además tenemos que pedir únicamente la información estrictamente necesaria ya que cuanta más información tenga que rellenar el usuario, más tedioso va a ser el proceso y vamos a tener más posibilidades de abandono.
Nunca pidas la misma información varias veces. (more…)
Julio 2, 2008
Volvemos a Linq dado que cuanto más lo uso más me gusta y como ya dije anteriormente Linq seguramente es la mayor mejora que presenta ASP.NET 3.5 y por ello, hoy quería hablar de los operadores que nos aporta el Framework para poder hacer nuestras consultas más precisas.
Los operadores que vamos a ver hoy son:
- Take
- StartsWith
- EndsWith
- Contains
Estos operadores son equivalentes a operadores de SQL. Estos operadores son
(more…)
Junio 28, 2008
SHA1 es un algoritmo criptográfico perteneciente a la familia de algoritmos criptográficos SHA (Secure Hash Algorithm o Algoritmo de Hash Seguro) de la Agencia Nacional de Seguridad de Estados Unidos y desarrollada por el NIST (National Institude of Standards and Technology).
El primero de estos algoritmos fue desarrollado en el año 93 y fue el SHA (ahora conocido como SHA-0), 4 años después, fue sustituido por el SHA1 y posteriormente han aparecido SHA-224, SHA-256, SHA-384 y SHA-512 y todos son conocidos como SHA-2.
En 1998, se encontró una vulnerabilidad en SHA-0 pero esta no afectaba a SHA1 del cual no se ha encontrado ningún ataque efectivo. En 2004, fueron publicados una serie de ataques sobre hash parecidos al que genera SHA-1 planteándose por lo tanto dudas sobre la seguridad que este aporta.
Por medio del SHA1, vamos a obtener un hash sobre un conjunto de datos. Un hash viene a ser un conjunto de datos obtenido en base a otros.
Este tipo de algoritmos, se usa para certificar que una secuencia de datos no ha sido alterada, ya que si se modifica el valor del hash, implica que esa información ha sido alterada.
SHA1 produce una salida de 160 bits de un mensaje que puede tener un tamaño máximo de 264 bits y se basa en principios similares a los usados por Ronald Rivest (del MIT) para desarrollar los algoritmos MD4 y MD5.
¿Cómo podemos obtener un hash mediante el SHA1?
Pues vamos a verlo, la verdad es que con c# es sencillo dado que el Framework (como siempre) nos proporcionan unas clases para realizar esto. (more…)
Junio 23, 2008
Como ya sabéis Google es el indiscutible rey de internet y muchas veces habréis oído eso de si no estás en google no estás en internet o si no existes en para google no existes en internet.
Pues bien para remediar estas situaciones y / o aumentar nuestra visibilidad en la web podemos realizar algunas acciones que al final lo que buscan es que los crawlers o arañas de los buscadores, accedan a nuestro sitio con una periocidad adecuada e indexen todas nuestras urls de forma eficiente y correcta.
Una de las acciones que podemos realizar es crear un sitemap ya que con un pequeño esfuerzo vamos a obtener una gran ganancia.
Qué son los sitemaps y para que se usan
Los sitemaps son unos archivos donde se listan todas las urls de nuestro sitio y su función es ayudar a los usuarios a encontrar la información que buscan. (more…)
Junio 21, 2008
Hoy me han dado una gran noticia, a partir del 1 de Julio, tengo jornada de verano. Jajajaja, que alegría. Pues bien amigos además de esta, también tenemos otra, desde hoy mismo, tenemos disponible la versión 3 de Firefox, el (de momento y desde hace algún tiempo) mejor navegador del mercado.
Podéis descargarla gratis desde getFireFox.com y empezar a disfrutar de ella y de sus nuevas características que ahora veremos. Eso si cuidado porqué en el momento de la instalación algunas extensiones las tienes que actualizar a mano desde el sitio de extensiones de Firefox.
Así que ahora veamos las nuevas características de FireFox 3 y luego os cuento que extensiones uso.
Nuevas características de Firefox 3
Las nuevas características de Firefox son tantas que lo mejor va a ser que las agrupemos, así que vamos a ello.
Características de Firefox 3 relativas a la información y su gestión.
- Ahora y gracias al catálogo, Firefox 3 nos va a permitir guardar el historial de navegación, las búsquedas que realizamos y además ahora también los favoritos van a ser gestionados desde aquí.
- Soporte para categorías y etiquetas. Firefox se adelanta a cualquier navegador del mercado incluyendo la marcación social que tan buenos frutos ha dado. (more…)
Junio 19, 2008
El MD5 es un algoritmo criptográfico de 128 bits. Fue desarrollado por Ronald Rivest (profesor del MIT) en el año 91 como sucesor del MD4 y pesar de que en el año 96 fue anunciada una colisión de hash planteándose por lo tanto dudas sobre su futuro, a día de hoy es muy usado.
Por medio del MD5, vamos a obtener un hash sobre un conjunto de datos. Un hash viene a ser un conjunto de datos obtenido en base a otros.
Este tipo de algoritmos, se usa para certificar que una secuencia de datos no ha sido alterada, ya que si se modifica el valor del hash, implica que esa información ha cambiado.
El resultado obtenido por medio de un MD5 es una cadena hexadecimal de 32 dígitos.
¿Cómo podemos obtener un hash mediante el MD5?
Pues vamos a verlo, la verdad es que generar un hash MD5 con C# es sencillo dado que el Framework (como siempre) nos proporcionan unas clases para realizar esto. (more…)
Junio 10, 2008
Yahoo, en su developer network, tiene una sección llamada Yahoo Design Patterns, donde muestran los patrones de diseño orientados a interfaz de usuario, que han aplicado en el famosísimo buscador.
Por la falta de información de este tipo en el mundo del diseño de iteración y la usabilidad, esto es un recurso muy valioso, y hoy vamos a hablar de un gran desconocido (en homenaje al Sr. Carlos Herrera), los controles de paginación en las páginas de resultados de búsquedas.
Recordar antes de nada que un patrón es una buena solución dentro de un contexto, pero si el contexto no es el adecuado, este patrón puede convertirse en un anti patrón. (more…)
Junio 10, 2008
Seguramente, en algún momento, te vas a ver obligado a eliminar los acentos (y no solo los acentos) de un string. Esto lo podemos hacer de varias formas y las vamos a ver a continuación.
Eliminando acentos con Regular Expression (o Expresiones Regulares)
Pues sí, amigos míos, mejor que utilizar el método Replace de un string es usar Expresiones Regulares, ya que son mucho más eficientes.
Para poder eliminar los acentos por medio de las Regular Expression, tendremos que hacer el using de System.Text.RegularExpressions, y la faena es tan simple como definir una Regular Expression con los caracteres que serán reemplazados y después, hacer el Replace por medio de esta expresión regular.
El código necesario para eliminar los acentos de una a, sería el siguiente: (more…)
Junio 7, 2008
Y tiene que venir otra vez el Sr. Nielsen para decirnos como tenemos que usar los Tabs (Tabs, Used Right) de forma correcta ya que en múltiples ocasiones, los estamos usando en contextos que no son necesarios.
No nos vamos a enrollar más (que es tarde) y vamos directamente a ver estas guidelines:
- Los Tabs, tienen que usarse para cambiar de vistas dentro de un mismo contexto, no para navegar a distintas partes de nuestra aplicación o sitio web
- El contenido que oculta un Tab, tiene que ser una agrupación lógica de información (ya que esta agrupado claro ;-)) de manera que el usuario, pueda predecir o intuir lo que va a encontrar cuando selecciona una pestaña. Si no puedes agrupar de forma clara la información, y estas usando pestañas, las estas usando mal.
- Los usuarios no tienen que sentir que hay que comparar el contenido de dos pestañas distintas. Si es así, otra vez estamos haciendo algo mal, ya que cuando esto ocurre la información no tendría que estar en pestañas. Si todavía crees que esto no es así, ponte en situación de un usuario que está comparando el contenido de dos pestañas y tiene que estar pulsando una u otra continuamente para acceder a la información. Como podrás ver, esto no es muy usable (ni tampoco útil) (more…)
Junio 3, 2008
Al parecer amigos míos, (según he leído en el blog de Scott Guthrie) hace poco ha salido a la calle la beta 1 para .Net Framework 3.5 y Visual Studio 2008 (VS 2008 a partir de ahora). En ésta se incluyen correcciones y mejoras además de nuevas características para mejorar el desarrollo.
Si queréis descargarla podéis hacerlo desde el sitio de MSDN. La fecha de salida no es segura pero se cree que será al final del verano. Y ahora vamos a ir viendo las novedades pero antes de nada ten en cuenta:
- Ten cuidado donde instalas este Service Pack, ya que es una BETA.
- Antes de instalarlo instala el Windows Vista Service Pack 1.
- Si tienes instaladas las VS Tools for Silverlight 2 Beta 1, desinstálalo ya que si no lo hacéis la instalación fallara (No estamos hablando del Runtime de Silverlight sino las Tools).
- Igualmente, si tienes instalada la actualización KB949325 de VS 2008 desinstálala ya que si no lo haces, la instalación fallara.
- La beta del Service Pack 1, provoca problemas con Expression Blend. Así que si lo usas ya que eres capaz de programar y diseñar, piénsate dos veces si la instalas. (more…)
Mayo 30, 2008