viernes, 31 de octubre de 2008

¿Dudas?:

Se ha decidido colocar esta entrada de blog como medio para solucionar aquellas dudas relacionadas con cualquier tema informático, no solo para los alumnos ya de "Saleszar" sino para cualquiera que se encuentre con algún problema que desee resolver.
Para resolver estas dudas contamos con la colaboración de muchos aficionados a la informatica ,amateurs y un maestro especializado en programación.

Si tienes alguna tan solo has de añadirla a los comentarios de esta entrada y te será resuelta lo más rapidamente posible. Gracias por el interes.

¿Todo lo que se hace con un FOR se puede hacer con un WHILE?¿Y al contrario?


Os propongo esta pregunta. La respuesta sería ver si es posible encontrar algún programa con un FOR que fuera imposible de ser traducido con un WHILE (y viceversa).

jueves, 30 de octubre de 2008

Orson Welles y la Guerra de los Mundos


El 30 de Octubre de 1938, Orson Welles y el Teatro Mercurio, bajo el sello de la CBS, llevaron a cabo una extraordinaria adaptación radiofónica del libro "La guerra de los Mundos", de H.G.Wells. A continuación un discreto homenaje en forma de PostCast.  ¿El desarrollo de internet podría dar lugar a "engaños" tan convincentes como el de Welles?

jueves, 23 de octubre de 2008

Propuesta de trabajo: Revisíón de software específico para crear diagramas de flujo

Un diagrama de flujo es un estandar que permite representar gráficamente los detalles algorítmicos de un proceso antes de traducirlo a un lenguaje concreto de programación. Aunque su uso principal es en informática, tambien podemos encontrar diagramas de flujo en economía, psicología o incluso en la descripción de los procesos organizativos en las certificaciones de calidad. 
Existen muchas herramientas para la elaboración de estos diagramas. El trabajo consistiría en revisar las más utilizadas de entre las que son gratuitas, poniendo especial énfasis en la búsqueda de aplicaciones que sean capaces de extraer estos diagramas directamente a partir del código C. 
Bibliografía básica (para empezar a buscar):

miércoles, 22 de octubre de 2008

Breves: Condenan a una persona por desproteger un programa y distribuirlo



Por primera vez en nuestro país se ha condenado a una persona por desproteger el programa Presto y distribuir la versión en redes P2P. Puedes acceder a la noticia completa en el siguiente vínculo.

Nuevos cursos del INAEM


Tal y como comentamos en clase, ha salido una nueva tanda de cursos del INAEM que os pueden interesar. Podéis consultar la lista completa en:

lunes, 20 de octubre de 2008

Lenguaje Ensamblador: Mi experiencia personal.

El lenguaje ensamblador es un tipo de lenguaje de bajo nivel utilizado para escribir programas informáticos, y constituye la representación más directa del código máquina específico para cada arquitectura de maquinas legible por un programador.

Fue usado ampliamente en el pasado para el desarrollo de software, pero actualmente sólo se utiliza en contadas ocasiones, especialmente cuando se requiere la manipulación directa del hardware o se pretenden rendimientos inusuales de los equipos.

Un programa escrito en lenguaje ensamblador consiste en una serie de instrucciones que corresponden al flujo de órdenes ejecutables que pueden ser cargadas en la memoria de una computadora. Por ejemplo, un procesador x86 puede ejecutar la siguiente instrucción binaria como se expresa en código de máquina:
Binario: 10110000 01100001 (Hexadecimal: 0xb061)
La representación equivalente en lenguaje ensamblador es más fácil de recordar:
MOV al, 061h
Esta instrucción significa:
Mueva el valor hexadecimal 61 (97 decimal) al registro "al".



Mi opinión:
Yo la primera vez que entendí lo que era programar algo me entraron unas ganas horribles de hacer un programa hecho por mí y como  todo el mundo que empieza lo hace de forma autodidacta me hice una pregunta:

¿Con qué lenguaje debería empezar a aprender?

Yo feliz pensando que en dos días estaría haciendo virgerias llegué y pregunté en un foro con cuál empezar y como siempre está el graciosillo de turno me dijo:

"Deberías empezar con el lenguaje ensamblador (en inglés assembler) que es un lenguaje sencillo y con el que puedes hacer básicamente lo que quieras."

Yo desde mi ignorancia y sin haber visto nunca un lenguaje de programación dije pues nada a aprender ensamblador.

Si no recuerdo mal... creo que estuve con esto... una semana si llegó, me puse a buscar un lenguaje que se adaptase a mi novatez y encontré (aunque no se si en realidad es considerado como lenguaje de programación aunque sea web, creo que no) HTML y a partir de ahí empecé a adentrarme en este mundillo.

Bueno que me desvío del tema, mi opinión es que es un lenguaje difícil de aprender y que en realidad se usa mas bien poco porque habiendo lenguajes como c++ o java yo creo que ensamblador sobra (excepto si necesitas controlar demasiado el hardware), y otra cosa que le veo mala es que se pierde mucho tiempo programando en este lenguaje.

Una ventaja que si le encontré en el poco tiempo que estuve es que las aplicaciones van mas rápidas, ocupan menos, e incluso puede llegarse a crear alguna secuencia de comandos que en un lenguaje de alto nivel no se pudiese.

Vamos yo es como lo veo y como he dicho antes hablo desde mi ignorancia ya que he tenido poco contacto con este lenguaje aunque sí bastante información sobre el, pero ¿para gustos están los colores no?

Hackers...¿?


Encontré este articulo, me parece bastante interesante,al final del articulo expondré mi opinion acerca de este tema espero que comenteis vosotros la vuestra también.
Fuente de informacion de:http://www.eluniversal.com
-----------------------------------------
Cuando se distribuía un virus y afectaba a usuarios desprevenidos, el objetivo no era la fortuna, sino la fama. Los "hackers" no buscaban dinero, sino la gloria que se obtenía de irrumpir en un sistema y provocar el caos. Aunque difícilmente resultaba inofensivo, y estaba lejos de ser financieramente irrelevante, para los afectados, no eran más que el equivalente actual de las travesuras.
Ahora, a los hackers les interesa más no ser detectados. La fama es lo más alejado de sus mentes. En cambio, se concentran en un objetivo: información. Información que les pueda producir dinero. A veces es información acerca del producto de una compañía (espionaje industrial para obtener una ventaja competitiva o ganancia financiera a través de la manipulación de acciones). Y en otras ocasiones es más directo (van tras las finanzas de la compañía: facturas, números de cuentas de clientes, cualquier cosa que puedan obtener que les produzca dinero).
Este cambio de rumbo (de las travesuras maliciosas al cibercrimen) se puede ver casi todos los días, y ninguna compañía es inmune a un ataque. Grande o pequeña, cualquiera está en riesgo diariamente. Toda compañía que conserva datos y tiene acceso a Internet está en riesgo. Las compañías necesitan tomar medidas de protección para asegurarse de estar protegidas de las amenazas que están hoy en circulación, pero también necesitan estar protegidas de amenazas que aún no han salido a la luz.
Lo "tejemanejes": cómo atacan los cibercriminales
El cibercrimen se presenta en muchas formas. Troyanos, spyware y ataques dirigidos son sólo unas cuantas de las tácticas que se utilizan para alterar las operaciones de una compañía. Y aunque estas mismas amenazas son travesuras más o menos inofensivas, la mayoría es resultado de cibercriminales que irrumpen en redes de empresas pequeñas y medianas para hurtar documentos e información importantes o que intentan mantener bajo vigilancia las actividades de una compañía.
Más comúnmente, todas las tácticas que se utilizan para atacar la información de una compañía se clasifican como malware (software malicioso diseñado para atacar y operar sin ser detectado a fin de recopilar información). Aunque cambia constantemente, la tendencia entre los cibercriminales consiste en crear diferentes piezas de malware con capacidades cada vez mejores para no ser detectadas.
Es importante notar que hoy día los cibercriminales tienen acceso a todas las herramientas que las empresas utilizan para defenderse. Utilizan los mismos programas para probar sus metodologías de ataque y para monitorear el éxito de su ataque. Por ejemplo, un ataque se puede iniciar con un troyano que no es reconocido por las defensas que ha implementado una compañía. Una vez dentro, continúa operando hasta que las defensas de la compañía la detectan, reconocen la amenaza y siguen una acción. Sin embargo, como los criminales prueban su ataque con el mismo software, pueden modificar ligeramente su malware para que continúen con sus operaciones habituales.
Los "tejemanejes" más comunes de los cibercriminales incluyen:
• Spyware: se instala sin el consentimiento del usuario e intercepta información o toma control parcial de la interacción entre el usuario y la computadora. Envía información a otra computadora para su uso ilegal.
• Gusanos: un gusano se autoreplica se envía a otras computadoras, a menudo sin intervención del usuario, ocasionando problemas en la red y consumiendo principalmente ancho de banda.
• Adware: se ejecuta automáticamente y muestra o descarga material publicitario en una computadora. El adware y el spyware son tipos de amenazas íntimamente relacionados que invaden la privacidad del usuario.
• Programas de infección de archivos: se adjuntan por sí solos a archivos de programas, en general archivos .com o .exe seleccionados, y pueden infectar cualquier programa cuya ejecución es solicitada. Algunos virus que infectan archivos llegan como programas o scripts independientes que se envían como adjuntos a una nota enviada por correo electrónico.
• Spam: abuso común de sistemas de mensajería electrónica. El spam es una puerta de entrada para diversas variedades de malware.
• Suplantación de la identidad (o "phising"): intento por adquirir información confidencial, como nombres de usuario, contraseñas y detalles de tarjetas de crédito, disfrazándose como una entidad de confianza en una forma de comunicación electrónica.
Debe notarse que, con la proliferación de dispositivos móviles con navegadores Web y acceso permanente a internet, el mundo móvil está abierto ahora a estos tipos de ataques. Los virus basados en vulnerabilidades de los navegadores aumentarán con el tiempo y requerirán atención diligente y sólidas directivas de seguridad, aunadas a precauciones defensivas para minimizar el riesgo.
------------------------------------------------------------------------------------------------
Opinión personal: Aquí se describe a los hackers como cualquier usuario que se dedica a corromper información, usar sistemas de control, etc... a mi parecer los verdaderos hackers no buscan el dinero ... si no la autosuperación, yo no veo el hackeo de sistemas como una broma al fin y al cabo es un "arte" quien lo usa con buenas intenciones por supuesto.Está claro que siempre hay gente que usara estas cosas con malas intenciones, pero eso es ya mas el factor humano que otra cosa.PD: la mayoria de empresas son las q precisamnte usan estos medios para vender sus productos, y no hablo solo de los q se dedican a crear softwares antivirus...
Bueno he aqui mi opinión, exponed las vuestras en los comentarios creo que este tema es interesante para la gente que le gusta la informatica.

domingo, 19 de octubre de 2008

Claves para que una .com prospere

En el programa número 15 de "España por la cara", emitido en Neox se realizó una entrevista a Joaquín Cuenca, director de Panoramio, en la que, aparte de narrarnos las principales características de Panoramio, nos desveló las fórmulas para que una web que parte desde cero tome una importancia a nivel mundial.
Panoramio, creada en 2005 por Joaquín Cuenca Abela y Eduardo Manchón Aguilar, es un complemento para Google Earth en la que se muestran fotografías actuales, subidas por miles de usuarios, de lugares y monumentos que aparecen en el mapa de Google Earth de forma georreferenciada.





Empezó como una simple web en la que unos pocos de usuarios registrados subían fotos de sus lugares de vacaciones para comentarlas y clarificarlas. Los comienzos de la web fueron muy duros, teniendo que invertir bastante para que el proyecto germinara, asta que en 2007, Panoramio contara con casi 1 millón de fotografías y 3 meses después llegara a duplicar sus publicaciones.
Tal fue esa subida, que la archiconocida empresa Google, se interesara por la compra de este servicio para añadir sus fotos a las coordenadas de Google Earth cuando ésta estaba en funcionamiento. Tras una charla en persona con los directivos de Google y Google Earth, compraron su servicio fotográfico por una cifra muy alta( así lo asegura Joaquín Cuenca en el encuentro)

Durante la entrevista concedida a "España por la cara", se preguntó a Joaquín Cuenca cómo hacer que una .com llegué a triunfar. Joaquín explicó que es algo difícil pero no imposible, hay que partir de una buena idea y saber llevarla acabo. Hicieron un breve inciso en la entrevista para hablar de las grandes compañías, que buscaban proyectos como estos, ambiciosos y prácticamente desconocidos, ya que las aplicaciones y programas que surgen de grandes empresas, son víctimas de las grandes expectativas que tienen los usuarios más exigentes y como toda nueva aplicación, tiene sus fallos iniciales, pero contratando a servicios de expertos usuarios o compañías minoritarias se ahorran este periodo de fallos ofreciendo un mejor producto final.

También dio unos consejos, basados en su experiencia, para que una página goce de prestigio. En primer lugar habló de los comienzos de toda web, son duros durante el primer año, todo un bajón para los creadores ver como su página crece tan despacio después del sacrificio durante tanto tiempo. El consejo siguiente nos habla cuando la página empieza a crecer más rápido de lo que ellos imaginaban y nos dice que es especialmente importante que nuestra página se coloque en las primeras posiciones de los buscadores más importantes, hay es cuando las visitas suben a lo bestia, pues todo el mundo usa o ha usado Google o Yahoo y sólo que accede a aquellas páginas que se muestran en los primeros lugares. Finalmente recomienda centrarse en la idea original, sobre todo para potenciarla, ya que cuando la web empieza a crecer se reciben muchas ofertas para sacarse un dinerillo pero...las distracciones son muy malas.

Así que para todos aquellos aquellos informáticos que se encuentran desarrollando una gran idea, seguro que os servirán estos sabios consejos de un experto como lo es Joaquín Cuenca.


Sitio Oficial: http://www.panoramio.com/

Cuestión de método: Las ideas de un premio Nobel para investigar y resolver problemas


Recientemente se ha concedido el premio Nóbel de economía al profesor Paul R. Krugman. Resulta interesante revisar el llamado método Krugman, una serie de indicaciones para los investigadores en economía que resultan perfectamente aplicables en el mundo de la informática. El método que utiliza Paul Krugman para investigar se resume en los siguientes principios: 

1) Permanece atento a lo que la gente dice, ... aunque no hablen tu lenguaje técnico. ¿Cuántos informáticos son incapaces de hacerse entender por alguien que no sabe de informática? El problema es que la mayoría de los problemas interesantes los plantean personas que justamente carecen del lenguaje técnico en informática. 

2) Haz preguntas sobre las preguntas. No obligar a un algoritmo nuevo a responder a los detalles pendientes de los viejos. Si se quiere tener una gran idea, es necesario plantearse preguntas que vayan más allá de lo que ya tenemos resuelto. En síntesis, para tener una gran idea es necesario partir de una reflexión  sobre las preguntas que procede hacerse. 

3) Atreverse a ser «tonto». Hay dos formas de lograr que una novedad en informática tenga éxito: la vía más segura es «realizar una ampliación, difícil desde un punto de informático, pero menor desde un punto de vista conceptual, de algo ya conocido». Es una vía segura, pero poco útil para los que quieren tener una gran idea. Para éstos últimos, el consejo de Krugman es: «Partir de supuestos novedosos y hacer cosas sencillas con ellos». Ello requiere una gran autoestima (para aguantar la crítica y los rechazos) y mucha más disciplina (para transitar por caminos novedosos), pero ése es el precio que se debe pagar por las grandes ideas. 

4) Simplificar, simplificar. Es decir: ser minimalista, «intentar siempre expresar las ideas mediante el algoritmo más sencillo posible». Por dos razones: primera, porque ésta es la mejor forma de que los demás accedan al terreno desconocido que se está descubriendo; segunda, porque es la mejor forma de que, si uno se ha equivocado al andar solo, descubra pronto que está perdido. 

Estos consejos son especialmente aplicables para los alumnos que comienzan a estudiar programación estructurada. 

Origen y significado del código ASCII (1ª Parte)




El código ASCII (acrónimo inglés de American Standard Code for Information Interchange) es un código de caracteres basado en el alfabeto latino tal como se usa en inglés moderno y en otras lenguas occidentales. Fue creado en 1963 por el Comité Estadounidense de Estándares (ASA, conocido desde 1969 como el Instituto Estadounidense de Estándares Nacionales, o ANSI) como una evolución de los conjuntos de códigos utilizados entonces en telegrafía. Más tarde, en 1967, se incluyeron las minúsculas, y se redefinieron algunos códigos de control para formar el código conocido como US-ASCII.



ASCII es, en sentido estricto, un código de siete bits, lo que significa que usa cadenas de siete dígitos binarios (que van de 0 a 127 en base decimal) para representar caracteres. En el momento en el que se introdujo el código ASCII muchas computadoras trabajaban con grupos de ocho bits (bytes u octetos), como la unidad mínima de información; donde el octavo bit se usaba habitualmente como bit de paridad con funciones de control de errores en líneas de comunicación u otras funciones específicas del dispositivo. Las máquinas que no usaban la comprobación de paridad asignaban al octavo bit el valor cero en la mayoría de los casos.


viernes, 17 de octubre de 2008

¿Un Gran Hermano en cada domicilio?


A finales de los años cuarenta, George Orwell escribió una inquietante novela llamada 1984. En ella aparece por primera vez el concepto del vigilante ubicuo, el Gran Hermano, que todo lo vigila y todo lo controla. El reciente proyecto del gobierno inglés para controlar las comunicaciones nos recuerda algunos de los aspectos más sombríos de esta novela de anticipación y vuelve a poner de actualidad el tema del doble uso de las nuevas tecnologías de la comunicación, propuesto como tema para un trabajo voluntario en un artículo anterior (¿quién se anima?).

jueves, 16 de octubre de 2008

Ya disponible OpenOffice 3.0


Ya tenemos con nosotros una nueva versión de OpenOffice, la suite informática de código abierto que compite con e todopoderoso y casi omnipresente Microsoft Office. Eso sí, esta versión, presentada oficialmente (aunque podía descargarse antes) el día 13 de octubre de momento solo está en inglés.



Entre las novedades que incluye se pueden destacar:


  • versión nativa para Mac
  • : esto significa que ya no depende de las librerías X11 para funcionar.
  • Posibilidad de añadirle funcionalidades al estilo Firefox mediante extensiones
  • Entre las existentes tenemos extensiones que permiten, por ejemplo, manejar documentos que tengamos almacenados en Google Docs.
  • Soporte para el lenguaje científico Latex

  • Más integración con Windows vista

  • Una nueva aplicación se unirá a las disponibles hasta ahora y, según los desarrollos, permitirá sustituir completamente a Outlook. Esta aplicación integrará
    el correo electrónico, calendario, gestión de tareas y conectividad con servidores externos como aquellos que soporten iCal, Google Calendar o servidores
    CalDAV.


Quizá una de las mejores sea la posibilidad de editar directamente documentos PDF respetando el formato original de los mismos.
El equipo de desarrolladores ha hecho un buen trabajo con esta versión.
Recordar que, al contrario que otros paquetes ofimáticos, hay disponibles versiones para Windows, Mac, Linux y otros sistemas operativos como FreeBsd.
Podéis consultar los sitios desde los que descargar OpenOffice desde aquí.
Si queréis descargar directamente la versión en inglés para windows y probarla podéis utilizar el siguiente enlace de Rediris.

Este paquete ya contiene el JRE (java runtime environment) por lo que si tenéis algo de Java instalado actualizará los componentes y si no instalará lo necesario para poder ejecutar el programa.
Me queda todavía realizar pruebas con lectores de pantalla y el Java Access Bridge para ver el comportamiento general del conjunto.
Espero que la próxima versión de Ubuntu, que será la 8.10 incluya esta suite.

martes, 7 de octubre de 2008

Más sobre Alice y su autor: Randy Pausch


En el artículo sobre los temas propuestos para trabajos voluntarios aparece el IDE Alice. Si interesante es la propuesta, aún lo es más su autor, Randy Pausch
Si  quieres saber más sobre el tema o, simplemente, pasarlo bien escuchando a un orador impresionante y uno de los precursores de la Realidad Virtual, te recomiendo el siguiente vídeo. El contexto de la conferencia se explica en el libro La última conferencia (2008) . Editorial GrijalboISBN 9788425342509 .

sábado, 4 de octubre de 2008

Redes neuronales y lógica borrosa

Su funcionamiento consiste en una red neuronal que simula las propiedades en los sistemas neuronales biológicos a través de modelos matemáticos recreados mediante mecanismos artificiales (como un circuito integrado, un ordenador o un conjunto de válvulas). El objetivo es conseguir que las máquinas den respuestas similares a las que puedadar el cerebro. Una red neuronal se compone de unidades llamadas neuronas. Cada neurona recibe una serie de entradas a través de interconexiones y emite una salida. Esta salida viene dada por tres funciones:

  1. Una función de excitación, que consiste en el sumatorio de cada entrada multiplicada por el peso de su interconexión (valor neto). Si el peso es positivo, la conexión se denomina excitatoria; si es negativo, se denomina inhibitoria.
  2. Una función de activación, que modifica a la anterior. Puede no existir, siendo en este caso la salida la misma función de propagación.
  3. Una función de transferencia, que se aplica al valor devuelto por la función de activación. Se utiliza para acotar la salida de la neurona y generalmente viene dada por la interpretación que queramos darle a dichas salidas. Algunas de las más utilizadas son la función sigmoidea.

LÓGICA BORROSA

Lógica borrosa o difusa, es una lógica que toma dos valores aleatorios, pero que se refieron a lo mismo en sí. Esta idea nacio en un artículo de Lotfi A. Zadeh publicado en 1965 y titulado "Fuzzy Sets". La lógica difusa permite representar de forma matemática conceptos o conjuntos imprecisos, tales como días fríos, meses calurosos, personas altas, salarios bajos, guisos con mucho condimento, profesores poco valorados, etc.

Este tipo de lógica se adapta muy bien a la vida real ya que funciona con nuestras expresiones. Se basa en reglas heurísticas de la forma SI (antecedente) ENTONCES (consecuente), como ejemplos de regla heurística para esta lógica:

-Si la calle esta mojada entonces habra llovido.

Este tipo de logica tienes ventajas, tiene un sistema de control basado en lógica difusa: ofrece salidas de una forma veloz y precisa, disminuyendo así las transiciones.

Lista de posibles temas para los trabajos voluntarios



  • Macros útiles y curiosas para Word
  • Tecnología de las redes P2P. 
  • ¿Qué es la brecha digital?
  • El coste energético de los servidores. Soluciones de futuro.
  • Historia de Java.
  • Encuesta: ¿Cuáles son las aplicaciones y servicios informáticos que más utilizan mis amigos?
  • ¿Devuelven los programas información a los fabricantes sobre el contenido de mi ordenador? Verdades y falsedades.
  • Cloud Computing. Ventajas, desventajas, posibilidades de futuro. Ejemplos prácticos valorados como usuarios. ¿EL fin del imperio de los PCs?
  • Cómo se organizan las botnets. Tecnología.
  • Comparativa entre navegadores. Datos obtenidos por los autores.
  • Toda tecnología puede ser utilizada para liberar o esclavizar. ¿Es la informática un instrumento de doble filo?
  • La informática en la escuela. Búsqueda sobre experiencias reales en nuestro entorno.
  • Virus en móviles. ¿Un riesgo real?
  • ¿Por qué los ficheros .doc de gran tamaño se corrompen con tanta facilidad?
  • Historia reciente de las aplicaciones para redes sociales. ¿Por qué tienen tanto éxito?
  • Nuevos servicios de telefonía asociados al GPS. Localización y servicios contextuales.
  • Aplicaciones para resolver problemas en grupo: Compendium, CmapTools, etc
  • Accesibilidad de las nuevas tecnologías. Perspectivas.
  • Análisis del funcionamiento de Chrome. ¿Una nueva era para los navegadores?
  • ¿Qué es Alice y para qué sirve? Ejemplos hechos por el autor.