martes, 17 de octubre de 2017

Programación



Programación


Resultado de imagen para programacion



La programación informática o programación algorítmica, acortada como programación, es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas de computadora. El código fuente es escrito en un lenguaje de programación. El propósito de la programación es crear programas que exhiban un comportamiento deseado. El proceso de escribir código requiere frecuentemente conocimientos en varias áreas distintas, además del dominio del lenguaje a utilizar, algoritmos especializados y lógica formal. Programar no involucra necesariamente otras tareas tales como el análisis y diseño de la aplicación (pero sí el diseño del código), aunque sí suelen estar fusionadas en el desarrollo de pequeñas aplicaciones.




Existen dos tipos de lenguajes claramente diferenciados; los lenguajes de bajo nivel y los de alto nivel.
El ordenador sólo entiende un lenguaje conocido como código binario o código máquina, consistente en ceros y unos. Es decir, sólo utiliza 0 y 1 para codificar cualquier acción. 

Los lenguajes más próximos a la arquitectura hardware se denominan lenguajes de bajo nivel y los que se encuentran más cercanos a los programadores y usuarios se denominan lenguajes de alto nivel.


Lenguajes de bajo nivel 

Son lenguajes totalmente dependientes de la máquina, es decir que el programa que se realiza con este tipo de lenguajes no se pueden migrar o utilizar en otras maquinas. 

Al estar prácticamente diseñados a medida del hardware, aprovechan al máximo las características del mismo. 

Dentro de este grupo se encuentran: 

  • El lenguaje maquina: este lenguaje ordena a la máquina las operaciones fundamentales para su funcionamiento. Cnsiste en la combinación de 0's y 1's para formar las ordenes entendibles por el hardware de la maquina. 
    Este lenguaje es mucho más rápido que los lenguajes de alto nivel. 
    La desventaja es que son bastantes difíciles de manejar y usar, además de tener códigos fuente enormes donde encontrar un fallo es casi imposible.
  • El lenguaje ensamblador es un derivado del lenguaje maquina y esta formado por abreviaturas de letras y números llamadas mnemotécnicos. Con la aparición de este lenguaje se crearon los programas traductores para poder pasar los programas escritos en lenguaje ensamblador a lenguaje máquina. Como ventaja con respecto al código máquina es que los códigos fuentes eran más cortos y los programas creados ocupaban menos memoria. Las desventajas de este lenguaje siguen siendo prácticamente las mismas que las del lenguaje ensamblador, ñadiendo la dificultad de tener que aprender un nuevo lenguaje difícil de probar y mantener.

Lenguajes de alto nivel 

Son aquellos que se encuentran más cercanos al lenguaje natural que al lenguaje máquina. 
Están dirigidos a solucionar problemas mediante el uso de EDD's. 

Nota: EDD's son las abreviaturas de Estructuras Dinamicas de Datos, algo muy utilizado en todos los lenguajes de programación. Son estructuras que pueden cambiar de tamaño durante la ejecución del programa. Nos permiten crear estructuras de datos que se adapten a las necesidades reales de un programa.

Se tratan de lenguajes independientes de la arquitectura del ordenador. Por lo que, en principio, un programa escrito en un lenguaje de alto nivel, lo puedes migrar de una máquina a otra sin ningún tipo de problema. 

Estos lenguajes permiten al programador olvidarse por completo del funcionamiento interno de la maquina/s para la que están diseñando el programa. Tan solo necesitan un traductor que entiendan el código fuente como las características de la maquina. 

Suelen usar tipos de datos para la programación y hay lenguajes de propósito general (cualquier tipo de aplicación) y de propósito especifico (como FORTRAN para trabajos científicos). 




Elementos de la programación

Sintaxis
Cada lenguaje de programación tiene unas reglas especiales para la construcción de programación, a esto se le denomina sintaxis
El compilador lee el programa y comprueba que el programa sigue las reglas de sintaxis del lenguaje de programación, el compilador traduce el código fuente de Java a un código máquina (código objeto)
Código Objeto
Consta de instrucciones máquina e información de cómo cargar el programa en la memoria antes de su ejecución
Si el compilador encuentra errores, los presentará en la pantalla, una vez corregidos los errores se vuelve a compilar sucesivamente hasta que no se produzcan más errores
Depuración
Los programas rara vez funcionan bien la primera vez que se ejecutan, por lo que los errores que se detectan deben ser corregidos
Al proceso de encontrar errores se denomina depuración del programa, esta tarea es de las más difíciles en el proceso de programación
Errores de sintaxis
Son aquellos que se producen cuando el programa viola la sintaxis, es decir, las reglas gramaticales del lenguaje
Errores lógicos
Son errores del programador en el diseño del algoritmo, son difíciles de encontrar y aislar, ya que no suelen ser detectados por el compilador
Errores de regresión
Son aquellos que son provocados cuando accidentalmente se producen al corregir un error lógico y se produce otro en otra parte del programa
Elementos léxicos de los programas
  • Identificadores
  • Palabras reservadas
  • Literales
  • Operadores
  • Separadores

Los tipos de lenguajes de programación son los siguientes: 
Lenguaje de Programación "HTML": 
Lenguaje de Programación "SQL": 
Lenguaje de Programación "Java": 
Lenguaje de Programación "C": 
Lenguaje de Programación "XML": 
Lenguaje de Programación "PHP":


Instancia (informática)

Una instancia (en inglésinstance) es la particularización, realización específica u ocurrencia de una determinada claseentidad (modelo entidad-relación) o prototipo.
En general, cuando se ejecuta un programa en un computador, se dice que éste se instancia. En los lenguajes de programación orientada a objetos un objeto es una instancia de una clase. Esto es, un miembro de una clase que tiene atributos en lugar de variables. En un contexto del mundo real, podríamos pensar en "Casa" como una clase y en un chalet como una instancia de esta e incluso otro chalet u otro tipo de casa como puede ser un apartamento como otra instancia.1​ En este caso no importa el tipo de casa, si fuese de nuestro interés modelarlo y especificarlo, diferenciaríamos entre un chalet y un apartamento con dos clases, entidades o prototipos diferentes, c.f. herencia (informática) )

Lenguaje de Programación: Operadores Relacionales

Si lees este artículo, comprenderás la importancia que tienen ciertos tipos de operadores a la hora de programar. Todo esto que te voy a comentar es independiente del lenguaje que utilices, aunque para los ejemplos me centraré en el lenguaje de programacion c++.
Os voy a hablar en este artículo sobre la importancia de los operadores relacionales y lógicos en la programación.
En todos los lenguajes de programación, los operadores relacionales y los lógicos son unas herramientas importantes para que un programa responda a las necesidades de un usuario.
Sabemos que un programa puede responder de diferentes maneras según las opciones que elige un usuario. Ese control de realizar una acción determinada se realiza mediante los operadores relacionales y los lógicos. Un operador relacional o lógico puede dar dos tipos de respuestas VERDADERA O FALSA. Te pongo un ejemplo de esto; 5<4, esta expresión da como resultado FALSO. Al tener estos dos tipos de resultados, asociamos estos resultados al tipo booleano.
Como operadores relacionales tenemos <,>,<=,>=, == (igual), != (distinto) y ! (inversa). El operador == se utiliza para comprobar si un valor es igual a otro. No hay que confundirlo con el operador de asignación = que se utiliza para asignar el valor de una variable.
¿Donde y como usamos estos operadores?. Estos operadores se usan habitualmente en lo que se denominan condicionales. Un condicional es una bifurcación en la estructura del código por la cual según se cumpla la condición, el programa responderá de una manera o de otra. Imaginemos que tenemos un programa que calcula la suma, la resta y la multiplicación de dos números, y el usuario puede elegir una opción de las tres. Según la opción que elija, el programa responderá de una manera de las tres. Estas acciones se realizan mediante los operadores relacionales y lógicos.
Mas adelante mostraré como usar condicionales y veremos más explicitamente el uso de los operadores relacionales y lógicos. Puedes dejar un comentario sobre este artículo comentando si te ha surgido alguna duda o frustración. YO mismo responderé a las mismas.

Lenguajes de Programación: Operadores Lógicos

Uno de los impedimentos a la hora de programar es, el poco entrenamiento que se tiene a la hora del uso de los operadores lógicos. Si lees este artículo ese problema NO lo vas a tener, puesto que voy a intentar que ese aspecto lo trabajes de manera sencilla.
Los operadores lógicos permiten agrupar expresiones lógicas. Las expresiones lógicas son todas aquellas expresiones que obtienen como resultado verdadero o falso. Los operadores lógicos son aquellos que hacen de nexo de este tipo de expresiones.
Los operadores lógicos en C++ son los siguientes && (operador Y) ||(operador OR) y ¡(operador de negación).
Vamos a ver ejemplos para comprender el funcionamiento, el operador && podríamos usarlo en esta expresión lógica:             (3<5) &&  (30>20) esta expresión devuelve verdadero, ya que las dos expresiones son verdaderas (3<5) es verdadero y (30>20) también es verdadero. El operador && devuelve verdadero si TODAS las expresiones son verdaderas, con que una sea falsa el operador devolverá falso.
Vamos a ver el operador || por ejemplo en esta expresión:       (3<5)||(10>20) esta expresión devuelve verdadero, porque con el operador || si una de todas las expresiones es verdadera el resultado es verdadero y como (3<5) es verdadero pues ya se cumple. Para que sea falso ninguna debe de ser verdadera.

Estructuras Repetitivas

Las estructuras repetitivas se utilizan cuando se quiere que un conjunto de instrucciones se ejecuten un cierto número finito de veces, por ejemplo, escribir algo en pantalla cierta cantidad de veces, mover un objeto de un punto a otro cierta cantidad de pasos, o hacer una operación matemática cierta cantidad de veces. Se les llama bucle o ciclo a todo proceso que se repite cierto número de veces dentro de un pseudocódigo o un programa y las estructuras repetitivas nos permiten hacerlo de forma sencilla.
FOR (PARA)
Esta estructura ejecuta las acciones del cuerpo del bucle un número especificado de veces, y de modo automático controla el número de iteraciones o pasos.
desde
WHILE (MIENTRAS)
Repite el cuerpo del bucle mientras se cumpla una determinada condición.
mientras
DO- WHILE (HACER MIENTRAS)
La estructura HACER MIENTRAS cumple la misma función que la estructura MIENTRAS. La diferencia está en que la estructura  MIENTRAS comprueba la condición al inicio y repetir lo hace al final. Es por ello que la estructura HACER MIENTRAS se ejecuta por lo menos una vez.
hacermientas




miércoles, 24 de mayo de 2017






¿Por qué es tan mala la educación en Colombia?


Una indagación sobre la causa del problema que puso al país de 61 entre 65 en las pruebas Pisa.







Ustedes me perdonarán que lo plantee así, de una manera tan brusca, pero es que el problema no tolera pañitos de agua tibia ni permite que me ande por las ramas: ¿es que los colombianos somos muy brutos o es que la educación que aquí se imparte es muy mala?

A finales del año pasado el país recibió, con sorpresa y vergüenza, los resultados de una prueba internacional que se conoce como Pisa, la sigla en inglés del Programa Internacional para la Evaluación de Estudiantes, el examen más importante del mundo con alumnos de 15 años.

Cómo vamos a competir en el exterior, si de los 65 países que participaron en esos exámenes, Colombia quedó en el penoso puesto 61, superando apenas a Perú, Indonesia y el pequeñísimo emirato árabe de Catar, que tiene poco más de un millón de habitantes, pero con el ingreso por persona más alto del mundo.

El panorama es aterrador: en matemáticas, nuestros alumnos ni siquiera llegaron al nivel 2, que es la calificación mínima para pasar raspando el examen de Pisa. En ciencias se rajó el 60 por ciento. En lectura fue reprobada la mitad de los concursantes, en un país donde cualquiera se cree intelectual y se las da de poeta.

¿Fallan los estudiantes o falla la educación que les dan? Desde diciembre esa pregunta me está dando vueltas en la oreja, como una mosca.

Ni calidad, ni cobertura

Jorge Ramírez Vallejo es pereirano de nacimiento. Se graduó en el célebre Colegio Calasanz de su ciudad nativa. Desde hace seis años es miembro del cuerpo de profesores de la legendaria Universidad de Harvard, como investigador e instructor en la Escuela de Negocios, y ha sido consultor de diez países, empezando por Estados Unidos. Es, además, catedrático en la Universidad de los Andes.

El profesor Ramírez me dice que, “en cuanto hace a cobertura de educación preescolar, media y superior, y a su calidad, la situación de nuestro país es muy triste”. La cobertura consiste en ampliar las posibilidades para que se eduque la mayor cantidad posible de gente. El Gobierno se propuso aumentarla en un 50 por ciento, pero lo que hizo fue embutir más alumnos en las mismas aulas de antes, sin ampliar instalaciones ni contratar más profesores. Entonces fue el caos.

Aun así, 50 por ciento de crecimiento de cobertura en educación superior ni siquiera es considerable: está por debajo de países del vecindario, como Cuba, Venezuela, Argentina, Uruguay y Chile.

Y en calidad, da pena reconocer que solo el 10 por ciento de las instituciones superiores colombianas –universitarias o similares– cuenta con acreditación de alta calidad. Muy pocas de ellas aparecen en los escalafones mundiales, al contrario de lo que ocurre con Chile, Brasil, México o Argentina.

Primera falla: los profesores

Entonces, se pregunta uno, oyendo la letanía de los que saben, ¿a qué se debe que la educación colombiana sea mala?

–A varios factores –me contesta el profesor Ramírez Vallejo–. En primer lugar, la baja calidad de los profesores. Parte de ello obedece a que no se puede medir su desempeño porque pertenecen al antiguo estatuto de contratación de maestros estatales, que impide su evaluación.

Salí a averiguar qué diablos es eso. Resulta que en Colombia la carrera de docente oficial, para colegios y universidades, se rige por dos normas distintas: un decreto de 1979, que ya tiene 35 años de viejo, conocido como “el estatuto antiguo”, y la Ley 715 del 2001, “el nuevo estatuto”. Esa ley creó un sistema por el cual al maestro se le paga según su calidad y su desempeño en el trabajo, medidos por evaluaciones periódicas.

–Lo malo –añade Ramírez– es que la gran mayoría de profesores pertenece al estatuto antiguo, anterior al 2001, lo cual impide la evaluación y obliga a que el salario de un maestro no se determine por su capacidad sino por su antigüedad. Es que los viejos profesores no aceptaron que la reforma fuera retroactiva y, en consecuencia, a ellos no se los puede evaluar. Lo más grave es que, según el Consejo Privado de Competitividad, tendremos que esperar 25 años más para que se retire el último de los profesores del estatuto antiguo.

–También es cierto –añade el profesor Pedro Bossio de la Espriella– que las universidades privadas, por su parte, están contratando profesores externos, sin raíces en la institución ni vínculos con ella, para poder pagarles unos sueldos miserables.

A su turno, el presidente de la Federación Colombiana de Educadores, Luis Alberto Gruber, le echa a la politiquería el muerto de la mala calidad de la docencia. “Ser profesor es el escampadero de más de un desempleado”, dice el señor Gruber. Aquí nombran maestro a cualquiera que tenga un padrino político.

Qué dice el Gobierno. La pertinencia

–No hay nada más lejano de la realidad –replica Patricia Martínez Barrios, viceministra de Educación Superior–. Precisamente porque, desde hace trece años, la Ley 715 nos obliga a llenar las vacantes de profesores oficiales con concursos de méritos.

El viceministro de Educación Básica, Julio Alandete, me informa que de aquí al año 2018 tendrán que retirarse 32 mil maestros oficiales por llegar a los 65 años, edad de retiro forzoso. “Vamos a cubrir esos cargos con gente de altísima calidad y verdaderos profesionales”, dice Alandete.

Regreso con el profesor Ramírez Vallejo, quien prosigue diciendo que otro factor de mala calidad en la educación colombiana es la falta de pertinencia. Para decirlo en palabras cristianas, la pertinencia consiste en que te enseñen lo que necesitas saber para ganarte la vida. Que lo aprendido corresponda a los empleos que están ofreciendo. “Si estudias en la escuela de gastronomía”, dice Ramírez, a manera de ejemplo, “¿qué ganas con aprender a preparar la mejor arepa de huevo del mundo, si el restaurante de tu familia queda en Pasto?”.

Ya entendí. Que si piensas trabajar en Armenia, no te metas a estudiar biología marina. Pensando en la pertinencia, uno se pregunta si Colombia está produciendo los profesionales que necesita.

–Infortunadamente –me responde Ramírez– la respuesta es un sólido no. En los ejercicios que hemos hecho en Barranquilla, Bucaramanga, Bogotá, y en tantas otras regiones, es frecuente encontrar que no hay relación entre lo que necesitan las empresas y lo que ofrecen los profesionales. Esto genera sobrecostos y pérdida de competitividad empresarial, pues hay que reentrenar a los egresados.

Garajes y presupuestos

Sin embargo, en los últimos años se ha visto un incremento masivo de la oferta universitaria. Como dice la gente, el país se llenó de universidades de garaje. La viceministra Martínez Barrios revela que en Colombia hay 286 entidades de educación superior. De ellas, 80 son universidades y el resto son instituciones de diversa naturaleza.

Como si fuera poco, existen otros 3.000 organismos llamados con elegancia “centros de formación para el trabajo y desarrollo humano”, que incluyen diplomas de criminalística, belleza, peluquería, ciencias forenses o ambientales, contabilidad, sistemas. Aunque usted no lo crea, entre todos suman 13.000 programas educativos con más de un millón de alumnos. Reina el caos. Las secretarías regionales de Educación no vigilan ni controlan a nadie.

¿Esa abundancia es buena?

–En parte sí y en parte no –contesta la señora Martínez Barrios, viceministra de Educación–. No es malo que la educación superior llegue a todos los rincones del país. Nuestras universidades públicas lo han logrado con planes de regionalización, mediante alianzas con sectores sociales, empresariales y otras entidades académicas.

El problema, otra vez, es la deficiente calidad de los profesores, la falta de pertinencia de lo que se enseña y, además, los bajos presupuestos territoriales para la educación. Después hablamos de tecnologías.

–Las desigualdades presupuestales por región –anota el viceministro Alandete– son aterradoras. Basta con ver estas cifras: en el segundo trimestre del año pasado, Bogotá aportó el 57,5 por ciento de su dinero a la educación; Medellín, el 7,27 por ciento; y Antioquia, el 6,24, pero en el resto del país baja hasta el 1 por ciento.

Rajados en tecnología.

¿Y en inglés?

Otra pata que le nace al cojo: somos analfabetos digitales. En la prueba Pisa se confirmó el retraso de Colombia en esas materias. El 70 por ciento de los estudiantes que presentaron el examen están por debajo del nivel mínimo en tecnologías de la información.

El profesor Ramírez Vallejo añade que otra prueba similar, llamada “encuesta de alfabetización digital”, encontró que solo el 45 por ciento de los colombianos tiene una vaga noción de tecnología.

Un elemento adicional de la baja calidad educativa es que, para poder competir en este mundo de fieras internacionales en que vivimos, se necesita saber inglés, el idioma de los negocios, sobre todo en profesiones relacionadas con ingeniería, finanzas, mercadeo, ventas y tecnología. Ya hay países europeos donde se exige conocer un tercer idioma.

–En Colombia, en cambio, solo el 7 por ciento de los bachilleres que presentan anualmente las pruebas del Icfes alcanza un puntaje satisfactorio en inglés– concluye Ramírez, con desaliento.

Qué van a saber inglés los alumnos si ni los profesores de inglés saben inglés: un examen reciente demostró que únicamente el 12 por ciento de los maestros de inglés logró llegar al nivel mínimo de conocimiento de esa lengua. El triste 12 por ciento, imagínese usted.

Epílogo

Hace pocos días se conoció otra estadística, la lista de 80 países cuyos profesionales compiten internacionalmente según su educación. Los primeros puestos los ocupan Hong Kong, Estados Unidos, Suiza, Singapur, Finlandia y Alemania. El mejor de América Latina es Chile, en el puesto 34, seguido de Cuba (36), Panamá (40), Barbados (47), Costa Rica (54), México (55) y Brasil, en el 56. Colombia figura en el 69. Causa: la deficiencia de su calidad educativa. ¿Quién puede competir así?

Acabo de leer en este periódico una noticia según la cual, ante la evidencia ya innegable de lo que está pasando, un grupo de muchachos ha tomado la iniciativa de comprometer al Estado, la familia y la sociedad en darle a Colombia una ed

ucación mejor, alejándola de los discursos embaucadores que abundan en esta época electoral. Están organizándose por internet.

Como siempre, los jóvenes son los que llevan la bandera. Eso es estimulante porque demuestra que no todo está perdido. Que les vaya bien. Y quedo a sus órdenes, por si les puedo ayudar en algo, aunque no sea mucho.

Juan Gossaín
Especial para EL TIEMPO

jueves, 18 de mayo de 2017

Concepto de educación


La educación







La educación se define como un proceso de formación permanente, personal cultural y social que se fundamenta en una concepción integral de la persona humana, de su dignidad, de sus derechos y de sus deberes. El Ministerio de Educación Nacional trabaja para que la educación sea la principal herramienta de transformación social cumpliendo estándares de calidad y así lograr que Colombia sea el país más educado de América Latina en el año 2025.



Niveles de la educación básica y media


Los tres niveles de educación formal son: Preescolar, educación básica primaria y básica secundaria, y educación media.


La educación formal se organiza en tres niveles:



a) El preescolar, que comprenderá mínimo un grado obligatorio


b) La educación básica, con una duración de nueve grados que se desarrollará en dos ciclos: La educación básica primaria de cinco grados y la educación básica secundaria de cuatro grados


c) La educación media con una duración de dos grados.