carlospes
Usuario (España)
Para iniciar la creación de un sitio web, lo primero que debe existir es el interés de alguien para que este exista, con el fin de conseguir algo. Por ejemplo, el dueño de una librería que quiera darla a conocer en Internet y ofrecer venta de libros online; una ONG que quiera informar de sus acciones y captar simpatizantes para colaborar; un centro educativo que quiera informar de los estudios que ofrece; un grupo de música que desee mantener informados a sus fans de los próximos conciertos que va a dar; etcétera. Así, detrás de cualquier desarrollo de un sitio web siempre hay algún objetivo, entre los que cabe destacar: darse a conocer, informar y ganar dinero mediante la venta de algún producto o servicio. ¿Quién desarrolla el Sitio Web? Si usted es el propietario de un negocio y quiere tener presencia en Internet mediante un sitio web para su empresa, puede contemplar las siguientes posibilidades: desarrollarlo usted mismo, confiar su elaboración a uno o varios de sus empleados, contratar los servicios de terceros, dejar su elaboración en manos de un amigo o conocido, etcétera. También es posible que usted desarrolle sitios web para ganar dinero haciendo páginas webs a terceros o haciendo páginas webs propias con las que ganar dinero mediante publicidad, sistemas de afiliados, venta de enlaces, etcétera. Asimismo, usted podría trabajar en una empresa desarrolladora de soluciones web creando también sitios webs para terceros. Por otro lado, hay que tener presente que para desarrollar proyectos web de cierta envergadura será necesario un equipo de personas que se repartan las tareas a llevar a cabo. De forma que, cada uno de los integrantes del equipo podría estar especializado en un área distinta: diseño web, marketing online, seguridad, etcétera. ¿A quién le puede interesar tener un Sitio Web? Hoy en día se puede decir que si no estás en Internet no existes. Imaginemos, por ejemplo, que alguien quiere ir de viaje a Madrid y desea encontrar un hotel céntrico, económico y lo más cercano posible a una boca de metro, ¿qué puede hacer?, ¿cómo lo puede encontrar? Una manera muy fácil es buscar en Internet y, en apenas unos segundos, podrá obtener un listado de hoteles con tales características para elegir. Ahora bien, ¿qué hoteles aparecerán en dicha lista? Aquellos que se hayan preocupado por estar presentes en Internet. Este es un ejemplo sencillo para comprender porqué a todos los hoteles, restaurantes, zapaterías, discotecas, tiendas de ropa, masajistas, pintores y a un largo etcétera les interesa tener un sitio web. ¿Cómo aparecer en las primeras posiciones de los buscadores? Supongamos que el dueño de un hotel céntrico y económico de Madrid ya tiene un sitio web creado. Sin embargo, siguiendo con el ejemplo del apartado anterior, si al realizar la búsqueda, su hotel aparece en la posición 250 de la lista obtenida, probablemente casi nadie visite su web. Entonces, debemos preguntarnos ¿qué puede hacer para que su hotel escale posiciones y aparezca entre los primeros de esa lista? Para intentar que ello suceda podemos realizar una serie de acciones relacionadas con el Marketing Online, especialmente acciones SEO (Search Engine Optimization) y SEM (Search Engine Marketing). ¿Qué se dice en Internet de mi negocio? Los usuarios de Internet, cuando buscamos productos o servicios, como puede ser una habitación de hotel, también tenemos en cuenta la opinión de otros usuarios respecto a ese producto o servicio. Por ejemplo, no reaccionaremos igual ante comentarios como “La situación era perfecta, sin embargo, el ruido de la calle no nos dejó pegar ojo. Además, la limpieza dejaba un poco que desear.” que “Los dueños eran muy amables y la comida estupenda, por lo que, volveríamos con los ojos cerrados.”. En consecuencia, debemos tratar de averiguar qué se dice de nuestro negocio en Internet y realizar acciones para que la reputación del mismo sea lo mejor posible, ya que, si nuestro hotel apareciese en las primeras posiciones de búsqueda, pero, con una opinión de los usuarios nefasta, esto nos podría perjudicar mucho más que si no apareciese en la búsqueda. Para gestionar dicha reputación podemos realizar acciones ORM (Online Reputation Management). ¿Cómo beneficiarse de las Redes Sociales de Internet? Desde la perspectiva de una empresa o negocio, además de un sitio web, Internet ofrece muchas más posibilidades para estar presente y dar a conocer nuestros productos y/o servicios a nuestros posibles clientes. Las redes sociales de Internet son, sin duda alguna, quienes nos permitirán acercarnos más a los internautas, permitiéndonos interactuar con ellos, crear comunidad, informar a nuestros seguidores, saber su opinión acerca de nosotros, etcétera. Para ello, podemos realizar acciones SMO (Social Media Optimization). ¿Quién visita el Sitio Web? Cuando el sitio web que hayamos creado ya esté online en Internet, algo fundamental que deberemos saber es qué resultados está dando, es decir, tendremos que poder responder a preguntas tales como: * ¿Cuántas visitas estamos obteniendo al día, a la semana, al mes? * ¿Desde dónde nos visitan? ¿Qué ciudades o países? * ¿Están comprando nuestros artículos o servicios desde el sitio web? ¿Qué porcentaje de visitantes hace alguna compra? * ¿Cuántos vuelven a visitarnos? * Etcétera. Para poder responder a estas y otras preguntas relacionadas, es posible utilizar distintas herramientas de software que nos proporcionen estadísticas de visitas al sitio web, resúmenes de ventas realizadas, datos relacionados con el perfil de nuestros visitantes o usuarios, etcétera. Esto nos servirá para tener en cuenta a la hora de tomar decisiones respecto a modificaciones, ampliaciones o mejoras de nuestro sitio web. Documentación del Proyecto Web Cuando se desarrolla un proyecto web es conveniente generar una documentación en donde queden plasmadas todas las acciones realizadas a lo largo del mismo, algo que iremos haciendo desde el principio. La documentación de un proyecto web podrá ser consultada en cualquier momento y, también, nos ayudará a corregir posibles errores, realizar modificaciones o ampliaciones. Si le ha gustado este artículo y desea incluirlo en su sitio web, puede hacerlo sin ningún problema, siempre y cuando cite como fuente del mismo a www.carlospes.com Carlos Pes - Desarrollo de Sitios Web
Cada día que pasa, el número de usuarios de las redes sociales de Internet es mayor. Por tanto, además de SEO y SEM, realizar acciones SMO es algo que todo sitio Web debería plantearse. Dar una mayor visibilidad en redes sociales de Internet a su sitio Web, es posible haciendo uso de técnicas SMO (Social Media Optimization), obteniendo así visitas de los usuarios de distintas redes sociales, tales como: Facebook, MySpace, Twitter,... Así, para potenciar la Visibilidad en Redes Sociales (SMO) se puede influir, por ejemplo, sobre redes sociales de: Noticias, blogs y marcadores En SMO, tres factores destacables sobre los que se debe intentar influir lo máximo posible, ya que contribuirán considerablemente a incrementar el número de visitas a un sitio Web, son: En primer lugar, conseguir que otras Web de noticias, tales como Digg o Menéame, se hagan eco de noticias relacionadas con nuestro sitio Web o negocio. Por ejemplo, cuando lancemos un nuevo producto, realicemos alguna oferta especial, etc. En segundo lugar, también es conveniente que en el mayor número posible de blogs (especialmente los relacionados con la temática de nuestro sitio Web o negocio) hablen de nosotros. Por ejemplo, resaltando alguna característica especial de nuestra empresa, comentando nuestros servicios, etc. En tercer lugar, también es deseable conseguir que nos añadan a su lista de enlaces favoritos o marcadores (bookmarks) los usuarios de distintas redes o comunidades sociales o, más específicamente, en webs que ofrezcan gestores de marcadores sociales, como por ejemplo, Delicious. Vídeos, Imágenes y Podcasts Con la aparición de la Web 2.0, el uso de vídeos, imágenes y podcasts (archivos de audio) ha tenido un gran auge en Internet y, en este sentido, es conveniente aprovechar las oportunidades que nos ofrecen redes sociales como YouTube, Flickr, etc. Artículos Tampoco hay que olvidarse de los sitios web donde los usuarios pueden añadir artículos y, en el contenido de dichos artículos, es posible incluir enlaces hacia nuestros sitios web. Resumiendo, se puede decir que las Redes Sociales de Internet como por ejemplo Facebook, YouTube, MySpace o Twitter son utilizadas por millones de internautas diariamente. Por tanto, integrarse en dichas redes sociales de la forma más adecuada, es un factor clave para poder conseguir visitas de los usuarios de dichas redes sociales. Si le ha gustado este artículo y desea incluirlo en su sitio web, puede hacerlo, siempre y cuando cite como fuente del mismo a www.carlospes.com Carlos Pes - Desarrollo de Sitios Web
Mediante herramientas SEM (Search Engine Marketing) o de , es posible realizar campañas de marketing en los buscadores de Internet. Internet es, hoy en día, uno de los medios más utilizados para buscar todo tipo de información: viajes, hoteles, casas rurales, restaurantes, televisores, bicicletas, moda, libros, etc. Por lo que, realizar campañas de marketing en buscadores le garantiza tener visitas en su sitio Web de internautas realmente interesados en lo que usted les puede ofrecer. Además, en SEM, con una pequeña inversión, enseguida empezará a obtener resultados. Entre las características más importantes del marketing en buscadores podemos destacar: Relevancia Con SEM es posible mostrar su anuncio publicitario exclusivamente a usuarios interesados en lo que usted les puede ofrecer. Además, se puede elegir el área geográfica en la que quiere mostrar su anuncio, especificando el país, la ciudad e incluso la calle en algunos casos. Pago por resultado Solamente pagará cuando el internauta haga clic en su anuncio y visite su sitio Web, es decir, si por ejemplo un anuncio suyo se muestra 3500 veces en un día, pero, sólo 12 personas hacen clic en dicho anuncio, pagará únicamente por esos 12 clics. Estadísticas de sus campañas publicitarias En todo momento controlará el gasto de su inversión en marketing en buscadores. De tal forma que, sabrá cuantas veces se muestran sus anuncios, cuantos usuarios han visitado su sitio Web, el coste de cada clic, el retorno de su inversión, etc. Toma de decisiones En función de los resultados obtenidos es posible rediseñar sus anuncios fácilmente, aumentar o disminuir su inversión en marketing de un día para otro, anular o crear nuevas campañas publicitarias, etc. Si le ha gustado este artículo y desea incluirlo en su sitio web, puede hacerlo, siempre y cuando cite como fuente del mismo a www.carlospes.com Carlos Pes -
Mientras que, por ejemplo, en lenguaje C, se puede hacer uso de una instrucción repetitiva hacer...mientras, utilizándose la sintaxis: do { <bloque_de_instrucciones> } while ( <expresión_lógica> ); En Pascal, se puede emplear un bucle repetir...hasta. La sintaxis es: repeat <bloque_de_instrucciones> until <expresión_lógica>; La diferencia principal, entre ambos bucles, es que: "un bucle do...while permite ejecutar repetidamente (una o más veces) un bloque de instrucciones, mientras que, una determinada condición sea verdadera" y, por otra parte, "un bucle repeat...until permite ejecutar repetidamente (una o más veces) un bloque de instrucciones, hasta que, una determinada condición sea verdadera." Obsérvese que, en los ordinogramas del Curso de Diseño de Algoritmos, se utiliza la sintaxis de una instrucción repetitiva hacer...mientras: La sintaxis utilizada se corresponde con la empleada en el Pseudocódigo CEE (C En Español): hacer <bloque_de_instrucciones> mientras ( <expresión_lógica> ) De forma que, cuando se evalúe la <expesión_lógica> del bucle, SI ésta es verdadera, el <bloque_de_instrucciones> se vuelve a ejecutar. Y así sucesivamente, hasta que la condición sea falsa o, mientras que, NO sea verdadera. En consecuencia, para un bucle repetir...hasta podríamos utilizar la siguiente sintaxis en ordinogramas: Fíjese que, donde poníamos SI, ahora escribimos NO, y al revés. Ejemplo: Se quiere diseñar el algoritmo de un programa que muestre por pantalla los primeros diez números naturales: 1 2 3 4 5 6 7 8 9 10 Utilizando un bucle hacer...mientras, la solución en Pseudocódigo CEE puede ser: algoritmo Numeros_del_1_al_10 variables entero contador inicio contador ← 1 /* Inicialización del contador */ hacer escribir( contador ) /* Salida */ contador ← contador + 1 /* Incremento */ mientras ( contador <= 10 ) /* Condición */ fin De manera gráfica, se puede representar como se muestra a continuación: Su codificación en lenguaje C sería: #include <stdio.h> int main() { int contador; printf( "n " ); contador = 1; /* Inicialización del contador */ do { printf( "%d ", contador ); /* Salida */ contador++; /* Incremento */ } while ( contador <= 10 ); /* Condición */ return 0; } No obstante, en Pascal, utilizando un bucle repeat...until, escribiríamos el siguiente código fuente: program EJE13101; uses Crt; var Contador : Integer; begin ClrScr; GotoXY( 4, 2 ); Contador := 1; { Inicializacion del contador } repeat Write( Contador, ' ' ); { Salida } Contador := Contador + 1; { Incremento } until Contador > 10; { Condicion } end. Obsérvese que, la condición de salida del bucle en Pascal Contador > 10 es la contraria a la que hemos empleado en lenguaje C contador <= 10 Y así deberemos hacer siempre que queramos "convertir" un programa escrito en lenguaje C a Pascal, o al revés. Si le ha gustado este artículo y desea incluirlo en su sitio web, puede hacerlo sin ningún problema, siempre y cuando cite como fuente del mismo a http://www.carlospes.com
En programación, un algoritmo establece, de manera genérica e informal, la secuencia de pasos o acciones que resuelve un determinado problema y, para representarlo, se utiliza, fundamentalmente, dos tipos de notación: pseudocódigo y diagramas de flujo. Así pues, en este artículo, voy a explicar, con un ejemplo, los pasos que "mentalmente" se pueden seguir para diseñar el algoritmo, en Pseudocódigo CEE (C En Español) y ordinograma, de un programa que dé solución a un problema de programación. En concreto, vamos a ver, desmenuzadamente, cómo se puede diseñar el algoritmo para resolver el ejercicio 1, "Media aritmética de números introducidos", de la sección Repetitiva hacer...mientras del listado de ejercicios de programación resueltos en diferentes lenguajes. De forma que, los pasos a seguir (siete en este caso) son los siguientes: · Paso 1 Comprender qué es lo que se nos está pidiendo. En este caso, el enunciado del ejercicio es: "Diseñe el algoritmo de un programa que: 1º) Pida por teclado un número (dato entero). 2º) Muestre por pantalla los mensajes: * Ha introducido <cantidad_de_números> número(s) * La suma es <suma> 3º) Pregunte al usuario si desea introducir otro o no. 4º) Repita los pasos 1º, 2º y 3º, mientras que, el usuario no responda 'n' de (no). 5º) Muestre por pantalla la media aritmética (dato real) de los números introducidos. Nota: Utilice un bucle hacer...mientras." En pantalla: Introduzca un número entero: 3 Ha introducido 1 número(s) La suma es 3 ¿Desea introducir otro (s/n)?: s Introduzca un número entero: 7 Ha introducido 2 número(s) La suma es 10 ¿Desea introducir otro (s/n)?: s Introduzca un número entero: 6 Ha introducido 3 número(s) La suma es 16 ¿Desea introducir otro (s/n)?: s Introduzca un número entero: 13 Ha introducido 4 número(s) La suma es 29 ¿Desea introducir otro (s/n)?: n La media aritmética es 7.25 Simplemente, al leer el enunciado del problema, ya podemos hacernos una idea de algunas características importantes del algoritmo que vamos a diseñar: * Exiten 5 instrucciones de salida para mostrar por pantalla: Introduzca un número entero: Ha introducido X número(s) La suma es Y ¿Desea introducir otro (s/n)?: La media aritmética es Z * Exiten 2 instrucciones de entrada. Una para recoger un dato númerico entero después de mostrar por pantalla: Introduzca un número entero: y, otra, para recoger un dato de tipo carácter después de mostrar por pantalla: ¿Desea introducir otro (s/n)?: * En algún momento, se deberá calcular: la cantidad de números introducidos, la suma de los mismos y la media aritmética de dichos números, por tanto, seguramente, emplearemos 2 ó 3 instrucciones de asignación. * Tendremos que utilizar varias variables para: recoger el o los números que introduzca el usuario por teclado (numero), contar los números introducidos (contador), almacenar la suma de dichos números (acumulador), preguntar al usuario si desea introducir otro número o no (seguir), ¿calcular la media aritmética (media_aritmetica)? * Necesitaremos un bucle para que el usuario pueda introducir los números que desee (solamente uno o más), de hecho, ya se nos especifica, en la "Nota" del enunciado, que debemos hacer uso de un bucle hacer...mientras. En los pasos siguientes, vamos a ver cómo combinar los elementos detectados e integrarlos en la estructura de un algoritmo. No obstante, lo vamos a hacer, poco a poco, a medida que vayamos construyendo dicho algoritmo. · Paso 2 Escribir la estructura básica del algoritmo en pseodocódigo: algoritmo Media_aritmetica_de_numeros_introducidos inicio ... fin Obsérvese que, ya podemos nombrar al algoritmo mediante un identificador, en este caso, podemos escribir: Media_aritmetica_de_numeros_introducidos En ordinograma, comenzaremos escribiendo el inicio y fin del cuerpo: · Paso 3 Según se nos indica en el primer punto del ejercicio, el algoritmo debe: 1º) Pedir por teclado un número (dato entero). Mostrándose por pantalla: Introduzca un número entero: <número> Por consiguiente, en el algoritmo hay que escribir una instrucción de salida y otra de entrada. En pseudocódigo: algoritmo Media_aritmetica_de_numeros_introducidos inicio escribir( "Introduzca un número entero: " ) leer( numero ) ... fin Se tiene que declarar la variable numero, así escribimos: algoritmo Media_aritmetica_de_numeros_introducidos variables entero numero inicio escribir( "Introduzca un número entero: " ) leer( numero ) ... fin En ordinograma: Recordemos que, en los ordinogramas no se representa la declaración de variables. · Paso 4 A continuación, en el segundo punto del ejercicio se nos indica que: 2º) El programa debe mostrar por pantalla los mensajes: * Ha introducido <cantidad_de_números> número(s) * La suma es <suma> De modo que, incorporamos dos nuevas instrucciones de salida al algoritmo, en las que vamos a mostrar el valor de una variable contador para mostrar la cantidad de números introducidos por el usuario y, por otra parte, el valor de una variable acumulador, para mostrar la suma de dichos números. En pseudocódigo: algoritmo Media_aritmetica_de_numeros_introducidos variables entero numero inicio escribir( "Introduzca un número entero: " ) leer( numero ) ... escribir( "Ha introducido ", contador, " número(s)" ) escribir( "La suma es ", acumulador ) ... fin Y declaramos las nuevas variables: contador y acumulador. algoritmo Media_aritmetica_de_numeros_introducidos variables entero acumulador, contador, numero inicio escribir( "Introduzca un número entero: " ) leer( numero ) ... escribir( "Ha introducido ", contador, " número(s)" ) escribir( "La suma es ", acumulador ) ... fin En ordinograma: Pero, ¿qué valores tienen las variables contador y acumulador? Inicialmente, almacenarán un cero (0) cada una de ellas y, después de leer un número, habrá que incrementar el valor de contador en uno (1) y sumar el valor de dicho número a acumulador. algoritmo Media_aritmetica_de_numeros_introducidos variables entero acumulador, contador, numero inicio acumulador ← 0 contador ← 0 escribir( "Introduzca un número entero: " ) leer( numero ) acumulador ← acumulador + numero contador ← contador + 1 escribir( "Ha introducido ", contador, " número(s)" ) escribir( "La suma es ", acumulador ) ... fin En ordinograma: · Paso 5 Atendiendo al tercer punto del ejercicio: 3º) Preguntar al usuario si desea introducir otro número o no. al algoritmo le añadimos una nueva instrucción de salida, otra de entrada y declaramos una nueva variable (seguir). En pseudocódigo: algoritmo Media_aritmetica_de_numeros_introducidos variables caracter seguir entero acumulador, contador, numero inicio acumulador ← 0 contador ← 0 escribir( "Introduzca un número entero: " ) leer( numero ) acumulador ← acumulador + numero contador ← contador + 1 escribir( "Ha introducido ", contador, " número(s)" ) escribir( "La suma es ", acumulador ) escribir( "¿Desea introducir otro número (s/n)?: " ) leer( seguir ) ... fin En ordinograma: · Paso 6 Teniendo en cuenta el cuarto punto del ejercicio: 4º) Repetir los pasos 1º, 2º y 3º, mientras que, el usuario no responda 'n' de (no). es necesario hacer uso de una instrucción de control repetitiva que, como se especifica en la "Nota" del ejercicio, será un bucle hacer...mientras. En cualquier caso, también podríamos habernos hecho las preguntas del apartado 10.3 Repetitiva para del Curso de Diseño de Algoritmos acerca de cuándo usar un bucle u otro: * ¿Se conoce, de antemano, el número de veces (iteraciones) que tiene que ejecutarse un determinado bloque de instrucciones? No, por tanto, descartamos el bucle para. * ¿El bloque de instrucciones debe ejecutarse al menos una vez? Sí, de forma que, optamos por hacer uso de un bucle hacer...mientras. En pseudocódigo: algoritmo Media_aritmetica_de_numeros_introducidos variables caracter seguir entero acumulador, contador, numero inicio acumulador ← 0 contador ← 0 hacer escribir( "Introduzca un número entero: " ) leer( numero ) acumulador ← acumulador + numero contador ← contador + 1 escribir( "Ha introducido ", contador, " número(s)" ) escribir( "La suma es ", acumulador ) escribir( "¿Desea introducir otro número (s/n)?: " ) leer( seguir ) mientras ( seguir <> 'n' ) ... fin Fíjese que, la inicialización de las variables contador y acumulador no están dentro del bloque de instrucciones del bucle, ya que, ello provocaría un error de lógica. En ordinograma: · Paso 7 Y, finalmente, para el quinto punto: 5º) Mostrar por pantalla la media aritmética (dato real) de los números introducidos. añadimos una última instrucción. En pseudocódigo: algoritmo Media_aritmetica_de_numeros_introducidos variables caracter seguir entero acumulador, contador, numero inicio acumulador ← 0 contador ← 0 hacer escribir( "Introduzca un número entero: " ) leer( numero ) acumulador ← acumulador + numero contador ← contador + 1 escribir( "Ha introducido ", contador, " número(s)" ) escribir( "La suma es ", acumulador ) escribir( "¿Desea introducir otro número (s/n)?: " ) leer( seguir ) mientras ( seguir <> 'n' ) escribir( "La media aritmética es ", acumulador / contador ) fin Nótese que, para mostrar la media aritmética no hemos utilizado una nueva variable y, de esta forma, también nos ahorramos escribir una nueva instrucción de asignación: media_aritmética ← acumulador / contador En ordinograma, la solución final será: Puede consultar la codificación de este algoritmo en lenguaje C y en Pascal. No obstante, téngase en cuenta que en Pascal se hace uso del bucle repetir...hasta en vez de repetir...mientras. Si le ha gustado este artículo y desea incluirlo en su sitio web, puede hacerlo sin ningún problema, siempre y cuando cite como fuente del mismo a http://www.carlospes.com/