lunes, abril 27, 2015

10 Habilidades Que Todo Programador Debe Tener

Desde muy temprana edad he estado envuelto en el mundo de la tecnología. Si hay algo que no me deja de fascinar sobre este mundo es lo rápido que avanza el sector del software. La industria del software ha mutado a pasos agigantados desde su nacimiento. En los años 80 el software giraba en torno a las PC de escritorios y Mainframes. En la actualidad la tendencia es hacia soluciones para dispositivos móviles y la web.

Programador

Como consecuencia de este avance tan rápido que experimenta la industria del software, he dedicado tiempo en reflexionar sobre las características excenciales que permitan a un programador mantenerse en la industria por un largo periodo de tiempo y al mismo tiempo ser exitoso en su profesión. A continuación explicaré algunas de las características que todo programador debe tener para ser exitoso en el híper competitivo campo de la industria del software.

  • Curiosidad: Un buen programador siempre está ávido de conocimientos. Hasta que no conoce el problema en profundidad no se detiene de trabajar. Es esta característica la que permite que un programador pueda adquirir el conocimiento y habilidades para entender cualquier tecnología subyacente en la que necesite escribir código. Sé curioso y alimenta tu mente con información útil. Nunca pares de leer.
  • Pensamiento claro: Un pensamiento claro es un ejercicio de lógica. Por esta razón es que los programadores con excelente bases matemáticas superan en rendimiento en la mayoría de las veces a sus pares que carecen de estos conocimientos. Ejercita tu lógica a través de las matemáticas.
  • Leer y comprender rápido: La rapidez en la lectura y compresión de la información es vital para la productividad de cualquier programador. Un programador NO sólo escribe código, parte de su trabajo incluye la lectura de código, documentación y especificaciones de proyectos. Los programadores que leen de manera lenta son improductivos pero los que no tiene buena lectura comprensiva son peligrosos.
  • Atención a los detalles: He notado que la característica de atención a los detalles está estrechamente relacionada con la curiosidad. Un programador que no presta atención a los detalles principalmente en el proceso de escritura de código es altamente improductivo. La falta de esta habilidad se refleja en aquellos que escriben código desordenado, sin comentarios y no implementan las medidas de seguridad adecuadas para garantizar la integridad del software.
  • Aprender rápido temas fuera de la programación: Exceptuando que seas un programador trabajando dentro de una compañía de software desarrollando herramientas únicamente para programadores, es necesario que estés en comunicación con otras personas fuera del mundo del código binario. Esto incluye conversar con contadores, abogados, financieros, etc. Por lo tanto, un programador debe adquirir conocimientos en las áreas con la que se relaciona en el trabajo. Así como un periodista debe poseer el conocimiento mínimo necesario para escribir un artículo sobre economía, de esta misma forma un programador debe tener conocimientos mínimos de finanzas para poder ayudar a un director financiero a resolver un problema de software.
  • Autodidacta: El programador que depende que su empleador para que financie los entrenamientos está condenando al fracaso. La realidad es que en las empresas casi nunca hay presupuesto para entrenamientos en el área de tecnología. Un excelente programador es autodidacta. La habilidad de aprender por sí mismo paga en el largo plazo. El mundo del desarrollo de software es muy amplio y no se detiene, el programador actual debe estar en constante evolución aprendiendo nuevas herramientas y lenguajes. Un programador que dure dos años sin capacitación está desfasado.
  • Pasión: Existen programadores de 9-5. Estos son aquellos que escriben código de forma rutinaria en su trabajo. Fuera de su trabajo no existe el código. Esto no está mal pero es un reflejo de falta de pasión. Los mejores programadores respiran código las 24 horas. Esta “pasión” es la que permite aplicar trucos y buscar soluciones creativas al momento de enfrentar problemas complejos.
  • Adaptabilidad: Es muy difícil que un proyecto de software termine con las mismas especificaciones que se delinearon al comienzo del proyecto. Las cosas cambian y los grandes proyectos también. Un programador debe saber cómo adaptarse a los cambios. Los programadores que no se adaptan fracasan.
  • Comunicación efectiva: Comunicación efectiva no es sinónimo que hables perfectamente tu idioma; es más que eso. Es necesario que un programador tenga la capacidad de comunicar las ideas de forma clara y precisa. Los programadores que NO logran que sus ideas sean comprendidas principalmente por aquellas personas no técnicas, tienden a tener dificultades en sus carreras. Una persona que no comunique efectivamente NO puede escalar a posiciones gerenciales en una empresa.
  • Explora código: Un forma rápida y eficiente de incrementar tus habilidades en programación es a través de la exploración de código escrito por otros. Algunos de los mejores programadores del mundo colaboran en proyectos Open Source. Involúcrate y aprender de los gurúes.

Antes que te vayas me gustaría que contestes las siguientes preguntas:

¿Qué otras características crees que debemos incluir en este listado?

¿Cuál de estas habildades consideras que es la más importante?

Tus opiniones son importantes para nosotros.

Por favor, deja tu comentario aquí debajo en este post.

Si te gustó este artículo, por favor compártelo con tus amigos. Les estarás haciendo un gran favor.

¡Hasta pronto!

Fuente: http://blog.capacityacademy.com/2015/04/15/10-habilidades-todo-programador-debe-tener/

Saludos.

15 Libros Que Todo SysAdmin Debe Leer

El siguiente listado de libros es el resultado de una encuesta realizada en el sitio web ServerFault.com, una comunidad en línea exclusiva para SysAdmin y DevOps. La pregunta de la encuesta fue:

“¿Cuál ha sido el libro más influyente que todo SysAdmin debería leer?”

Sysadmin

A partir del resultado de miles de respuestas proporcionadas por SysAdmin y DevOps de todos los background posibles, tenemos aquí un listado de los libros más influyentes en el mundo de la administración de servidores Unix / Linux.

NOTA: La posición de los libros dentro del listado NO implica una ponderación mayor en importancia.

Mientras ibas escribiendo este listado de libros iba recordando mis inicios en la administración de servidores Linux. No había nada más divertido y excitante para mí que aprender cosas nuevas sobre la administración de servidores Linux.

Recuerdo hasta el primer día que compré un libro de Linux. No recuerdo el nombre exactamente del libro pero si el lugar —una tienda de computadora que existía en Santo Domingo llamada Herrera Pérez— y la distribución que trajo el libro grabado en CD: Slackware 3.0. Slackware fue por varios años mi distribución Linux por default hasta que después cambié aRed Hat 6.0.

Creo que todo aquel que quiera escalar al próximo nivel en su carrera como SysAdmin debería invertir el tiempo y los recursos en adquirir los conocimientos plasmados en estas joyas de libros.

Antes que te vayas me gustaría que contestes las siguientes preguntas:

¿Cuál de los libros listados consideras el más importante y por qué?

¿Qué otro libro consideras fundamental incluir en este listado?

Tus opiniones son importantes para nosotros.

Por favor, deja tu comentario aquí debajo en este post.

Si te gustó este artículo, por favor compártelo con tus amigos. Les estarás haciendo un gran favor.

¡Hasta pronto!

Fuente: http://blog.capacityacademy.com/2015/04/23/15-libros-todo-sysadmin-debe-leer/

Saludos.

¿Qué significa “Dual Core” y Quad Core”? Para qué te sirve saberlo?

cpu

En un momento, nuestras computadoras tenían una unidad de procesamiento central (CPU) con un solo núcleo. En estos días, la mayoría de las CPUs te encontrarás que son de doble núcleo, cuatro núcleos, o incluso ocho núcleos. Vamos a explicar exactamente qué es un núcleo, doble núcleo vs cuatro núcleos, y cual es la importancia que tiene su uso en las computadoras y en en los móviles.

puedes que tengas que elegir entre un CPU menos costoso con un menor número de núcleos o un CPU más caro con más núcleos para la compra de un ordenador portátil, tablet, o incluso un teléfono inteligente. Saber la diferencia entre doble núcleo vs CPU de cuatro núcleos – y lo que significa para tí – te ayudará a tomar decisiones inteligentes al comprar un nuevo hardware.

¿Qué es un Core o núcleo?

Cada “núcleo” es en realidad una unidad central de proceso separado, que es la parte de la CPU que en realidad hace el trabajo. Por ejemplo, un chip de doble núcleo puedes verse como un solo chip del CPU, pero en realidad tiene dos unidades centrales de procesamiento físicos en el chip.

Las Unidades centrales de procesamiento adicionales permiten a una computadora hacer varias cosas a la vez. Si alguna vez has utilizado un CPU de un solo núcleo y has  actualizado a un CPU de doble núcleo, debiste haber notado una diferencia significativa en la forma en que responde el equipo.

Por ejemplo, digamos que estás extrayendo un archivo y navegas por la web al mismo tiempo. Si has tenido un CPU de doble núcleo, una central trabajaría en la extracción del archivo, mientras que el otro núcleo haría su trabajo de navegación web. Navegación por Internet sería mucho más rápida. 

Ya sea que esté haciendo varias cosas a la vez o no, tu equipo está a menudo haciendo las tareas del sistema en segundo plano y que puedes beneficiarse de núcleos adicionales para mantener el sistema operativo siempre funcionando de forma óptima. Por ejemplo, Google Chrome hace con cada página web un proceso separado. Esto permite que Google Chrome utilice diferentes CPUs para diferentes sitios web en lugar de utilizar un solo CPU para todas las tareas relacionadas con el navegador.

Velocidad de reloj vs Cores

Los CPUs tienen una velocidad de reloj – piensa en ello para comparar como la rapidez de un CPU funciona.
Por ejemplo, el procesador Core i5-3330 de Intel tiene una velocidad de reloj de 3 GHz y es un procesador de cuatro núcleos, lo que significa que tiene cuatro núcleos. Los cuatro núcleos en este procesador i5 de Intel están cada uno funcionando a 3 GHz.

Duplicar los núcleos no se duplica la velocidad

Muchos programas de computadora son de un único subproceso, lo que significa que su trabajo no se puedes dividir entre varias CPU. Deben  ejecutarse en un solo CPU. Esto significa que la duplicación de los núcleos no duplicará su rendimiento.

Si  tienes una aplicación de un solo subproceso se ejecuta en 3 GHz con CPU de cuatro núcleos, lo cual significa que la aplicación funcionará a 3 GHz – no 12 GHz. Se utilizará un núcleo y los otros tres núcleos estarán inactivos, esperando otras tareas a realizar.

Crear aplicaciones que puedan escalar a través de varios CPUs a la vez es en realidad un problema difícil en la informática. Se está convirtiendo en un problema más crucial, ya que el futuro parece ser tener equipos con más y más núcleos en lugar de un menor número de núcleos para hacer táreas más rápidas.

Algunas aplicaciones pueden aprovechar múltiples núcleos. La arquitectura multi-proceso de Google Chrome permite llevar a cabo acciones en varios núcleos diferentes a la vez. Algunos juegos de ordenador pueden dividir tus cálculos a través de múltiples núcleos diferentes a la vez.

Sin embargo, la mayoría de las aplicaciones que se utiliza es probable que sea de un único subproceso. Un CPU de cuatro núcleos no ejecutará Microsoft Office el doble de rápido que un CPU de doble núcleo. Si todo lo que hacen es ejecutar Microsoft Office, el rendimiento puedes ser muy similar.

Más núcleos ayuda si lo que buscas es hacer más más de una cosa a la vez o si tienes una aplicación multiproceso que puede tomar ventaja de ello. Por ejemplo, si se está ejecutando varias máquinas virtuales, mientras que se codifica vídeos,se extraen archivos, y haciendo otras cosas el CPU exige en tu ordenador, un CPU octo-core que puede ser capaz de mantenerse muy activo, mientras que un CPU de cuatro núcleos puedes tropezar bajo tal carga.

Dual Core, Quad Core & mas

Frases como “doble núcleo”, “quad core” y “núcleo octo” todo sólo se refieren al número de núcleos que un CPU tiene:
Core dual: dos núcleos.
Quad Core: Cuatro núcleos.
Hexa Core: Seis núcleos.
Octo Core: Ocho núcleos.
Deca Core: Diez núcleos.
Control y monitoreo Cores

En realidad se puede ver asignar a qué programas pueden ejecutarse usando un CPU, desdeel administrador de tareas de Windows. CTRL+ALT+DELETE, das clic en detalles, luego clic derecho en alguna aplicación y selecciona Establecer afinidad.

Serás capaz de seleccionar qué CPUs (núcleos) la aplicación puede ejecutarse en. No deberá ser necesario ajustar esto todo el tiempo, aunque puede ser útil cuando se desea restringir una aplicación exigente a ciertos núcleos o evitar errores en los juegos de PC antiguos.

Desde el administrador de tareas, también puedess utilizar la ficha Rendimiento para ver el uso de todos tus núcleos de CPU.

Hyper-Threading

CPUs Intel utiliza una tecnología denominada “la tecnología Hyper-Threading”. Con hyper-threading, cada núcleo físico se presenta al sistema como dos núcleos lógicos. En la imagen anterior, no estamos utilizando un CPU octo-core – estamos usando un CPU quad-core con tecnología Hyper-Threading.

Esto mejora el rendimiento hasta cierto punto, pero un CPU de cuatro núcleos con hyper-threading no es tan bueno como un CPU octo-core.

Fuente: http://tecnobitt.com/que-significa-dual-core-y-quad-core-para-que-te-sirve-saberlo/

 

Saludos.

domingo, abril 05, 2015

Desarrollo de Sistemas Contables I–UAP

image
Descargar ==> http://1drv.ms/1PavIUW
  image
Descargar ==> http://1drv.ms/1PavRHM
     

Saludos.

Arquitectura .Net

image
Descarga ==> http://1drv.ms/1PauBV5
  image
Descarga ==> http://1drv.ms/1Fv9DuD
     
image
Descarga ==> http://1drv.ms/1Fv9G9R
  image
Descarga ==> http://1drv.ms/1Fv9F5V
     

Saludos.

Nómina de Matrícula 2015–Práctica Excel

image

Descargar ==> http://1drv.ms/1Fv8P99

Saludos.

Carta de Bill Gates a los empleados de Microsoft por el 40 cumpleaños

por Jose Palacios · abril 4, 2015

Carta de Bill Gates a los empleados

Ayer os traíamos uno de algunos de los artículos que haremos, más nostálgicos o menos, en conmemoración por los 40 años de la compañía Microsoft. Han sido unos años frenéticos de altibajos donde siempre ha estado presente y siempre ha habido alguien que amenazaba su hegemonía. Hoy os traemos la traducción de la carta de Bill Gates a los empleados de Microsoft.

Hoy es un día especial: Es el 40 cumpleaños de Microsoft

Desde el principio, Paul Allen y yo teníamos como objetivo que hubiese un ordenador en cada casa. Se trataba de una idea audaz y mucha gente pensó que estábamos locos al pensar que eso era posible. Es increíble pensar hasta donde ha llegado la informática desde entonces, y todos podemos estar orgullosos del papel que juega Microsoft en esa revolución.

Sin embargo, hoy pienso más en el futuro de Microsoft que en el pasado. Creo que su evolución será mucho mayor en los próximos diez años que nunca antes. Ya vivimos en un mundo de múltiples plataformas y el mundo de la informática profundizará todavía más. Estamos cerca del punto donde los robots sean capaces de ver, moverse e interactuar con naturalidad. De este modo se abrirán muchas nuevas aplicaciones que beneficiarán a la gente todavía más.

Bajo el liderazgo de Satya, Microsoft está mejor posicionada que nunca para liderar estos avances. Tenemos los recursos necesarios para trabajar y solventar los problemas que haya en el camino. Estamos preparados en todas las facetas de la computación actual y tenemos el compromiso más profundo para investigar en la industria. En mi papel como asesor técnico de Satya, analizo productos y estoy impresionado por la visión y talento que veo. El resultado es evidente en productos como Cortana, el Traductor de Skype y HoloLens – y estas son solo algunas de las innovaciones que están por venir.

En los próximos años, Microsoft tiene la oportunidad de alcanzar a todavía más personas y organizaciones alrededor del mundo. La tecnología está aun fuera del alcance de mucha gente, debido a su complejidad o coste, o simplemente no tienen acceso. Espero que penséis en como hacer posible que el poder de la tecnología esté disponible para todos, para conectar a todos y hacer que la informática de consumo esté disponible en todos lados así como la noción de lo que un PC ofrece.

Hemos logrado muchas cosas juntos durante nuestros primeros cuarenta años y hemos ayudado a incontables empresas y personal a alcanzar su máximo potencial. Pero lo que ahora importa es que vamos a hacer después. Gracias por hacer de Microsoft una gran compañía ahora y durante las próximas décadas.

Fuente | NeoWin

http://www.microsoftinsider.es/66853/bill-gates-escribe-a-los-empleados-de-microsoft-por-el-40-cumpleanos/

¿Qué es un Algoritmo?

Más información ==>  https://m.facebook.com/story.php?story_fbid=779713015547334&id=332220556963251