Fork me on GitHub

Mar 26, 2007

A proposal update

Email: igfgt1@gmail.com
IM's: igfgt1@gmail.com, igorgue@irc.freenode.net, igorgue@irc.gnome.org
Home Page: http://igordevlog.blogspot.com/
Personal Experiences:

I been working with Linux since 2003, and develop mono application since 2005, using C# and Visual Basic.NET to write some properties application for my school and others educational institutions, using GTK#, Windows.Forms and ADO.NET.

I'm familiar with the opensource develop way, I've use SVN, Bugzilla, Eclipse as a principal IDE but I already use Gedit and VIM for almost all my work, also I worked as an local internship on my country developing rich web applications using the the Cocoon java web application framework, I used to work with a Apache Foundation
Member(Antonio Gallardo), the applications we wrote where properties applications but we follow the open source methodology to write these apps and only use open source tools to write these apps.

Skills:

I have experiences with these programming languages or platforms:
.NET(C#, VisualBasic with Windows Forms, ADO)
Mono(C# with GTK#)
Java(Cocoon, Swing)
Python(Django, PyGtk)
Gnome(Glade and of course GTK+)
C/C++(GTK)
AJAX
XUL

Task:

Test banshee: This will take some days but have to be done rigth in order to all the
port be done.

Clean the code: Remove some part of banshee code that according to the tests cannot be used.

Write the UI: This should be very simply and quick consider that we have only 600x400 pixels of screen available and must have a great menu using hildon libraries, that are included on the maemo-sharp, also if something miss then I will write it, the hildon menu have to be capable to manage the database(import audio tracks), change a radio(for the radio plugin), change the general preferences and the lastfm plugin preferences.

On the general UI this have to be a browser because handle a big music librery on the N800 can be a pain, I will have to develop a UI that shows filters, by artist, album and gender like a general menu, if gender is selected this have to show the artist of that gender, if artist is selected BansheeN800 have to show the albums of that artist, and if the album is selected have to show a playlist with the music tracks.

Write some Plugins: In Banshee everything is about plugins, my plan is to port some plugins so the Banshee functionality can be better on Maemo this plugins are Internet Radio, lastFM and the recommendation plugin(on this case, the UI have to change, I will write a new UI for this that will be like the Gmail sponsors links).

Time dedicated to the task:

My plan is to code 4~6 hours 5 days a week

Roadmap:
The GSoC program take 12 weeks so I gonna split the work on weeks.

Test and make run Banshee: 1 Week.
Write the general UI with the filters: 5 Weeks
Code the helidor menu: 2 Weeks
Write the new UI for the plugins: 2 Weeks
Write configuration windows: 2 Weeks

Mar 21, 2007

My application to Google Summer of Code

Before I send my application to Google I posted here:

Application:

Maemo is a platform for portable device like the Nokia NSeries, is powered
by Linux so many applications can be written with this platform. Using Maemo
trough Scratchbox the maemo platform can be emulated, and using one of the
devkits can be a powerful development platform.

My task is to port Banshee to the Maemo platform so banshee can be used on
the Nokia N800 and the N770. But Banshee is writhed to run on personal computers
with a bigger screen resolution than Internet Tablet, so the UI for Maemo
is now Unusable.

The others Banshee libs should just works but has to be tested. So my task
can be only write a new UI or fix some of the libs to work property on Maemo.

Personal Application:

Email: igfgt1@gmail.com
IM's: igfgt1@gmail.com, igorgue@irc.freenode.net, igorgue@irc.gnome.org
Home Page: http://igordevlog.blogspot.com/
Personal Experiences:

I been working with Linux since 2003, and develop mono application since 2005
Using C# and Visual Basic.NET to write some properties application for my
school and others educational institutions, using GTK#, Windows.Forms and ADO.NET.
I'm familiar with the opensource develop way, I've use SVN, Bugzilla, Eclipse as a principal IDE
but I already use Gedit and VIM for almost all my work, also I worked as an
local internship on my country developing rich web applications using the the
Cocoon java web application framework, I used to work with a Apache Foundation
Member(Antonio Gallardo), the applications we wrote where properties applications
but we follow the open source methodology to write these apps and only use open
source tools to write these apps.

Skills:

I have experiences with these programming languages or platforms:
.NET(C#, VisualBasic with Windows Forms, ADO)
Mono(C# with GTK#)
Java(Cocoon, Swing)
Python(Django, PyGtk)
Gnome(Glade and of course GTK+)
C/C++(GTK)
AJAX
XUL

Task:

Test banshee: This will take some days but have to be done rigth in order to all the
port be done.

Clean the code: Remove some part of banshee code that according to the tests cannot be used.

Write the UI: The fun part of the port, this should be very simply and quick consider
that we have only 600x400 pixels of screen available and must have a great menu
using hildon libraries, that are included on the maemo-sharp, also if something
miss then I will write it.

Write some Plugins: In Banshee everything is about plugins, my plan is to make
some plugins so the Banshee functionality can be better on Maemo.

Time dedicated to the task:

My plan is to code 4~6 hours 5 days a week

Mar 20, 2007

Maemo Hello World!!!

Ok... I made a mono app:The code:


using Gtk;
using System;

class Test {
public static void Main (string[] args) {

Application.Init ();
Window w = new Window ("hola");

Button b = new Button ("Click me... porfavor :)!!!");
b.Clicked += delegate {

Console.WriteLine ("Hola que nota!");
// Application.Quit ();
};

w.Add (b);
w.ShowAll ();

Application.Run ();
}
}
Compilation command:
[sbox-SDK_X86: ~/MyDocs] > gmcs Test.cs -out:test.exe -pkg:gtk-sharp-2.0
(because I like Generics :-)

So... this is a small step... or a big?... never mind, just forget that.

Mar 19, 2007

Things I don't know about banshee part 1


Hey WTF... jajaja I was listening some RockNica(national rock)... Mr. T is soooo funny

Mar 18, 2007

Let's write Mono apps on Maemo platform

Ok it was a pain to download maemo(because it was a lot of packages), but finally I manage to install it and play with it, let's see a screenshot:So... I think that my GSoC plan change... jeje.

Resources:
http://www.maemo.org/
http://www.mono-project.com/Maemo

Now I gonna apply for maemo port:
http://mono-project.com/StudentProjects#Banshee_Projects

Mar 12, 2007

Mi blog en ingles?

Bueno desde que empiece a escribir acerca de mi proyecto del SoC(el cual no ha sido aceptado ni empezado la aplicar) ...

Mi blog(cuando me refiera a Banshee) va en ingles ahora :D sorry a mis lectores hispanoparlantes pero ni modo.

Decidido: Google SoC project = Banshee

Bueno me decidí por Banshee realmente la gente de Django esta muy cerrada es sus ideas además de ser una gran organización la cual tiene poco chance mi aplicación de ser aceptada, claro que a ellos aparentemente no les interesa mucho una extensión a XUL forms.

Ok ahora mi proyecto: "Hacer un port de Banshee a Windows"... creo que mis conocimientos de esa plataforma y mi experiencia trabajando en un proyecto parecido bajo la plataforma .NET(claro este no hacia todas las cosas que hace Banshee).

Banshee en el Google Summer of Code please: http://banshee-project.org/GSoC2007

Mar 8, 2007

Google Summer of Code?, Django o Banshee?


o


El Summer Of Code viene ya, mejor dicho ya esta aquí:

http://code.google.com/soc/

El problema es que no se en que aplicar, Django(Django) o Banshee(Mono o Gnome)?

El punto esta en lo siguiente, yo adoro estas dos tecnologías, Django y Banshee prácticamente paso todo el día viendo código Django(Python) y de Banshee(C#, Mono), con muchas ganas de colaborar, en Banshee ya mande un parche. En Django solo he trabajado el proyecto web para la Universidad.

Django va seguro al Summer Of Code(http://code.djangoproject.com/wiki/SummerOfCode2007), Banshee quien sabe si va a estar.

Mi idea para Django: Implementar el serializador RDF y XUL-forms -> http://groups.google.com/group/django-users/browse_thread/thread/da7638815273dbcd/c0a371f9f6ebd286

Mi idea para Banshee: Unir Banshee con LastExit(http://folks.o-hand.com/iain/last-exit/ ... genial el sitio no?) por medio de un plugin de Banshee ->http://banshee-project.org/FeatureRequest

Necesito pensar y una solución para el 15 de marzo.

Mar 4, 2007

Editores HTML en Django

Una de las aplicaciones mas Matadoras de Django es precisamente la que esta incluida por defecto la famosa Admin Interface... o como yo le digo AAI(Automagic Admin Interface), realmente es genial, a todos les gusta, elegante sencilla, util sobre todo.

El unico problema es que no tiene un editor HTML respetable, lo cual sigue la filosofía de Django, pero bueno explicare como agregar uno a la AAI.

Paso 1: Descargar el editor, en nuestro caso usaremos 2 editores:

* TinyMCE (http://tinymce.moxiecode.com/)
* FCKeditor (http://www.fckeditor.net/)

El primero porque me gusta mucho y el segundo porque es muy usado y fue el año pasado posiblemente el proyecto de Sourceforge con mas lanzamientos.

Paso 2: Instalarlos en Django:

* Servir los documentos: usaremos las indicaciones de mi blog: http://igordevlog.blogspot.com/2006/11/servir-documentos-staticosjscsspngetc.html en caso de Apache es algo distinto, solo tienen que tomar en cuenta que los archivos deben ser parte del mismo dominio. En este caso serviremos "site_media" en la raíz de esta manera:

# Documentos estáticos(Development)
if settings.DEBUG:
urlpatterns += patterns('',
(r'^site_media/(.*)$', 'django.views.static.serve',
{'document_root' : 'media/', 'show_indexes': True}),
)

NOTA: esto es nuevo... así es aprendí algo nuevo porque si ponemos esto abajo de la definición de las URL... y estamos en DEBUG... agrega la URL como esta configuración es totalmente en desarrollo entonces no hay problema porque supongo que tienes activado el DEBUG.

* El contenido de "site_media" es:



* En Editores guardaremos los archivos de configuración específicos de los editores HTML y por supuesto en las otras están los editores ;)



Paso 3: Crear los archivos de configuración:

* FCKeditor:
window.onload = function()
{
// create the FCK Editor and replace the specific text area with it
var oFCKeditor = new FCKeditor( 'id_descripcion' ) ;
oFCKeditor.BasePath = '/site_media/js/fckeditor/';
oFCKeditor.ReplaceTextarea() ;
}

Donde el 'id_descripcion' es el textarea que queremos cambiar

* TinyMCE:
tinyMCE.init({
mode : "textareas",
theme : "simple"
});

Es generico cambia todas las textareas

Paso 4: Agregarlos en el Admin:

* FCKeditor:
class Admin:
list_display = ('nombre', 'descripcion')
# FCKeditor
js = ('../site_media/js/fckeditor/fckeditor.js',
'../site_media/js/editores/fck/descripcion.js',)


* TinyMCE:
# TinyMCE
js = ('../site_media/js/tiny_mce/tiny_mce.js',
'../site_media/js/editores/textareas.js',)

Por que "../" la respuesta es fácil, para el admin mace referencia a /media/....... para sus imágenes y javascript... con "../" regresamos a la raíz por lo cual se puede usar el javascript que agregamos en las urls


[FCKeditor]

[TinyMCE]

Así de fácil mejoramos la AAI ;)

disclaimer



Things written in this blog are my personal thoughts or points of view, and do not represent at all the position of my employer.

Code in the website is licensed under The MIT License

Content of this blog is:
Creative Commons License
Licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.