Reposicionando la marca KDE
Traducción de dot.kde.org
KDE ha cambiado durante estos 13 años. El framework a crecido, madurado y se ha convertido en multiplataforma, como las aplicaciones. Un crecimiento fuerte en nuestra comunidad ha creado una gran diversidad de aplicaciones de gran comunidad.
En el proceso, la identidad de KDE a cambiado desde ser simplemente un entorno de escritorio a reprsentar una comunidad global que crea un muy rico cuerpo de software libre dirigido a todo el mundo.
KDE ya no es software creado por personas, es personas que crean software.
Para comunicar esto de manera clara en nuestro mensaje, es necesario reposicionar la marca KDE para que reflje esta realidad.
Por lo tanto tambien necesitamos distintas marcas para los productos que fabricamos.
Resumen:
- Usaremos simplemente “KDE” y retiraremos la expansión “K Desktop Environment”
- Usaremos KDE exclusivamente en dos significados:
- KDE, la comunidad, quienes crean software libre para usuarios finales
- Como la marca para la tecnología creata por la comunidad KDE
- Usaremos distintas marcas para el software que antes era referido genericamente como “KDE”
- KDE Workspaces sera separadamente referido como “KDE Plasma Desktop” y “KDE Plasma Netbook”
- La tecnología KDE usada para construir aplicaciones será conocida como “KDE Platform”
- Las aplicaciones KDE se quedaran como ahora: “the KDE Applications”
- El producto que actualmente hemos liberado como “KDE 4.3″ es esencialmente una compilación de nuestros software (Workspaces, Applications and Platform), así la siguiente liberación será llamada “KDE Software Compilation 1.4″
Para más info: http://dot.kde.org/2009/11/24/repositioning-kde-brand
Esto es bastante importante, y lo supe hoy en la reunión quincenal de la, aún en formación, comunidad KDE-Chile.
Comenzando con Android IV – Hola Mundo
Después de mucho tiempo sin postear nada… xD
Hasta ahora hemos visto la parte, digamos teórica de una aplicación para la plataforma Android de la que ya muchos se han enamorado, es por eso que ahora les mostraré lo más básico hablando de desarrollo, como hablar en Android, o visto d otro modo como hacer el típico Hola Mundo para esta plataforma.
1.- Creando nuestro proyecto Hola Mundo!!!!
Para este pequeño proyecto usaremos el IDE Eclipse con el plugin para Android como vimos en el primer post de esta serie, una vez abierto nuestro IDE vamos a File -> New -> Project al abrirse el cuadro de dialogo seleccionamos el elemento Android que nos mostrar el texto Android Project, ahora solo presionamos Next, ya en este punto ingresamos la información relevante del proyecto… por ahora solo el nombre xD….
Project Name: Nombre del directorio que contendrá los archivos fuente del proyecto
Package Name: Este es el nombre del paquete que se construirá al generar el “stub” de la “Activity”, este nombre debe ser único y distinto a los ya instalados en el sistema.
Activity Name: Este es el nombre de la clase Activty que crearemos, que será autogenerada por nuestro IDE
Application Name: Nombre de la aplicación, este es el que no hará famosos!!!!
Presionamos Finish y se nos generará el código fuente de nuestra Activity:
public class HelloWorld extends Activity{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle icicle){
super.onCreate(icicle);
setContentView(R.layout.main);
}
}
Notar que la clase se llama HelloWorld que es el nombre que le puse a la aplicación.
Este código literalmente “hace nada”, es aquí donde debemos “meter mano”
import android.widget.TextView;
public class HolaAndroide extends Activity {
/** Called when the activity is first created. */
@Override public void onCreate(Bundle icicle) {
super.onCreate(icicle);
TextView tv = new TextView(this);
tv.setText("Hola Mundo");
setContentView(tv);
}
}
Aquí hemos modificado un poco el código original agregando lo necesario para que se muestre el mensaje “Hola Mundo“
¿Que hemos hecho?
La primeria linea: “import android.widget.TextView” es la llamada necesaria para poder utilizar la clase TextView, clase que nos permite generar en la Vista un objeto de texto, si has programado aplicaciones gráficas antes con Java, GTK, Qt o algo parecido conoceras un Label, esto es los mismo pero no igual xD.
Lo otro que agregamos fue la creación del TextView: TextView tv = new TextView(this)
Aquí hemos instanciado la clase TextView dejandola en nuestro objeto tv, el argumento del constructor de TextView es una instancia del objeto “Context” que no es mas que un enlace al sistema, la clase Activity nace de Context.
Ahora le indicamos a nuestro objeto tv que texto queremos que despliegue: tv.setText(“Hola Mundo!!!!”);
Ahora conectamos el TextView a la pantalla (es como el show() de GTK o Qt): setContentView(tv);
Ahora ya podremos ejecturarlo y ver resultados, para esto seleccionamos Run > Open Run Dialog que nos mostrara un nuevo cuadro de dialogo, aquí buscamos el elemento Android Application y hacemos doble click para que nos muestre un nuevo elemento New_configuration, en el espacio de texto ingresamos algo que ayude a identificar a la aplicación, por ejemplo “Hola Mundo!!!” y seleccionamos nuestro proyecto con el botón Browse, aquí el plugin buscará todas las Activiy presentes en nuestro proyecto, selecciona del combo box la Activity principal (en este caso la única) y presionar Apply. Ahora solo queda presionar el botón RUN, para que se active el emulador de Android, una vez iniciado se verá nuestra aplicación, algo parecido a esto (puede variar dependiendo de la versión de Android SDK instalada)

Ya hemos dicho nuestras primeras palabras como Androide… algo feas pero son las primeras, todo padre debe sentirse orgulloso de este momento.
Para el proximo post (espero no espaciar tanto los tiempos entre post) veremos como modificar la UI por medio de XML para que se vea algo mejor.
Comentarios, criticas, quejas, dudas, donaciones, adulaciones, odios y otros en los comentarios xD
Saludos
Comenzando con Android III
Bueno, en el post pasado comenzamos a conocer las partes de un programa escrito para Android, hoy continuamos con esto hablando de qué es un IntentReceiver.
Un IntentReceiver puede ser usado cuando se desea que la aplicación se ejecute como respuesta a cierto evento, por ejemplo una llamada, o a cierta hora. Este tipo no crea UI, pero pueden utilizar el NotificationManager para comunicarsele al usuario que ocurre algo. Los IntentReceiver deben ser registrados en el archivo AndroidManifest.xml, pero también pueden ser registrados de manera automática por el propio programa haciendo uso de Context.registerReceiver() función que permite registrar en el archivo AndroidManifest.xml nuestro nuevo IntentReceiver. La aplicación que se diseñe no debe estar necesariamente corriendo para que los IntentReceiver puedan ser llamados, estos son llamados por el sistema inmediatamente cuando el evento dado ocurre.
Otro punto son los Service o servicios, estos son una aplicación que se mantendrá activa por un largo tiempo sin generar UI alguna, por ejemplo, una aplicación para reproducir música desde una lista. En este caso, esta aplicación podría iniciar un servicios y reproducir la música sin manipular la pantalla dejando el campo limpio para otra aplicación. Es posible comunicarse con un Service dado utilizando el método Context.bindService() que incluso “despierta” al servicio dado en caso de que no esté corriendo, la comunicación depende de la interfaz que el servicio entregue.
Y por último, Proveedor de contenidos:
Un ContentProvider es una clase que implementa un conjuto estándar de métodos para que otras aplicaciones alamacenen o recuperen cierto dato. A difierencia de una base de datos que use la aplicación el ContentProvider permite compartir esta información.
Comenzando con Android II..
( Este post es la segunda parte.. el primero lo puedes leer aqui )
Ya sabemos que para poder desarrollar para Android, debemos conocer Java, bueno, Java es un lenguaje de programación orientado a objetos, a diferencia de C++ (por ejemplo), Java tiene un modelo de objetos más simple y elimina algunos errores probocados por el uso de herramientas de bajo nivel (como los punteros).
Mas información en Wikipedia.
(Comentario propio sin anismo de pelear ni nada, solo mi opinión: A pesar de todas las bondades que se dicen de Java, a mi no logra convencerme, a pesar de ser muy usado, ya que a pesar de ser poderoso, me parece que desperdicia recursos, y es “sucio” para programar, a pesar de eso……)
Toda aplicación, consta de ciertas partes que construyen el “esqueleto” para poder entregar el funcionamiento que deseamos, en este caso, el Android SDK nos entrega algunos bloques necesarios para construir una aplicación.
Una aplicación Android se construye a partir de combinar ciertos bloques, Activity, IntentReceiver, Service y ContentProvider, pero obviamente una aplicación no necesita utilizar todos estos componentes.
Actividad:
Una actividad o activity es el bloque central de una aplicación Android, es el bloque más usado. Una actividad representa una pantalla individual de la aplicación. Cada actividad que nuestra aplicación tendrá, se crea desde una clase padre “Activity” (por medio de herencia), así cada clase que creamos despliegua una interfaz de usuario compuesta por Vistas (Views) y que responde a eventos. Lo normal es que creemos aplicaciones que consten de varias pantallas, cada una de estas pantallas debe ser implementada como una Actividad.
Android utiliza una clase especial, “Intent” que permite moverse de una pantalla a otra.
La estructura de datos de un Intent consta de dos partes importántisimas, la acción y los datos sobre los que actuará. Los típicos valores para la acción son “Main”, “View”, “Pick”, “Edit”. Los datos se representan como una URI.
Existe una clase relacionada llamada “IntentFilter“, esta es una descripción de lo que intenta hacer o recibir una Actividad. Los IntentFilter de la Actividad son declarados en el archivo AndroidManifest.xml.
Para que nuestras aplicaciones puedan navegar de pantalla en pantalla, se ejecuta una resolución de intentos. Por ejemplo, para iniciar la navegacion (o navegar hacia adelante), la Actividad correspondiente llama al método startActivity(miIntent) provocando que el sistema revise todos los IntentFilter que conoce y ejecuta aquellas Actividades que tenga como IntentFilter a miIntent. Ahora la nueva actividad es informada del Intent causando que se inicie.
Una Actividad puede reutilizar funcionalidades de otros componentes o puede ser reemplazada en cualquier momento por una nueva Actividad que tenga un IntentFilter equivalente
Eso por ahora.. corto y preciso… en los siguientes posts veremos los bloques restantes IntentReceiver, Service y ContentProvider.
Tags Technorati: Android, Programación

Comenzado con Android en Archlinux.. Primera Parte
Bueno, este es un intento de post (y espero que sea una serie de post) con mi experiencia sobre como comenzar a desarrollar aplicaciones para Android utilizando mi distro favorita… ArchLinux..
La idea es ir poniendo aqui mis impresiones sobre el desarrollo de aplicaciones para Android (si no sabes que es Android… ¿en que mundo vives? ) a medida yo mismo voy aprendiendo… Si bien no me gusta Java (que es principalmente el lenguaje para desarrollar aplicaciones Android), me veo en la obligacion de aprender para poder desarrollar algo interesante.. y que mejor que para dispositivos móviles que tienen un S.O libre… (aunque no estaría mal desarrollar para Maemo también xD)… Se que existe el Android-NDK que permite desarrollar utilizando C/C++ (que me gusta mucho más) pero no he encontrado mucha documentación para generar un ambiente de producción, es decir, para el Android-SDK basta con instalar eclipse, el sdk y un plugin para eclipse… para el NDK no tengo indea xD.
Bueno.. al grano, lo primero es instalar el Android SDK en nuestro pc, para esto:
$ yaourt -S android-sdk
Luego tenemos que instalar eclipse (al que no le guste.. puede utilizar NetBeans aunque el plugin para android no esta tan desarrollado)…
# pacman -S eclipse
Bueno aqui es donde comenzaron mis problemas.. se supone que hay que instalar el plugin android para eclipse (en AUR eclipse-android) pero este me dio problemas, asi que tuve que instalarlo directamente desde eclipse… Para esto primero es necesario instalar otros plugins para hacer funcionar a android…
$ yaourt -S eclipse-wtp-wst
Ahora ya estamos listos… Iniciamos eclipse y vamos al menu Help->Install New Software, se nos abrirá una ventana y añadimos https://dl-ssl.google.com/android/eclipse esto nos mostrará lo que podemos instalar.. le damos a todo y seguimos las instrucciones..
Ahora que ya está todo instalado solo faltan algunas configuraciones… Menú: Window->Preferences->Android aquí debemos indicar la dirección del SDK (/opt/android-sdk ) y ya estamos listos para comenzar a trabajar…
En el siguiente post ya comenzamos con algunas cosas de programación para el dispositivo…
Saludos.
[SW] SSHMenu
SSHMenu es un applet para el panel de Gnome que permite gestionar fácilmente las conexiones SSH a todos tus servidores… con un simple par de clicks… (Para los que dicen que GNU/Linux y sus herramientas son complicadas…
)
Cada opción del menú abre una nueva sesión SSH en una terminal, se pueden organizar grupos de conexiones en diferentes submenús, incluso puedes configurar distintos perfiles de terminales…
Para instalarlo puedes descargarlo desde el sitio oficial
o descargarlo directamente (sitio oficial)
Recomendados I….
Primera entrada de esta sección…
Los destacados de esta semana:
- Manzana Mecánica nos cuenta sobre Vala: Alternativa a C# un lenguaje creado para desarrollar en la plataforma GNOME que genera librerias compatibles con C y tiene sintaxis parecida a C#.
- Python y Ruby son mas divertidos!!! según nos muestran en VivaLinux!
- En cactus digital nos cuentas datos estadísticos sobre el corazón de nuestro pinguino.
- FayerWayer nos muestra trabajo Chileno.. OhMyGeek podcast, además de mostrarnos una de las investigaciones de IBM… chips de ADN
- bit-tech (Inglés) habla sobre WebGL, la tecnología 3D que llegará a nuestros browsers.
- Y como siempre Google no deja de trabajar.. y en Genbeta nos muestran los avances de Caffeine… el nuevo motor de busqueda del gigante.
Memoria USB y cargador de gadgets… paneles solares…
Este pendria de la empresa Zyrus es una memoria USB 2.0 que al mismo tiempo puede cargar diferentes gadgets gracias a su batería que puede recargarse con su panel solar incluído….
Quiero uno de esos… ya que te permite cargar equipos marca Samsung, LG, Nokia, Motorola, Apple, Sony-Ericson, etc….
A pesar de ser bastante pequeña puede dar a la batería de tu celular un promedio de 100 minutos en tiempo de conversación…
Esta unidad biene en modelos negro o blanco y de capacidades de 2,4,8 y 16 GB.
Pero como siempre algo malo… por ahora solo está disponible en Corea a aproximadamente 23 dólares para la versión de 2GB….
Visto en FayerWayer


Por este.. cambiaría mi ipod Touch altiro!!!
Hablo del Creative Zii Egg.. un reproductor multimedia basado en Android!!!!…

Sus caracteristicas son:
- Reproduce vídeos a 720p y 1080p, tiene salida HDMI y cable compuesto
- Soporta H.264, MPEG 1/2/4, WMV/VC-1
- Pantala 3,5” con resolución 320×480 y 16 millones de colores
- Pantalla multitáctil… hasta 10 puntos
- Pantalla como la del iTouch.. Capacitiva
- 2 cámaras, una trasera HD que graba video y otra frontal VGA
- 32GM internos ampliables a64GB con tarjetas SDHC
- GPS, Wifi 802.11/bg y Bluetooth 2.1
- USB 2.0 mini B
- Altavoces y micrófono
- 256MB de Ram Mobile DDR
- Procesamiento de audio X-Fi
- Aceleración 3d por hardware, Compatible con OpenGL ES
- Android o Plaszma como S.O.
- Acelerómetro de 3 ejes
- Sensor de luminosidad
- Texto a voz integrado
- Bateria ion-litio de 1200mAH
Todo esto por 199 dólares al por mayor o 399 dólares de manera unitaria…….
Quiero 20!!!!
Si no fuera por C…
“Si no fuera por C, estaríamos escribiendo programas en BASI, PASAL y OBOL.”
Visto en MundoGeek








Se dice en…