En ciencias de la
computación, y análisis numérico el pseudocódigo
(o falso lenguaje)
es una descripción informal[]
de alto nivel de un algoritmo
informático de programación, compacto e informal, que utiliza las convenciones
estructurales de un lenguaje de programación verdadero[]
, pero que está diseñado para la lectura humana en lugar de la lectura mediante
máquina, y con independencia de cualquier otro lenguaje de programación. Normalmente,
el pseudocódigo omite detalles que no son esenciales para la comprensión humana
del algoritmo, tales como declaraciones de variables, código específico del
sistema y algunas subrutinas. El lenguaje de programación se complementa, donde
sea conveniente, con descripciones detalladas en lenguaje natural, o con notación matemática compacta. Se utiliza
pseudocódigo pues este es más fácil de entender para las personas que el código
de lenguaje de programación convencional, ya que es una descripción eficiente y
con un entorno independiente de los principios fundamentales de un algoritmo. Se
utiliza comúnmente en los libros de texto y publicaciones científicas que se
documentan varios algoritmos, y también en la planificación del desarrollo de programas
informáticos, para esbozar la estructura del programa antes de realizar la
efectiva codificación. No existe una sintaxis estándar para el
pseudocódigo, aunque los ocho ide's que manejan pseudocódigo tengan su sintaxis
propia. Aunque sea parecido, el pseudocódigo no debe confundirse con los
programas esqueleto que incluyen código ficticio, que pueden ser compilados
sin errores. Los diagramas de flujo y uml pueden ser considerados como una alternativa gráfica al
pseudocódigo, aunque sean más amplios en papel.lunes, 18 de noviembre de 2013
PSEUDOCÓDIGO.
En ciencias de la
computación, y análisis numérico el pseudocódigo
(o falso lenguaje)
es una descripción informal[]
de alto nivel de un algoritmo
informático de programación, compacto e informal, que utiliza las convenciones
estructurales de un lenguaje de programación verdadero[]
, pero que está diseñado para la lectura humana en lugar de la lectura mediante
máquina, y con independencia de cualquier otro lenguaje de programación. Normalmente,
el pseudocódigo omite detalles que no son esenciales para la comprensión humana
del algoritmo, tales como declaraciones de variables, código específico del
sistema y algunas subrutinas. El lenguaje de programación se complementa, donde
sea conveniente, con descripciones detalladas en lenguaje natural, o con notación matemática compacta. Se utiliza
pseudocódigo pues este es más fácil de entender para las personas que el código
de lenguaje de programación convencional, ya que es una descripción eficiente y
con un entorno independiente de los principios fundamentales de un algoritmo. Se
utiliza comúnmente en los libros de texto y publicaciones científicas que se
documentan varios algoritmos, y también en la planificación del desarrollo de programas
informáticos, para esbozar la estructura del programa antes de realizar la
efectiva codificación. No existe una sintaxis estándar para el
pseudocódigo, aunque los ocho ide's que manejan pseudocódigo tengan su sintaxis
propia. Aunque sea parecido, el pseudocódigo no debe confundirse con los
programas esqueleto que incluyen código ficticio, que pueden ser compilados
sin errores. Los diagramas de flujo y uml pueden ser considerados como una alternativa gráfica al
pseudocódigo, aunque sean más amplios en papel.jueves, 14 de noviembre de 2013
DIAGRAMAS DE FLUJO.
El diagrama de flujo o diagrama de actividades es la representación gráfica del algoritmo o
proceso. Se utiliza en disciplinas como programación, economía, procesos industriales y psicología cognitiva.
Estos diagramas utilizan símbolos con significados
definidos que representan los pasos del algoritmo, y representan el flujo de
ejecución mediante flechas que conectan los puntos de inicio y de fin de
proceso.
VENTAJAS DE LOS
DIAGRAMAS DE FLUJO.
- Favorecen la comprensión del proceso al mostrarlo como un dibujo. El cerebro humano reconoce muy fácilmente los dibujos. un buen diagrama de flujo reemplaza varias páginas de texto.
- Permiten identificar los problemas y las oportunidades de mejora del proceso. Se identifican los pasos, los flujos de los re-procesos, los conflictos de autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisión.
- Muestran las interfaces cliente-proveedor y las transacciones que en
ellas se realizan, facilitando a los empleados el análisis de las mismas.
- Son una excelente herramienta para capacitar a los nuevos empleados y también a los que desarrollan la tarea, cuando se realizan mejoras en el proceso.
- Al igual que el pseudocódigo, el diagrama de flujo con fines de análisis de algoritmos de programación puede ser ejecutado en un ordenador, con un ide.
SÍMBOLOS
EMPLEADOS.
Los símbolos que han sido estandarizados y de
terminados por la ISO para la obtención de diagramas de flujo, se muestran en
la siguiente tabla. Si bien estas figuras son las más reconocidas y apropiadas
para la construcción de diagramas de flujo, no son las únicas, por lo que es
posible utilizar diferentes formas para su representación.
miércoles, 13 de noviembre de 2013
ALGORITMO.
En matemáticas, lógica, ciencias de la computación y disciplinas
relacionadas, un algoritmo (del
griego y latín, dixit algorithmus
y este a su vez del matemático persa al-juarismi[]) es un conjunto prescrito de instrucciones o
reglas bien definidas, ordenadas y finitas que permite realizar una actividad
mediante pasos sucesivos que no generen dudas a quien deba realizar dicha
actividad.[] Dados un
estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un
estado final y se obtiene una solución. Los algoritmos son el objeto de estudio
de la algoritmia.[
]
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver
problemas. Algunos ejemplos son los manuales de usuario, que muestran
algoritmos para usar un aparato, o las instrucciones que recibe un trabajador
por parte de su patrón. algunos ejemplos en matemática son el algoritmo de multiplicación, para calcular el producto, el algoritmo de la división para calcular el cociente de dos números, el algoritmo de euclides para obtener el máximo común divisor de dos enteros positivos, o el método de gauss para resolver un sistema lineal de ecuaciones.
PARTES DE UN ALGORITMO.
Todo algoritmo debe obedecer a la estructura básica de un sistema, es
decir: entrada, proceso y salida.
Donde:
·
Entrada.- Corresponde al insumo, a los datos necesarios que
requiere el proceso para ofrecer los resultados esperados.
·
Proceso.- Pasos necesarios para obtener la solución del
problema o la situación planteada.
·
Salida.- Resultados arrojados por el proceso como solución.
CARACTERÍSTICAS DE LOS ALGORITMOS.
Las características fundamentales que debe cumplir un algoritmo son:
·
Precisión.- Indica el orden de realización de cada paso dentro
del proceso.
·
Definición.- Indica la exactitud y consistencia de los pasos
descritos en el proceso, si el algoritmo se prueba dos veces, en estas dos
pruebas, se debe obtener el mismo resultado.
·
Finitud.- Indica el número razonable de pasos, los cuales
deben conllevar a la finalización del proceso y producir un resultado en
un tiempo finito.
Al diseñar un algoritmo se debe tener presente las características de
precisión, definición y finitud.
METODOLOGÍA
PARA RESOLVER PROBLEMAS.
La resolución de problemas consta de cinco etapas que
garantizan una llegada correcta a la solución: identificación del problema,
planteamiento de alternativas de solución, elección de una alternativa,
desarrollo de la solución y evaluación de la solución.
1. Identificación del problema.- La identificación del
problema es una fase muy importante de la metodología pues de ella depende el
desarrollo ulterior en busca de la solución. Un problema bien delimitado es una
gran ayuda para que el proceso general avance bien; un problema mal definido
provocara desvíos conceptuales que serán difíciles de remediar posteriormente.
2. Planteamiento de alternativas de solución.- Después de la
definición del problema y del análisis de los datos de entrada el proceso
continúa con el análisis de las alternativas de solución. Por lo general la
solución de un problema puede alcanzarse por distintas vías. Es útil tratar de
plantear la mayor cantidad de alternativas posibles de solución pues de esta
forma las posibilidades aumentan a favor de encontrar la vía correcta.
3. Elección de una alternativa.- Después de tener todo el
repertorio de alternativas es necesario pasar a otra etapa: la elección de la
mejor entre todas las posibilidades. esta fase es muy importante porque de la
elección realizada depende del avance final hasta la solución.
4. Desarrollo de la solución.- Después de decidir cuál es la
mejor alternativa de todas se llega a la etapa de la solución. En esta fase,
partir de los datos relacionados con la alternativa seleccionada, se aplican
las operaciones necesarias para solucionar el problema.
5. Evaluación de la solución.- Luego de haber desarrollado
la solución queda aún una etapa, que es la de evaluación, en los procesos
industriales a este procedimiento se le llama “control de calidad” y consiste
en determinar que la solución obtenida es lo que se esperaba conseguir
comprobando que el resultado sea correcto.
lunes, 15 de octubre de 2012
20 TIPS PARA SER UN MEJOR PROGRAMADOR.
Ya llevo varios años programando, voy a intentar dar
algunos tips que realmente me han servido mucho durante mi aprendizaje, estos
tips se aplican para cualquier lenguaje de programación.
1. Estudia, estudia y estudia.- El estudiar nos permite
perfeccionarnos, cuanto mas estudiemos mas oportunidades de programar mejor
tendremos, no solamente estoy hablando de universidades, ni tampoco de cursos,
hoy por hoy gracias a internet existen infinidad de tutoriales y manuales.
2. Busca antes de preguntar.- Esto es un mal común del que quiere aprender a
programar, es mas fácil preguntarle a alguien que sepa, pero realmente no tiene
que ser así por varias razones, primero por que es algo de muy de vago, luego
que cuando alguien nos da la respuesta fácil no aprendemos nada, lo interesante
cuando se nos presenta un problema es buscar la solución nosotros mismos, sino
damos con la respuesta recién ahí preguntar, este ejercicio realmente es muy
beneficio, nos permite preparar nuestra cabeza para solucionar futuros
problemas.
3. Busca scripts ya desarrollados.- Por lo general podemos encontrar muchas funciones, scripts listos para utilizar, pero lo interesante es estudiarlos, ver como funcionan, de ahí aprendemos si copiamos y pegamos vamos mal.
4. Lee el código fuente libre.- Yo muchas veces descargo algunas aplicaciones para ver como están programadas, de verdad que se aprende mucho, a medida que realicemos esta practica cada vez iremos aprendiendo mas, en especial si estas aplicaciones son de uso popular en donde miles de programadores del mundo “meten” mano para mejorarla.
5. No copies y pegues.- Es fácil, entramos a google buscamos una función que sirva para lo estamos necesitando y listo. Pero la realidad es que no siempre lo que descargamos es correcto, y si luego tenemos que solucionar un problema lo mas probable es que no tengamos ni idea por donde empezar. Ni hablar del factor aprendizaje cero que esta practica implica.
6. Buscar el momento para programar.- Estas sentado delante de tu ordenador, llaman por teléfono, tu compañero de trabajo o familiar te pregunta algo, realmente es lo mas molesto e incomodo que hay, es difícil concentrarse, es preferible hacer algo mas “Light” antes de programar algo mal y después tener que arreglarlo.
7. Ten tu propia Wiki.- Esto lo recomiendo muchísimo,
es muy sencillo instalar una Wiki en
nuestra pc, simplemente podemos descargar el Easyphp y tener en nuestro ordenar
un servidor funcional, y mejor aun si quieres hacer la instalación “a mano”. La
wiki es interesante para poder almacenar rutinas que usamos frecuentemente. Una
vez que aprendimos a hacer algo y lo tenemos lo mejor posible es interesante
tenerlo a mano para no perder tiempo escribiendo lo mismo una y otra vez.
8. Comenta todo lo que sea necesario.- Escribir comentarios en el código suele ser bastante molesto y parecer innecesario, pero comentar las cosas importantes nos puede ahorrar mucho tiempo cuando tengamos que retocar el código meses después o a la hora de reutilizar código.
9. Participa en foros/comunidades.- Es interesante para interactuar con otras personas que estén en nuestra misma sintonía, muchas veces ayudaremos nosotros y otra vez nos podrán ayudar. En línea general estas comunidades tienen muy buena onda, y la ayuda mutua es lo que abunda, unas líneas de código pueden ser útiles para muchas personas, de ahí que entre todos se puede perfeccionar. Recuerden respetar el punto 2.
10. Habla con otros programadores.- Mensajería instantánea, en un café, por teléfono, etc. Es interesante tener amigos que están en lo mismo, no solamente por el tema de la ayuda mutua, estos grupos suelen ser también de ayuda “emocional” del programador, unos chistes, algún comentario puede ser una inyección de energía para continuar con un problema que no podemos resolver.
11. Tiempo libre para otras cosas.- Me encanta programar, pero entendi que no es lo unico en la vida, a veces es bueno una salida, una película, realmente es necesario desenchufarnos.
12. Arma tu bunker.- Tener un espacio de trabajo acorde con tus gustos es indispensable para programar, un buen sillón que no dañe nuestra columna, un lindo escritorio que nos permita desparramar CDS, libros, etc. También hay que ser organizado, pero siempre a nuestro gusto, es bueno que sea TU espacio y que nadie meta mano, uno a la larga lo termina sintiendo como un refugio. Yo soy muy desordenado para el gusto de muchos, pero a un en mi desorden yo tengo orden.
13. Tu equipo en condiciones.- Otro punto importante, una buena computadora, que no tenga problemas, si es necesario un poco mas de RAM, no hace falta tener una supermáquina para programar pero si algo que no se este colgando cada 2 seg.
14. Usa herramientas gratuitas.- Si no podes pagar ciertas herramientas realmente ni te gastes en bajar las versiones piratas y realmente no vale la pena estar trucando programas.
8. Comenta todo lo que sea necesario.- Escribir comentarios en el código suele ser bastante molesto y parecer innecesario, pero comentar las cosas importantes nos puede ahorrar mucho tiempo cuando tengamos que retocar el código meses después o a la hora de reutilizar código.
9. Participa en foros/comunidades.- Es interesante para interactuar con otras personas que estén en nuestra misma sintonía, muchas veces ayudaremos nosotros y otra vez nos podrán ayudar. En línea general estas comunidades tienen muy buena onda, y la ayuda mutua es lo que abunda, unas líneas de código pueden ser útiles para muchas personas, de ahí que entre todos se puede perfeccionar. Recuerden respetar el punto 2.
10. Habla con otros programadores.- Mensajería instantánea, en un café, por teléfono, etc. Es interesante tener amigos que están en lo mismo, no solamente por el tema de la ayuda mutua, estos grupos suelen ser también de ayuda “emocional” del programador, unos chistes, algún comentario puede ser una inyección de energía para continuar con un problema que no podemos resolver.
11. Tiempo libre para otras cosas.- Me encanta programar, pero entendi que no es lo unico en la vida, a veces es bueno una salida, una película, realmente es necesario desenchufarnos.
12. Arma tu bunker.- Tener un espacio de trabajo acorde con tus gustos es indispensable para programar, un buen sillón que no dañe nuestra columna, un lindo escritorio que nos permita desparramar CDS, libros, etc. También hay que ser organizado, pero siempre a nuestro gusto, es bueno que sea TU espacio y que nadie meta mano, uno a la larga lo termina sintiendo como un refugio. Yo soy muy desordenado para el gusto de muchos, pero a un en mi desorden yo tengo orden.
13. Tu equipo en condiciones.- Otro punto importante, una buena computadora, que no tenga problemas, si es necesario un poco mas de RAM, no hace falta tener una supermáquina para programar pero si algo que no se este colgando cada 2 seg.
14. Usa herramientas gratuitas.- Si no podes pagar ciertas herramientas realmente ni te gastes en bajar las versiones piratas y realmente no vale la pena estar trucando programas.
15. Organiza tu propia biblioteca de scripts.- Relacionado con el punto 7. La
wiki es muy buena, pero hay que tenerla organizada, sino encontrar algo puede
llevarnos mas tiempo que volverlo a escribir. Yo soy bastante desorganizado,
pero con los años aprendí a manejar mi problemita sobretodo al programar.
16. Se agradecido con los que te ayudan.- Si alguien te ayuda, por favor al menos di gracias. Recuerda que las personas que te rodean no son tu soporte técnico (Al menos que les pagues). Si alguien se molesta en responder a tus consultas agradécele, para la próxima esa persona seguirá teniendo buena predisposición.
17. Se humilde.- Esencial. Siempre hay alguien que sabe más que uno y mas en este “rubro” en donde hay verdaderos cráneos, Yo hace varios años que programo y sin embargo siempre aprendo algo nuevo, y en parte eso es lo que me gusta de programar, siempre se puede mejorar.
18. Siempre busca perfeccionarte.- Relacionado con el punto anterior. Las tecnologías evolucionan y nosotros debemos hacer lo mismo. Una linda practica cuando tenemos un poco de tiempo libre es tratar de optimizar un código nuestro de unos meses anteriores, si aprendimos cosas nuevas de seguro que podemos hacerlo mejor que antes.
19. Intenta ser eficiente y luego inténtalo de nuevo.- Que funcione no quiere decir que este bien. También una de las cosas más lindas de programar: Siempre se puede hacer una función mas eficiente, que consuma menos recursos, no hay que conformarse que arroje los resultados que queremos, probablemente lo podemos hacer mejor.
20. Programa primero lo que menos te gusta.- Esto es bastante personal, pero por lo general me da buenos resultados. Cuando me siento a programar algo los primeros minutos son de “ambientación” luego tengo un periodo de concentracion digamos maxima, en ese momento las cosas que parecen o son mas complicadas son cuando mas rápido y mejor salen, luego cuando uno esta mas cansado puede dedicarse a las cosas mas sencillas y rutinarias.
16. Se agradecido con los que te ayudan.- Si alguien te ayuda, por favor al menos di gracias. Recuerda que las personas que te rodean no son tu soporte técnico (Al menos que les pagues). Si alguien se molesta en responder a tus consultas agradécele, para la próxima esa persona seguirá teniendo buena predisposición.
17. Se humilde.- Esencial. Siempre hay alguien que sabe más que uno y mas en este “rubro” en donde hay verdaderos cráneos, Yo hace varios años que programo y sin embargo siempre aprendo algo nuevo, y en parte eso es lo que me gusta de programar, siempre se puede mejorar.
18. Siempre busca perfeccionarte.- Relacionado con el punto anterior. Las tecnologías evolucionan y nosotros debemos hacer lo mismo. Una linda practica cuando tenemos un poco de tiempo libre es tratar de optimizar un código nuestro de unos meses anteriores, si aprendimos cosas nuevas de seguro que podemos hacerlo mejor que antes.
19. Intenta ser eficiente y luego inténtalo de nuevo.- Que funcione no quiere decir que este bien. También una de las cosas más lindas de programar: Siempre se puede hacer una función mas eficiente, que consuma menos recursos, no hay que conformarse que arroje los resultados que queremos, probablemente lo podemos hacer mejor.
20. Programa primero lo que menos te gusta.- Esto es bastante personal, pero por lo general me da buenos resultados. Cuando me siento a programar algo los primeros minutos son de “ambientación” luego tengo un periodo de concentracion digamos maxima, en ese momento las cosas que parecen o son mas complicadas son cuando mas rápido y mejor salen, luego cuando uno esta mas cansado puede dedicarse a las cosas mas sencillas y rutinarias.
lunes, 24 de septiembre de 2012
ASÍ QUE QUIERES SER UN PROGRAMADOR.
INTRODUCCIÓN
¿Así que piensas que todo esto de la programación es
muy bonito, y te gustaría ser parte de ello, eh?
Si amas la programación, entonces este es el mejor
trabajo que puedas tener; sería difícil para mí imaginar realmente algo que
pudiera hacer que no fuera crear. Por otro lado, si solo te gusta la
programación, o si eres indiferente, este es el peor trabajo que posiblemente
podrías encontrar debido a que estás entrando en una arena competitiva donde la
obsesión es casi un prerrequisito. El desarrollo de software es casi como una
carrera, donde tu vida está en la línea, estás corriendo tan rápido como
puedes, y no tienes idea de cómo luce el terreno en frente tuyo; pero con un
abandono casi total te lanzas hacia adelante tan rápido sin importar si te
enfrentas a una sabana abierta o a un acantilado. Oh, y si tropiezas, se acabó,
y todo es tu culpa. ¿Suena un poco temerario? Debería, pero no dejes que te
desaliente; Solo no quiero pintarte ningún maravilloso paisaje y cuando ya lo esté
viviendo veas que no es así, pero es precisamente este sentido de
incertidumbre, desafío, y presión es lo que lo hace tan encantador y divertido.
Si aún continúas leyendo, ¡Supongo que estas decidido sobre
esto! Okey, ahora que te he dado un vistazo de lo que está adelante, hablemos
algo sobre tecnología, luego hablemos acerca de la diversión.
¿QUÉ SE REQUIERE PARA SER UN PROGRAMADOR?
No creo que hayan características específicas que te
excluyan de ser un programador, honestamente pienso que cualquiera con un poco o
mas bien un montón de deseo puede hacerlo, es sólo cuestión de cuánto tiempo
quieres invertir. Dicho esto, creo que hay varias equivocaciones comunes sobre
las habilidades que uno debe poseer para programar. Primero, no necesitas ser
alguna suerte de sabio de las matemáticas para ser un programador; ciertamente
es importante para comprender los fundamentos, y para sentirse cómodo con el
álgebra, pero eso es todo. Por supuesto, hay excepciones a esto; por ejemplo,
si estás interesado en los gráficos o la programación de juegos, tener muchas habilidades
matemáticas definitivamente te servirán. Otra equivocación común es que
necesitas ser algún tipo de monstruo de la lógica como el Sr. Spock de la serie
Star Trek; también esto tampoco es generalmente cierto, aunque ciertamente no
daña el tener un sentido de 'orden'. Algunas características deseables son Ser motivado por
el desafío, puesto que básicamente estás entrando en un juego donde eres
desafiado en cada esquina. También es muy importante ser implacable en la
persecución de tu meta, pero al mismo tiempo ser capaz de permanecer lo
suficientemente flexible como para no ser cegado por los límites percibidos. Finalmente,
¡creo que un útil desorden obsesivo-compulsivo corona bien las cosas, dándote
extra motivación para llevar las cosas más allá de donde ninguna persona cuerda
las llevaría! :)
¿QUÉ HAY DE LA ESCUELA (LA UNIVERSIDAD)?
La universidad es un grandioso lugar
para aprender sobre los campos, pero la tecnología no es uno de ellos. No me
malinterpretes, no estoy diciendo que no creo que la escuela sea importante; al
contrario, PIENSO que la escuela es importante, pero no para aprender
programación. En lo que deberías enfocarte realmente en la escuela es en
aprender a trabajar junto a otros en proyectos, en particular aprender cómo
otras personas se acercan a los problemas y cómo ellos difieren de tu
aproximación. La universidad también te fuerza a hacer cosas que normalmente no
podrías considerar hacer.
Otra ventaja que obtienes de la universidad es la implementación de redes; no estoy hablando de ese cable ethernet en tu dormitorio, estoy hablando de conocer otras personas que comparten tus intereses, y estarán un día trabajando en la misma industria que tú. La industria de la programación en muchos aspectos es muy parecida a la industria de la cinematografía; cuando alguien se ve involucrado en un buen proyecto, ellos invitan a sus amigos a participar. Si no los conoces, no vas a conseguir ser invitado (contratado), y la universidad en muchos casos es donde los conoces. Otro aspecto que no puede ser descuidado es todo el lado educativo de las cosas; quiero decir, vamos, ellos te enseñan un poquito más que los tecnológicos, cosas como historia, psicología, etc... Y aunque esas cosas pueden no PARECER relacionarse directamente con la programación, te sorprendería de algunas fuentes de inspiración que pueden ser.
¿POR DÓNDE DEBERÍA EMPEZAR?
Primero, recomendaría mojar tus pies antes de tomar algunas decisiones trascendentales para tu vida aquí; como dije antes, esta línea de trabajo puede ser divertida, pero también puede ser realmente miserable, así que no solo saltes adentro. La primera cosa por hacer es ir a tu librería local, y comprar un libro sobre programación y seguir mi blog y buscar algunos otros blog o paginas sobre programación para principiantes. Pero hay tantos libros y páginas y blog, ¿y qué hay con todos esos diferentes lenguajes? Yo recomendaría apegarte a uno de los siguientes lenguajes: C o C++, Visual Basic, Pascal (Delphi), o Java. Aléjate de cualquier otro, puesto que probablemente no van a darte el mismo nivel de flexibilidad que te darán los antes mencionados, además esos lenguajes tendrás la mayor cantidad de libros, paginas y blog de los cuales escoger. Pero hagas lo que hagas, ¡no selecciones un lenguaje por ahora! Sólo estamos probando las aguas, ¿correcto? No estamos escribiendo el próximo Microsoft Office, así que eso no es importante todavía; y sin importar lo que cualquiera diga, esos lenguaje son todos muy similares, y muy poderosos, con aplicaciones comerciales que están escritas con cualquiera de ellos. Okey, así que necesitamos seleccionar un libro, algunas paginas y blogs, entre esos blogs incluye el mio, ahora aquí está el método que recomiendo. Elige 1 libro, 1 pagina y 1 blog sobre cada uno de los lenguajes que he mencionado arriba. Ve libro por libro, pagina por página, blog por blog y solo zambúllete a través de ellos, mirando en particular los ejemplos de programación (código fuente) que contienen. Una vez que obtengas una rápida percepción del lenguaje; asegúrate de no invertir más de un par de minutos con cualquiera de ellos. Después que hayas terminado esto, elige el libro, la pagina y el blog del que tienes los mejores presentimientos; el libro, la pagina y blog deben tratar del mismo lenguaje ya que será el lenguaje con el cual vas iniciar y ahora llego el momento de preparase para algo de lectura.
LAS HERRAMIENTAS DEL COMERCIO.
Enfrentémoslo, las herramientas correctas pueden hacer el trabajo mucho más fácil; y en ningún lugar esto es tan cierto como en el desarrollo de software. Así, si estás usando C o C++, Visual Basic, o Java, esta va a ser probablemente la plataforma que estarás usando. Hay algunas alternativas gratuitas por ahí para alguno de esos lenguajes, así que podrías checarlas.
Hay otra herramienta que es muy importante, y esa es el editor de código, o en lo que realmente haces toda tu programación. Te sugiero usar un editor llamado MultiEdit, pero existen otros.
SIENDO EL ETERNO OPTIMISTA.
Se dice que el más grande optimista
en el mundo es el desarrollador de software - nadie en su sano juicio
posiblemente pensaría que sólo el escribir CUALQUIER programa sería posible
cuando ves la 'gran escena'. Por ejemplo, mira todos los programas que se
ejecutan en el website de AnalogX; ¿cuánto te tomaría escribirlos todos? ¿Es
una perspectiva muy dantesca, verdad? Así que ¿cómo lo hice? ¿Algún tipo de
dirección superhumana me mantuvo conectando programas, aunque se pensara que
parecía imposible? De ninguna manera, ¡aún el más grande optimista tiene sus
límites! La clave es ver las cosas no como un todo, sino por partes; por
ejemplo, ¿cuánto te tomaría hacer un programa de un sitio? ¿No parece tan
imposible, verdad?
En gran medida, de eso es lo que trata todo el diseño de software; dividiendo un proyecto en pequeñas piezas bien diseñadas... Si no inviertes suficiente tiempo, no vas a ser capaz de comerte todo el pastel, o peor, ¡te atragantarás con una de esas piezas! :) Cuando empiezas a hacer tu primer programa 'real' (es decir, uno que realmente haga algo que la gente podría querer), asegúrate de invertir una razonable cantidad de tiempo planeando cómo vas a hacer las cosas, en qué orden, y qué quieres al final que sea el resultado. Si haces esto, encontrarás que las cosas van mucho más rápido de lo que pensaste que sería posible, y mucho más fáciles de lo que podrías haber anticipado.
¡TODO ES ACERCA DE TRABAJO EN EQUIPO BEBÉ!
Si estás planeando ser un programador
solitario, piénsalo de nuevo, 99.9% de los proyectos involucran EQUIPOS, y como
tal necesitas acostumbrarte a trabajar en ellos, y confiar en otros en un
proyecto. Una vez que has bajado las armas después de terminar tus propios
proyectos pequeños, probablemente sea tiempo para empezar a buscar cómo
involucrarte en un equipo de proyecto de algún tipo. Esto podría ser un juego,
un demo, o lo que sea; solo asegúrate que sea algo en lo que estés interesado,
y que todos los demás también. Hay varias formas de encontrar proyectos; puedes
unirte a algunos existentes, buscar alrededor equipos que apenas se estén
formando, o incluso empezar el tuyo propio. La cosa importante a observar al
aprender de esto es cómo trabajar con otros.
LECTURAS RECOMENDADAS.
La lectura es fundamental. Y no creo
que sea más aparente que en el desarrollo de software; si no te gusta leer
libros, entonces considera hacer algo más, puesto que ellos son clave para que
mejores y te percates de tu potencial. Hay tres razones que te ayudaran a desarrollar
software que son experiencia, la cual mas adquirirla con la practica y con el
tiempo, un buen equipo de trabajo conformado de gente brillante y trabajadora,
y los libros, pagina y blog que hay que leer, así que aquí están algunos libros
que te recomiendo que sean parte de tu biblioteca personal que vas a ir armando:
¡Este es indiscutiblemente un OBLIGATORIO para cualquier desarrollador de software, sin importar qué lenguaje de programación use! Cubre muchas prácticas distintas y técnicas relacionadas con el estilo de codificación en un estilo muy imparcial.
La secuencia de Code Complete, este libro está orientado más hacia cómo planear un proyecto, señalar trampas y peligros potenciales, etc. Otro sólido libro cargado de conocimientos acerca de qué se trata realmente el desarrollo de software.
Este libro toma una aproximación diferente al desarrollo, enfocándose más en el equipo y en sus dinámicas en lugar de los mecanismos de la programación. Esto a menudo es algo que se descuida, y los resultados son visibles en muchos de los programas liberados estos días.
Este es el libro que realmente empezó todo; aunque fue escrito hace más de 20 años, casi todo en él se aplica hoy en día.
Si vas a ser un programador de Windows (en C o C++), entonces necesitas comprar este libro.
Más adelante estaré publicando una
lista más amplia de libros y también incluiré algunos sitios web que deben
tener dentro de sus páginas de favoritos, así como blogs.
ENVUELVA.
Espero que esto te haya dado algunas
ideas de lo que se requiere para ser un programador, no solo desde un punto de
vista tecnológico, sino también desde un punto de vista psicológico.
Personalmente encuentro la
programación muy gratificante - no hay nada como ver a alguien usar algo que
hayas escrito para hacer su vida un poquito mejor. Así, si decides darle persecución
al desarrollo de software, te deseo suerte, y espero que en el futuro tenga la
oportunidad de descargar de la Red algo que TU desarrollaste o me invites a ser
parte de tu equipo de desarrollo o te integres al equipo de desarrollo que
pretendo formar. :)
Suscribirse a:
Entradas (Atom)





