Generated by Rank Math SEO, this is an llms.txt file designed to help LLMs better understand and index this website. # Programacion.py: Portal de referencia para ingeniería de software en Paraguay. Encuentra tutoriales técnicos sobre lenguajes de programación e IA aplicada, junto con guías de carrera para el mercado IT local ## Sitemaps [XML Sitemap](https://www.programacion.com.py/sitemap_index.xml): Includes all crawlable and indexable pages. ## Entradas - [Clawdbot: La Revolución del Agente Personal Autónomo y el Resurgimiento del Home Server](https://www.programacion.com.py/ai-engineering/clawdbot-la-revolucion-del-agente-personal-autonomo-y-el-resurgimiento-del-home-server): En el ecosistema del desarrollo de software, solemos ver tendencias que van y vienen, pero pocas veces presenciamos un cambio de paradigma tan tangible como el que estamos viviendo con los Agentes de IA Personales. Recientemente, una herramienta ha capturado la atención de la comunidad self-hosted y de ingenieros que buscan soberanía digital: Clawdbot. - [Maestro: Revolucionando las pruebas móviles en Flutter y React Native](https://www.programacion.com.py/qa-automation/maestro-revolucionando-las-pruebas-moviles-en-flutter-y-react-native): El aseguramiento de la calidad (QA) suele ser el cuello de botella en el Ciclo de Vida de Desarrollo de Software (SDLC). Sin embargo, en un mercado que exige lanzamientos diarios, la automatización ya no es un lujo, es una necesidad de supervivencia técnica. Hoy exploraremos Maestro, la herramienta que está cambiando las reglas del juego en el desarrollo móvil. - [De Usuarios a Integradores: Cómo construir aplicaciones con LLMs en 2026](https://www.programacion.com.py/ai-engineering/de-usuarios-a-integradores-como-construir-aplicaciones-con-llms-en-2026): En los últimos años, hemos sido testigos de una metamorfosis acelerada. Pasamos de la curiosidad por los chatbots a una realidad donde la Inteligencia Artificial no es una característica opcional, sino una capa fundamental del software moderno. Como ingenieros, nuestra labor ha evolucionado: ya no solo consumimos IA, ahora la integramos, orquestamos y refinamos. - [Pruebas unitarias en Next.js (con TypeScript)](https://www.programacion.com.py/desarrollo-software/frontend/javascript/pruebas-unitarias-en-next-js-con-typescript): Para configurar pruebas unitarias en una aplicación Next.js con TypeScript, puedes usar Jest y React Testing Library. Aquí están los pasos para configurar tu proyecto: - [Cómo ChatGPT puede revolucionar la experiencia del desarrollador](https://www.programacion.com.py/ai-engineering/como-chatgpt-puede-revolucionar-la-experiencia-del-desarrollador): ChatGPT, basado en la avanzada arquitectura GPT-4, es un modelo de lenguaje impulsado por inteligencia artificial desarrollado por OpenAI. Con su impresionante capacidad para entender y generar texto similar al humano, ChatGPT tiene un gran potencial para agilizar la experiencia del desarrollador en una amplia gama de aplicaciones. En esta entrada de blog, discutiremos algunas de las formas en que ChatGPT puede ayudar a los desarrolladores y revolucionar el proceso de desarrollo de software. - [Flutter: Escribiendo código personalizado para plataformas (Android / iOS)](https://www.programacion.com.py/moviles/multiplataforma/flutter/flutter-escribiendo-codigo-personalizado-para-plataformas-android-ios): Esta guía describe como escribir código personalizado, específico de plataforma. Algunas funcionalidades específicas de plataforma están disponibles a través de los paquetes existentes; por favor mire usando paquetes. - [Crear APP utilizando Flutter (Dart)](https://www.programacion.com.py/moviles/multiplataforma/flutter/crear-app-utilizando-flutter-dart): Ejemplo de la utilización de Flutter (con el lenguaje de programación Dart) para crear un app Mobile/Web/Desktop consumiendo el API de Frases 480. Anteriormente hemos creado un artículo describiendo toda la plataforma en general con muchos detalles, lo pueden ver aquí. - [Crear API/WEB/CMS utilizando Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/crear-api-web-cms-utilizando-ruby-on-rails): Ejemplo de la utilización de Ruby on Rails 6 para crear un web, un api y un cms (en un mismo proyecto). - [SwiftUI: Que es y primeros pasos](https://www.programacion.com.py/moviles/ios/swiftui-que-es-y-primeros-pasos): SwiftUI es un kit de herramientas de interfaz de usuario que nos permite diseñar aplicaciones de manera declarativa. Esa es una manera elegante de decir que le decimos a SwiftUI cómo queremos que nuestra UI se vea y funcione, y se da cuenta de cómo hacer que eso suceda a medida que el usuario interactúa con ella. - [Swift 5 llega a Xcode 10.2 Beta](https://www.programacion.com.py/ecosistema-it/swift-5-llega-a-xcode-10-2-beta): Swift se enfrenta a un proceso de estabilidad binaria en su librería estándar que ha requerido más tiempo y trabajo por parte del equipo tras el proyecto de código abierto para conseguir este hito. Por lo tanto, en junio del año pasado (en la WWDC) se presentó Swift 4 junto con iOS 12 y se dijo que Swift 5 llegaría a principios de 2019. - [Guía para crear una replicación en MariaDB](https://www.programacion.com.py/desarrollo-software/db/guia-para-crear-una-replicacion-en-mariadb): En este tutorial voy a estar detallando los pasos necesarios para configurar una replicación MASTER-SLAVE para MariaDB. - [Usar Replicas de Bases de Datos en Ruby on Rails con la gema Octopus](https://www.programacion.com.py/desarrollo-software/frontend/ror/usar-replicas-de-bases-de-datos-en-ruby-on-rails-con-la-gema-octopus): Hace poco tiempo me tocó resolver el problema de una app en Ruby on Rails, la base de datos de dicha app creció considerablemente en muy poco tiempo. Estábamos usando una instancia db.t2.medium (AWS RDS) y dicha instancia ya se encontraba al límite (el 80% de todos los requests eran de lectura y solo en 20% de escritura), lo que significaba que la performance de la app era muy mala porque la app tiene mucha cantidad de visitas diarias. - [Manual básico de Swift 3](https://www.programacion.com.py/manuales/manual-basico-de-swift-3): Este manual es ideal para aprender a programar con Swift. - [Estructuras y Protocolos en Swift 3](https://www.programacion.com.py/desarrollo-software/backend/swift/estructuras-y-protocolos-en-swift-3): Un struct es básicamente, una estructura de datos o al menos ese es su objetivo o representación. Pero vista desde un punto de vista más amplio a nivel de Swift podemos pensar que un struct es un realidad una clase sin herencia y cuyo principal objetivo es crear una estructura de código que pueda ser representada a partir de un tipo de dato por valor y no por referencia. - [Tuplas y Enumeraciones en Swift 3](https://www.programacion.com.py/desarrollo-software/backend/swift/tuplas-y-enumeraciones-en-swift-3): Las tuplas es un tipo de dato compuesto que es una de las grandes novedades que incorporó Swift, y cuyo mayor valor no es el tipo en sí, si no que está muy integrado en el sistema y por lo tanto podemos sacarle un gran rendimiento. - [Clases en Swift 3](https://www.programacion.com.py/desarrollo-software/backend/swift/clases-en-swift-3): Una clase es una plantilla para la creación de objetos de datos según un modelo predefinido. Las clases son un pilar fundamental de la programación orientada a objetos. Permiten abstraer los datos y sus operaciones asociadas al modo de una caja negra. Los lenguajes de programación que soportan clases difieren sutilmente en su soporte para diversas características relacionadas con clases. La mayoría soportan diversas formas de herencia. Muchos lenguajes también soportan características para proporcionar encapsulación, como especificadores de acceso. - [Funciones en Swift 3](https://www.programacion.com.py/desarrollo-software/backend/swift/funciones-en-swift-3): Una función (método o procedimiento, como prefiramos llamarlo) es un trozo de código con entidad propia que recibe o puede recibir unos valores y que devolverá o puede devolver un resultado. Su cometido es simple: permitir ejecutar una serie de instrucciones en nuestro código, de manera repetida, sin tener que poner el mismo código cada vez. - [Controles de flujo en Swift 3](https://www.programacion.com.py/desarrollo-software/backend/swift/controles-de-flujo-en-swift-3): En este artículo veremos las instrucciones de flujo de control como bucles o condicionales.  - [Introducción a Swift 3](https://www.programacion.com.py/desarrollo-software/backend/swift/introduccion-a-swift-3): Swift es un lenguaje de programación multiparadigma creado por Apple enfocado en el desarrollo de aplicaciones para iOS y Mac OS X. Fue presentado en WWDC 2014​ y está diseñado para integrarse con los Frameworks Cocoa y Cocoa Touch, puede usar cualquier biblioteca programada en Objective-C y llamar a funciones de C. También es posible desarrollar código en Swift compatible con Objective-C bajo ciertas condiciones. Swift tiene la intención de ser un lenguaje seguro, de desarrollo rápido y conciso. Usa el compilador LLVM incluido en Xcode. En el año 2015 pasó a ser de código abierto. - [Variables, constantes, inferencia y colecciones en Swift 3](https://www.programacion.com.py/desarrollo-software/backend/swift/variables-constantes-inferencia-y-colecciones-en-swift): Una variable es un contenedor cuyo valor puede variar en el transcurso de la ejecución de nuestro programa. Una constante, por el contrario, es un valor que permanecerá inalterable (o inmutable) durante el mismo. Ambos tipos forman parte de lo que se llaman propiedades. - [Ventajas de Swift frente a otros lenguajes de programación](https://www.programacion.com.py/ecosistema-it/ventajas-de-swift-frente-a-otros-lenguajes-de-programacion): Swift es el lenguaje de programaciónpor excelencia de Apple. Éste fue presentado en la WWDC14 (“World Wide Developers Conference”) del año 2014. Y tras estos años, hemos alcanzado ya la tercera versión de este lenguaje que se podría considerar innovador en ciertos aspectos. - [Los lenguajes de programación que deberías de aprender este 2017](https://www.programacion.com.py/ecosistema-it/los-lenguajes-de-programacion-que-deberias-de-aprender-este-2017): El mundo de la tecnología cada día crece más y el aprender a programar se vuelve cada vez más importante, los lenguajes de programación más usados por los estudiantes son JAVA y C++. - [¿Cuánto ganan los developers en Silicon Valley?](https://www.programacion.com.py/ecosistema-it/cuanto-cobran-los-developers-en-silicon-valley): Silicon Valley es el lugar donde tienen su sede las principales empresas de tecnología, y que son líderes a nivel mundial: Google, Apple, Cisco, Adobe, entre otros...  En esta región de California el campo del desarrollo de software es uno de los que tiene mayor demanda. En esta ocasión te presentamos cuales son los salarios que tienen los developers en esta zona: - [Sistemas Operativos preferidos por los developers](https://www.programacion.com.py/ecosistema-it/sistemas-operativos-preferidos-por-los-developers): En Stack Overflow se ha publicado su encuesta anual que realiza a sus usuarios, de los que sabemos la mayoría son desarrolladores. Dentro de dicha encuentra se encuentra una sección (Desktop Operating System) que describe el sistema operativo que prefieren para programar. Han recopilado la opinión de 56.033 desarrolladores y los resultados son, sin duda, sorprendentes. - [Crear múltiples productFlavors con Android Studio](https://www.programacion.com.py/moviles/android/crear-multiples-productflavors-con-android-studio): En muchas ocasiones necesitamos probar diferentes algoritmos para una misma aplicación o reutilizar el código para hacer una app parecida. Muchas soluciones consistente en crear un proyecto nuevo, ir cambiando las llamadas a las diferentes funciones para cada versión y modificar las variables de entorno cada vez (application id, content provider, assets, etc). Utilizando estos metodos el código se vuelve dificil de mantener, de entender y de actualizar. - [Gson: Librería para parsear JSON en Android](https://www.programacion.com.py/moviles/android/gson-libreria-para-parsear-json-en-android): Antes de comenzar me gustaría darles la defición de JSON: Es un formato de intercambio de información que está basado en estructuras de pares clave-valor. - [Butter Knife: librería para inyectar vistas en Android](https://www.programacion.com.py/moviles/android/butter-knife-libreria-para-inyectar-vistas-en-android): Butter Knife es una librería que nos facilitará la tarea de relacionar los elementos de las vistas con el código en nuestras aplicaciones Android. Nos evitará tener que utilizar findViewById y simplificará el código. Lo vemos más fácil con un ejemplo. - [HTTPS y SSL en Android](https://www.programacion.com.py/moviles/android/https-y-ssl-en-android): Para poder utilizar un servidor a través de HTPPS, el certificado digital SSL del servidor debe ser reconocido como un certificado “de confianza” por Android. Podemos comprobar los certificados reconocidos en una instalación de Android en las opciones de seguridad del dispositivo. - [Características de React](https://www.programacion.com.py/moviles/multiplataforma/react/caracteristicas-de-react): React es una librería para crear aplicaciones web, con Javascript del lado del cliente y del lado del servidor. Esa definición hace hincapié en una dualidad (cliente + servidor) que resulta una de las principales características de la librería, de las que ya hemos hablado anteriormente, en el artículo de Qué es React. Aunque volveremos sobre ese punto, ahora vamos a conocer otros datos de interés. - [Qué es React](https://www.programacion.com.py/moviles/multiplataforma/react/que-es-react): React es una librería Javascript focalizada en el desarrollo de interfaces de usuario. Esa es su principal área de trabajo, pero lo cierto es que con todo el ecosistema de aplicaciones y herramientas y componentes, con React encontramos un excelente aliado para hacer todo tipo de aplicaciones web, SPA (Single Page Application) o incluso aplicaciones para móviles. - [Utilizar certificado SSL grautito de Let’s Encrypt en Apache utilizando Ubuntu](https://www.programacion.com.py/devops-cloud/utilizar-certificado-ssl-grautito-de-lets-encrypt-en-apache-utilizando-ubuntu): Un certificado SSL sirve para brindar seguridad al visitante de su página web, una manera de decirles a sus clientes que el sitio es auténtico, real y confiable para ingresar datos personales. Las siglas SSL responden a los términos en inglés (Secure Socket Layer), el cual es un protocolo de seguridad que hace que sus datos viajen de manera íntegra y segura, es decir, la transmisión de los datos entre un servidor y usuario web, y en retroalimentación, es totalmente cifrada o encriptada. - [Qué son las Progressive Web Apps](https://www.programacion.com.py/desarrollo-software/frontend/que-son-las-progressive-web-apps): Una aplicación web progresiva o PWA (Progressive Web Apps ) usa capacidades web modernas para ofrecer una experiencias para usuario similar a la de una aplicación móvil. - [Tutorial: Autenticación de usuarios en Node.js con Facebook utilizando Passport](https://www.programacion.com.py/desarrollo-software/frontend/javascript/tutorial-autenticacion-de-usuarios-en-node-js-con-facebook-utilizando-passport): El objetivo de este tutorial es utilizar passport para autenticar usuarios en una aplicación web utilizando MongoDB + Express + Node. - [Tutorial: Autenticación basada en Token utilizando Node.js + Express.js + MongoDB](https://www.programacion.com.py/desarrollo-software/frontend/javascript/tutorial-autenticacion-basada-en-token-utilizando-node-js-express-js-mongodb): La autenticación es una de las grandes partes de cada aplicación y la seguridad es siempre algo que está cambiando y evolucionando. En la actualidad, una de las formas más utilizada para añadir seguridad a un API es utilizando JSON Web Tokens. - [¿Qué es Json Web Token (JWT)?](https://www.programacion.com.py/devops-cloud/que-es-json-web-token-jwt): Json Web Token es un conjunto de medios de seguridad para peticiones http y así representar demandas para ser transferidos entre dos partes (cliente y servidor). Las partes de un JWT se codifican como un objeto JSON que está firmado digitalmente utilizando JSON Web Signature( JWS ). - [Tutorial: Crear una aplicación web utilizando MEAN](https://www.programacion.com.py/desarrollo-software/frontend/javascript/tutorial-crear-una-aplicacion-web-utilizando-mean): El objetivo de este tutorial es empezar a desarrollar profesionalmente utilizando el Stack MEAN: MongoDB + Express + Angular + Node. - [Tutorial: Crear API RESTful utilizando Node.js + Express.js + MongoDB](https://www.programacion.com.py/desarrollo-software/frontend/javascript/tutorial-api-rest-usando-node-js-express-mongodb): El primer paso para implementar un proyecto moderno es la construcción de un API REST que podemos consumir desde una aplicación web o móvil. - [Archivos estáticos en Express.js](https://www.programacion.com.py/desarrollo-software/frontend/javascript/archivos-estaticos-en-express-js): Continuando con el anterior artículo, en ésta ocasión les quiero mostrar el servicio de archivos estáticos en Express. - [Direccionamiento básico de Express.js](https://www.programacion.com.py/desarrollo-software/frontend/javascript/direccionamiento-basico-de-express-js): Continuando con el anterior artículo, en ésta ocasión les quiero mostrar el direccionamiento básico de Express.js - [Generador de aplicaciones de Express.js](https://www.programacion.com.py/desarrollo-software/frontend/javascript/generador-de-aplicaciones-de-express-js): Continuando con el anterior artículo, en ésta ocasión les quiero mostrar la herramienta que genera aplicaciones, express, para crear rápidamente un esqueleto de aplicación. - [Introducción a Express.js (Framework Node.js)](https://www.programacion.com.py/desarrollo-software/frontend/javascript/introduccion-a-express-js-node-js): Es una infraestructura web rápida, minimalista y flexible para Node.js - [Electron, framework Javascript para crear aplicaciones de escritorio](https://www.programacion.com.py/desarrollo-software/backend/javascript-desktop/electron-framework-javascript-para-crear-aplicaciones-de-escritorio): Electron es un framework que permite la creación de aplicaciones de escritorio utilizando JavaScript puro, a través de un runtime con APIs nativas, enfocado en aplicaciones de escritorio, en vez de servidores web, es de código abierto y multiplataforma (funciona bajo Linux, Mac y Windows). - [Qué es y cómo empezar con Ionic Framework](https://www.programacion.com.py/moviles/multiplataforma/que-es-y-como-empezar-con-ionic-framework): Ionic es un framework para crear aplicaciones web móviles basadas en HTML. Utiliza como base Cordova, lo que significa que en su núcleo es una aplicación PhoneGap que puedes compilar usando Phonegap build. - [Scope en AngularJS, manejando ámbitos con $parent](https://www.programacion.com.py/desarrollo-software/frontend/javascript/scope-en-angularjs-manejando-ambitos-con-parent): El scope, un término que encontrarás nombrado hasta la saciedad en la literatura relacionada con este framework de Javascript. ¿Qué es exactamente el scope? ¿Qué podemos decir sobre él para completar lo visto hasta ahora en el Manual de AngularJS? Sobre todo ello vamos a hablar en este artículo. - [Factorías (factory) en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/factorias-factory-en-angularjs): Las factorías son como contenedores de código que podemos usar en nuestros sitios desarrollados con AngularJS. Son un tipo de servicio, "service" en Angular, con el que podemos implementar librerías de funciones o almacenar datos. - [Introducción a $location y primeros controladores en paralelo en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/introduccion-a-location-y-primeros-controladores-en-paralelo-en-angularjs): Es común usar más de un controlador en una aplicación AngularJS. Hasta ahora no lo habíamos necesitado pero para separar nuestro código en controladores puede aportar diversos beneficios, en el caso que tenga algún sentido esa separación. - [Módulo ngRoute para crear rutas e intercambiar vistas en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/modulo-ngroute-para-crear-rutas-e-intercambiar-vistas-en-angularjs): Hasta ahora en el Manual de AngularJS hemos visto muchas cosas interesantes, sin embargo nos hemos limitado a hacer aplicaciones en las que solo teníamos una ruta y una vista. Sin embargo, cuando se vayan complicando los requisitos de nuestras aplicaciones podremos necesitar ampliar estas posibilidades. - [Operación post HTTP con $http en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/operacion-post-http-con-http-en-angularjs): Hemos visto cómo realizar operaciones básicas de Ajax con AngularJS, en las que recibimos información del servidor, por medio de get. Ahora veamos también cómo se enviarían datos al servidor por medio de la operación post del HTTP. Como siempre las cosas con AngularJS se hacen muy sencillas. - [JSONP en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/jsonp-en-angularjs): JSONP es un mecanismo muy útil cuando estamos trabajando con Ajax en Javascript y queremos traernos datos que residen en otro servidor. Existe una problemática por la cual no puedes cargar datos con Javascript que te vengan desde servidores de otros dominios, pues puede darte un error de seguridad si es que el servidor al que te conectas no está configurado para aceptar solicitudes "cross domain". - [Ajax para acceso a API en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/ajax-con-angularjs-para-acceso-a-api-en-angularjs): Ajax es una solicitud HTTP realizada de manera asíncrona con Javascript, para obtener datos de un servidor y mostrarlos en el cliente sin tener que recargar la página entera. - [Filtrar, ordenar y otras variables embutidas en la directiva ngRepeat en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/filtrar-ordenar-y-otras-variables-embutidas-en-la-directiva-ngrepeat-en-angularjs): La directiva ngRepeat de AngularJS es una de esas cosas que llaman la atención, por la sencillez y rapidez con la que se puede implementar un bucle que nos repite una plantilla HTML, pero sobre todo por su potencia. - [Trabajando con campos checkbox en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/trabajando-con-campos-checkbox-en-angularjs): En el estilo de aplicaciones que se hacen con AngularJS trabajas de manera intensiva con campos de formulario. Puedes leer este artículo para aprender todo sobre los checkbox y hacer algún ejemplo práctico. - [Directiva ngClass en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/directiva-ngclass-en-angularjs): Seguimos aprendiendo aspectos básicos sobre AngularJS y nos vamos a detener en una directiva muy útil que nos ayuda a definir clases CSS (class) que se le deben aplicar a los elementos bajo ciertas circunstancias. - [Controladores, controller en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/controladores-controller-en-angularjs): Los controladores nos permiten mediante programación implementar la lógica de la presentación en AngularJS. En ellos podemos mantener el código necesario para inicializar una aplicación, gestionar los eventos, etc. Podemos decir que gestionan el flujo de la parte del cliente, lo que sería programación para implementar la funcionalidad asociada a la presentación. - [Módulo, objeto module en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/modulo-objeto-module-en-angularjs): Los módulos son una de las piezas fundamentales en el desarrollo con AngularJS y nos sirven para organizar el código en esta librería. Lo puedes entender como un contenedor donde situas el código de los controladores, directivas, etc. - [Directivas ngInit, ngRepeat y ngClick en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/directivas-nginit-ngrepeat-y-ngclick-en-angularjs): Seguimos aprendiendo AngularJS y en este artículo vamos a avanzar un poquito más y hacer un ejemplo práctico en el que no tenemos todavía necesidad de escribir código Javascript. Es interesante entretenerse con estos ejemplos, pues resultan muy sencillos y nos ayudan a mantener una progresión muy asequible en el principio de nuestro aprendizaje. También es apropieado para observar bien lo que a veces llamamos la "magia de AngularJS". Veremos que, con muy poco o nada de código, se pueden hacer cosas medianamente importantes, al menos para los desarrolladores que sabemos lo laborioso que sería montar esto por nuestra cuenta con Javascript a secas. - [Directivas y expresiones en AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/directivas-y-expresiones-en-angularjs): Al trabajar con AngularJS seguimos desarrollando encima del código HTML, pero ahora tenemos otros componentes útiles que agregan valor semántico a tu aplicación. De alguna manera estás enriqueciendo el HTML, por medio de lo que se conoce como "directiva". - [Primeros pasos con AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/primeros-pasos-con-angularjs): Ya hemos conocido por qué AngularJS nos ayuda en el desarrollo de sitios web modernos y también hemos explorado en detalle diversos conceptos iniciales para manejar esta librería, así que que estamos en condiciones de poner manos en el código. - [Introducción a AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/introduccion-a-angularjs): AngularJS es Javascript. Es un proyecto de código abierto, realizado en Javascript que contiene un conjunto de librerías útiles para el desarrollo de aplicaciones web y propone una serie de patrones de diseño para llevarlas a cabo. En pocas palabras, es lo que se conoce como un framework para el desarrollo, en esta caso sobre el lenguaje Javascript con programación del lado del cliente. - [Manual básico de AngularJS](https://www.programacion.com.py/desarrollo-software/frontend/javascript/manual-basico-de-angularjs): Este manual es ideal para aprender a programar con AngularJS. - [Comentarios del sitio web](https://www.programacion.com.py/ecosistema-it/comentarios-del-sitio-web): Estimados lectores de programacion.com.py, les informamos que desde la fecha hemos habilitado los comentarios del sitio web, como así también los comentarios con Facebook, esperemos que esto sea de su total agrado.. - [Recursos – Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/recursos-ruby-on-rails): Después de crear tu primera aplicación Rails de prueba, ya deberías ser capaz de empezar a jugarcon ella para probar nuevas cosas por tu cuenta. En cualquier caso, no estás solo en este proceso de aprendizaje. Como seguramente tarde o temprano necesitarás ayuda, puedes echar mano a estos recursos: - [Seguridad – Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/seguridad-ruby-on-rails): Si publicaras ahora tu aplicación Rails, cualquier persona podría añadir, editar y borrar artículos y comentarios. Obviamente Rails incluye algunas opciones de seguridad para evitar esto. Una de ellas es la autenticación basada en HTTP. - [Borrando comentarios – Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/borrando-comentarios-ruby-on-rails): Otra de las funcionalidades básicas de cualquier blog es la posibilidad de borrar los comentarios de spam. Para ello, vamos a añadir un enlace en la vista y una acción llamada destroy en el controladorCommentsController. - [Refactorización – Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/refactorizacion-ruby-on-rails): La aplicación ya permite crear artículos y comentarios, pero si echas un vistazo al archivoapp/views/articles/show.html.erb verás que la plantilla es muy larga y su código es un poco caótico. Para limpiar el código podemos hacer uso de los parciales. - [Relaciones en Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/relaciones-en-ruby-on-rails): A continuación vamos a añadir un segundo modelo a la aplicación. Este nuevo modelo se encargará de gestionar los comentarios de los artículos. - [Creando un CRUD completo – Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/manual-basico-de-ruby-on-rails-2): Ahora que has visto cómo crear un controlador, una acción y una vista, vamos a crear algo un poco más complejo. - [Hola, Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/hola-ruby-on-rails): Para comenzar, vamos a mostrar algo de texto en la pantalla rápidamente. Para hacer ésto, necesitas tener tu servidor de aplicación Rails corriendo. - [Creando un nuevo proyecto – Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/creando-un-nuevo-proyecto-ruby-on-rails): Lo primero que debes hacer es abrir una consola de comandos. En Mac OS X eso significa abrir la aplicación Terminal.app. En Windows pincha sobre el menú de inicio y elige la opción Ejecutar y teclea cmd.exe. - [Manual básico de Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/manual-basico-de-ruby-on-rails): Este manual es ideal para aprender a programar con Ruby on Rails. - [Introducción a Ruby on Rails](https://www.programacion.com.py/desarrollo-software/frontend/ror/introduccion-a-ruby-on-rails): Rails es un framework de desarrollo de aplicaciones web escrito en el lenguaje de programación Ruby. Está diseñado para hacer que la programación de aplicaciones web sea más fácil, haciendo supuestos sobre lo que cada desarrollador necesita para comenzar. Te permite escribir menos código realizando más que muchos otros lenguajes y frameworks. Además, expertos desarrolladores en Rails reportan que hace que el desarrollo de aplicaciones web sea más divertido. - [JSF 2 con Maven – Hola Mundo](https://www.programacion.com.py/desarrollo-software/frontend/java-web/jsf-2-con-maven-hola-mundo): JavaServer Faces (JSF) es una tecnología y framework para aplicaciones Java basadas en web que simplifica el desarrollo de interfaces de usuario en aplicaciones Java EE. JSF usa JavaServer Pages (JSP) como la tecnología que permite hacer el despliegue de las páginas, pero también se puede acomodar a otras tecnologías como XUL (acrónimo de XML-based User-interface Language, lenguaje basado en XML para la interfaz de usuario) - [Java RMI](https://www.programacion.com.py/desarrollo-software/backend/java-escritorio/java-rmi): RMI (Java Remote Method Invocation) es un mecanismo ofrecido por Java para invocar un método de manera remota. Permite que un objeto ejecutándose en un JVM llame a métodos de otro objeto que esta en una JVM diferente. Para plataformas diferentes se necesitaría SOAP o CORBA. - [Diferencia entre Phonegap y Apache Cordova](https://www.programacion.com.py/moviles/multiplataforma/phonegap/diferencia-entre-phonegap-y-apache-cordova): La confusión comenzó en octubre de 2011 , cuando lo que se ha conocido como PhoneGap hasta ese momento fué donado a la Fundación de Software Apache con el fin de iniciar el proyecto de incubación “Apache Cordova” (que se convirtió en un proyecto de ASF de primer nivel en octubre de 2012) . - [Comenzar con PhoneGap 3.5 con línea de comandos](https://www.programacion.com.py/moviles/multiplataforma/phonegap/comenzar-con-phonegap-3-5-con-linea-de-comandos): En este tutorial vamos a explicar como crear nuestro proyecto con la versión actual de PhoneGap, la 3.5. - [Introducción a Phonegap](https://www.programacion.com.py/moviles/multiplataforma/phonegap/introduccion-a-phonegap): PhoneGap es un framework para el desarrollo de aplicaciones móviles producido por Nitobi, y comprado posteriormente por Adobe Systems. Principalmente, PhoneGap permite a los programadores desarrollar aplicaciones para dispositivos móviles utilizando herramientas genéricas tales como JavaScript, HTML5 y CSS3. Las aplicaciones resultantes son híbridas, es decir que no son realmente aplicaciones nativas al dispositivo (ya que el renderizado se realiza mediante vistas web y no con interfaces gráficas específicas de cada sistema), pero no se tratan tampoco de aplicaciones web (teniendo en cuenta que son aplicaciones que son empaquetadas para poder ser desplegadas en el dispositivo incluso trabajando con el API del sistema nativo). - [Metodología Scrum](https://www.programacion.com.py/desarrollo-software/metodologia-scrum): Esta metódica de trabajo promueve la innovación, motivación y compromiso del equipo que forma parte del proyecto, por lo que los profesionales encuentran un ámbito propicio para desarrollar sus capacidades. - [Gestión de cambios de la base de datos – Liquibase](https://www.programacion.com.py/desarrollo-software/backend/java-escritorio/gestion-de-cambios-de-la-base-de-datos-liquibase): Una de las prácticas habituales en los desarrollos, es la creación de script sql incrementales. Con lo que comenzamos con script de creación de tablas, script de inserción de datos etc etc ... y, a medida que avanza el desarrollo, cada uno de los desarrolladores va creando scripts con las modificaciones oportunas que le exige la tarea que está llevando a cabo. Esta práctica hace del proceso de cambios de base de datos un proceso totalmente manual, que puede llevar a confusiones, sobre todo debido a que es muy posible no saber que scripts se han ejecutado y cuales faltan por ejecutar en cada uno de los entornos que estemos manejando. - [Web Service Rest (Jersey) con Java EE](https://www.programacion.com.py/desarrollo-software/frontend/java-web/web-service-rest-jersey-con-java-ee): En éste artículo vamos a ver como utilizar Jersey con las mismas funcionalidades que ya creamos con RESTEasy (suma dos números y devuelve el resultado), por ese motivo, recomiendo que primero lean todo éste artículo:  Web Service Rest (RESTEasy) con Java EE - [Acceso a Web Service REST en Android](https://www.programacion.com.py/moviles/android/acceso-a-web-service-rest-en-android): Antes de comenzar el tutorial, recomiendo que ingresen a éste artículo Web Service Rest (RESTEasy) con Java EE, donde se explica paso a paso como crear un web service rest con tecnología JAVA. - [Web Service Rest (RESTEasy) con Java EE](https://www.programacion.com.py/desarrollo-software/frontend/java-web/web-service-rest-resteasy-con-java-ee): En el artículo anterior (éste) describí como crear y utilizar un servicio web SOAP, que suma dos números y devuelve el resultado. - [Acceso a Web Service SOAP en Android](https://www.programacion.com.py/moviles/android/acceso-a-web-service-soap-en-android): Antes de comenzar el tutorial, recomiendo que ingresen a éste artículo Web Service Soap con Java EE , donde se explica paso a paso como crear un web service soap con tecnología JAVA. - [Web Service Soap con Java EE](https://www.programacion.com.py/desarrollo-software/frontend/java-web/web-service-soap-con-java-ee): SOAP (siglas de Simple Object Access Protocol) es un protocolo estándar que define cómo dos objetos en diferentes procesos pueden comunicarse por medio de intercambio de datos XML. Este protocolo deriva de un protocolo creado por Dave Winer en 1998, llamado XML-RPC. SOAP fue creado por Microsoft, IBM y otros. Está actualmente bajo el auspicio de la W3C. Es uno de los protocolos utilizados en los servicios Web. - [Corba con Java e IDL](https://www.programacion.com.py/desarrollo-software/backend/java-escritorio/corba-con-java-e-idl): Common Object Request Broker Architecture (CORBA) es un estándar definido por Object Management Group (OMG) que permite que diversos componentes de software escritos en múltiples lenguajes de programación y que corren en diferentes computadoras, puedan trabajar juntos; es decir, facilita el desarrollo de aplicaciones distribuidas en entornos heterogéneos. - [Video: JAVA vs .NET](https://www.programacion.com.py/devops-cloud/video-java-vs-net): Navegando por internet me encontré con un video muy interesante "Java vs .NET" y quiero compartirlo con ustedes - [Instalar Jenkins en CentOS / Fedora / Red Hat](https://www.programacion.com.py/ecosistema-it/instalar-jenkins-en-centos-fedora-red-hat): Jenkins es un software de Integración continua open source escrito en Java. Está basado en el proyecto Hudson y es, dependiendo de la visión, un fork del proyecto o simplemente un cambio de nombre. - [Netbeans y GIT – Tips Importantes](https://www.programacion.com.py/ecosistema-it/netbeans-y-git-tips-importantes): Hago éste artículo por el motivo de que en clases quisimos pasar de un repositorio github (https) a otro repositorio git que solo tenía la opción SSH utilizando el IDE Netbeans. - [Integrar JSP, Hibernate en una aplicación web utilizando MVC y MAVEN](https://www.programacion.com.py/desarrollo-software/frontend/java-web/integrar-jsp-hibernate-en-una-aplicacion-web-utilizando-mvc-y-maven): Maven es una herramienta de software para la gestión y construcción de proyectos Java creada por Jason van Zyl, de Sonatype, en 2002. Es similar en funcionalidad a Apache Ant (y en menor medida a PEAR de PHP y CPAN de Perl), pero tiene un modelo de configuración de construcción más simple, basado en un formato XML. Estuvo integrado inicialmente dentro del proyecto Jakarta pero ahora ya es un proyecto de nivel superior de la Apache Software Foundation. - [Instalar Tomcat 7 en CentOS 6](https://www.programacion.com.py/devops-cloud/instalar-tomcat-7-en-centos-6): Apache Tomcat (también llamado Jakarta Tomcat o simplemente Tomcat) funciona como un contenedor de servlets desarrollado bajo el proyecto Jakarta en la Apache Software Foundation. Tomcat implementa las especificaciones de los servlets y de JavaServer Pages (JSP) de Sun Microsystems. - [Introducción a Maven](https://www.programacion.com.py/devops-cloud/introduccion-a-maven): Modelo de objeto del proyecto (POM – Project Object Model)EL POM describe todas las propiedades del proyecto. Entre la información que encontramos en el POM se puede destacar: - [Args.js librería Javascript para tratamientos con parámetros](https://www.programacion.com.py/ecosistema-it/args-js-libreria-javascript-para-tratamientos-con-parametros): Es una librería para Javascript que permite establecer funciones con parámetros opcionales, valores por defecto, parámetros requeridos y una serie de tipos forzados en los parámetros, entre otras. - [Crear una aplicación de Streaming (Audio) para Android con MediaPlayer](https://www.programacion.com.py/moviles/android/crear-una-aplicacion-de-streaming-audio-para-android-con-mediaplayer): Para crear una aplicación para Android que nos sirva como reproductor de streaming de audio es muy sencillo. El sdk de Android trae consigo un componente llamado MediaPlayer, con dicho componente se puede reproducir audio sin muchos dolores de cabeza, se puede reproducir audio localmente o remotamente, en nuestro caso les voy a dejar el ejemplo como para que puedan reproducir una radio online en su smartphone. - [HTML](https://www.programacion.com.py/desarrollo-software/frontend/html/html): Basa su sintaxis en un elemento de base al que llamamos etiqueta. - [Integrar JSP, Hibernate en una aplicación web utilizando MVC – Parte II](https://www.programacion.com.py/desarrollo-software/frontend/java-web/integrar-jsp-hibernate-en-una-aplicacion-web-utilizando-mvc-parte-ii): Parte II del tutorial. - [Integrar JSP, Hibernate en una aplicación web utilizando MVC – Parte I](https://www.programacion.com.py/desarrollo-software/frontend/java-web/integrar-jsp-hibernate-en-una-aplicacion-web-utilizando-mvc-parte-i): Introducción - [RPC (Remote Procedure Call) en C – Linux](https://www.programacion.com.py/desarrollo-software/backend/c/rpc-remote-procedure-call-en-c-linux): Diseño de Programas Distribuidos: - [Facebook lanza Hack, un nuevo lenguaje de programación](https://www.programacion.com.py/ecosistema-it/facebook-lanza-hack-un-nuevo-lenguaje-de-programacion): Hack es un lenguaje de programación para el desarrollo web creado por los desarrolladores de Facebook que tiene una pinta excelente por diversos motivos. Primero porque se basa en la sintaxis de PHP, facilitando su adopción a los desarrolladores que ya tienen una amplia experiencia en ese lenguaje. Segundo porque mejora algunas carencias de PHP que el equipo de Facebook considera importantes de solucionar para mejorar la productividad de los programadores. Tercero, porque se ejecuta sobre una máquina virtual que permite un rendimiento mucho mayor de los sitios web. - [Underscore.php librería PHP](https://www.programacion.com.py/ecosistema-it/underscore-php-libreria-php): Underscore.js es una popular librería Javascript que nos facilita mucho la vida en el desarrollo de aplicaciones de media y alta complejidad. Posiblemente ya se conozca por muchos de los lectores. Si no es así, y trabajas en Javascript, deberías echarle un vistazo a http://underscorejs.org/ - [Phalcon – Framework PHP – Extensión de C](https://www.programacion.com.py/ecosistema-it/phalcon-framework-php-extension-de-c): Navengando por la web he encontrado éste framework muy interesante llamado Phalcon que está escrito como una extensión de C para obtener el máximo rendimiento en nuestra aplicación web. - [Reportes gráficos en Yii](https://www.programacion.com.py/desarrollo-software/frontend/php/reportes-graficos-en-yii): Una utilidad muy grande es crear reportes gráficos, sirve mucho por ejemplo para ver todo lo que se facturó en un mes o cuestiones similares. ## Páginas - [Política de privacidad](https://www.programacion.com.py/politica-de-privacidad): La dirección de nuestra web es: https://www.programacion.com.py. - [Contactenos](https://www.programacion.com.py/contactenos) - [Acerca de](https://www.programacion.com.py/acerca-de): La terminal del conocimiento dev en Paraguay.