Tema Licencias

Started by dracks, April 10, 2012, 07:38:56 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

dracks

Hola Xicos,


No se si los mas antiguos del lugar se acordaran de mi, yo si que me acuerdo de algunos de ellos, de hecho en este foro casi no llegue a tener actividad, coincidio bastante con mi cambio de vida, y desaparición de estos lares, aunque he conservado algo de contacto con splinter, y le pregunte el tema que voy a preguntaros a vosotros a el.




Os explico, he hecho un lenguaje de programación, (weno, esta en fase pre-alpha, pero funciona), gracias a una assignatura de la universidad, y tengo el compilador y la maquina virtual operativa, pero me gustaria publicar el código fuente con alguna licencia para código abierto, como por ejemplo GPL, pero no tengo muy claro hasta que punto es la mejor para esta situación, ya que me gustaria que se pudiesse usar para software con copyright y se que las GPL son un poco cabroncitas en este tema,




Que me aconsejais?




Atentamente,
Dracks


P.D.: En el foro de divsite mi psuedonimo era Drack
la violencia és el ultimo recurso de los incompetentes.

Currar és malo para la salud.

KeoH

Hola!, pues yo la verdad no tengo mucha idea del tema, pero podrías pensar en la licencia Zlib ( se llama así?) q es la q tiene Bennu, igual te sirve xD

FreeYourMind

La licencia la pones tu, te creas un pequeño texto con la licencia donde pones todo lo que se puede y no se puede y listo.

Erkosone

Tu decides como bien te han dicho, puedes tener en cuenta una licencia llamada 'MIT' que suele funcionar bastante bien, que deja bien claro que no asumes ninguna responsabilidad sobre los daños que pudiera causar el programa o sus derivados y que es completamente gratuita y se puede usar para uso comercial.


Puede que te sirva la 'MIT', aunque hay muchas alternativas claro, es mirar la que mejor se adapte a tu caso.




gecko

Aca hay un articulo interesante que resume varias licencias: http://www.zdnet.com/blog/burnette/how-to-pick-an-open-source-license-part-2/131

( y por las dudas tambien paso la parte 1, que ayuda a elegir una licencia de acuerdo a unas preguntas: http://www.zdnet.com/blog/burnette/howto-pick-an-open-source-license-part-1/130)
Torres Baldi Studio
http://torresbaldi.com

dracks

Gracias a todos,


Si, se que en el fondo con poner permito esto esto y esto, y no esto y no lo otro, tendria suficiente, pero teniendo en cuenta la gran variedad de licencias, sinceramente prefiero mas escoger una que lo haya redactado alguien mas conocedor de este tema que no yo.


Seguire mirando el hilo este para que si teneis algunas propuestas o consejos mas, lo comenteis.




Dracks.
la violencia és el ultimo recurso de los incompetentes.

Currar és malo para la salud.

JaViS

Yo hice un framework en PHP (para los curiosos) y la licencia que mas me gusto es la MIT, es la mas permisiva de todas.
Working on Anarkade. A couch multiplayer 2D shooter.

SplinterGU

javis, mire tu enlace, pero no me queda claro que es, un framework para que? que provee tu framework? para que sirve?
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

dracks

Vale,


Ya lo tengo publicado, de momento bajo licencia MIT, Aunque me he dado cuenta que alguna de las herramientas que uso son GPL, y no se que conseqüencias puede tener. (Y hay algun fitxero que por plantilla se creo con licencia GPL, serà question de ir arreglando estas cosicas)


Ya os aviso, lo hize màs que nada para amprender, aunque con una idea clara, de momento solo permite usar algunas funciones del String, de los Booleanos e Integers (o sea sin listas ni arrays ni Floats, ni nada más) però funciona y es bastante modular.


https://github.com/Dracks/Obj-Fenix


Si quereis dar vuestra opinion, la leere.


Dracks
la violencia és el ultimo recurso de los incompetentes.

Currar és malo para la salud.

JaViS

Quote from: SplinterGU on April 11, 2012, 01:32:28 PM
javis, mire tu enlace, pero no me queda claro que es, un framework para que? que provee tu framework? para que sirve?


No problem, te cuento:


Mi framework es para hacer sitios webs en PHP utilizando el patrón de diseño MVC (Model View Controller)


Provee varias clases para resolver problemas comunes en el desarrollo web, pero por sobre todas las cosas las soluciones principales son:



       
  • Un Router: que se encarga de dirigir cada URL de la aplicacion a su correspondiente clase/metodo
  • Clases de templates: para generar la salida en HTML
  • Un ORM: para la transaccion de datos entre objetos y base de datos.
Ya se que no tiene nada que ver con el tema del foro, por eso no quiero entrar mucho en detalles, pero si alguien esta interesado le puede pegar una ojeada a la doc (https://github.com/javis/linxphp/wiki) pero la verdad es q hay que tener un poquito de idea en MVC para entender mejor de que se trata.




Quote from: dracks on April 11, 2012, 08:08:34 PM

Si quereis dar vuestra opinion, la leere.


Dracks


Me parece una idea genial, de hecho, lo que mas hecho de menos en Bennu es la orientación a objetos (por la herencia y el encapsulamiento mas que nada). De hecho vengo pensando hace tiempo en publicar un whitepaper sobre como creo yo que se deberia implementar OOP en estos lenguajes :P


Exitos con tu proyecto!

Working on Anarkade. A couch multiplayer 2D shooter.

SplinterGU

gracias javis, pero explicame por ejemplo de que forma tu framework ayudaria (o me beneficiaria en usarlo) en la construccion de mi aplicacion web (a nivel comercial).

estoy pensando si podria mostrarselo a mis socios que trabajan en tecnologias webs.

a ver, vendeme tu producto... (vendeme en sentido figurado, me refiero a como me convencerias de usarlo... imagina que tenes que venderselo a alguien y describis los beneficios que me aportaria usarlo.)
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

JaViS

Quote from: SplinterGU on April 12, 2012, 04:30:09 AM
gracias javis, pero explicame por ejemplo de que forma tu framework ayudaria (o me beneficiaria en usarlo) en la construccion de mi aplicacion web (a nivel comercial).


Ah bueno, viene por ese lado.


Habiendo ya tantos frameworks PHP, y sobretodo algunos con unas comunidades tan grandes, yo creo que la respuesta a la pregunta de porque usarlo es basicamente la misma de porque hice otro Framework mas.


Hay dos razones principales: la complejidad y el ORM.


Con la complejidad me refiero a que los frameworks existentes, sobretodo los mas populares (CakePHP, Codeigniter, ni hablar de CMSs como Drupal, etc) se volvieron muy complejos con el tiempo, hasta confusos y diria yo hasta que los desarrolladores perdieron el camino en un punto y empezaron a complicarle la vida al desarrollador en lugar de ayudarlo. Hay varias cosas que me molestan de los frameworks actuales:



       
  • Scripts de instalación: Cuando te bajas un framework lo siguiente que tenes que hacer para empezar a usarlo es instalarlo.
    Hay veces que se instalan directamente por web, como Wordpress o Drupal, pero hay varios que se instalan desde un comando en consola (WTF) como Simphony.
    Cuando se trata de CMSs en donde tenes una estructura de base de datos ya definida tiene sentido crearla al principio (y solo en este caso), pero ademas de eso, los frameworks configuran aspectos variables de tu aplicacion, como el path en donde estan instalados, haciendo, por ejemplo, que cuando quieras mover tu aplicacion de servidor sea un dolor de huevo.
    Esto no tiene sentido, lo que estas instalando son justamente scripts de programación, deberían ser perfectamente capaces de detectar en donde estan parados y hacer todas las configuraciones en tiempo real.
    Mi framework no tiene instalación. Mover tu aplicación es tan facil como copiar y pegar la carpeta. Inclusive, si detecta que hay tablas faltantes de BD, las crea en tiempo real.
  • Modificación en la forma en que PHP funciona: Un programador en PHP ya sabe como funciona PHP, sabe, por ejemplo, que los parametros de url vienen en la variable global $_GET, que los formularios estan en $_POST, y que las variables de sesion se encuentran en $_SESSION. Muchos frameworks parecen pensar que esto no esta bien, te sobrescriben el valor de estas variables, en algunos casos las borran, o inclusive proveen metodos de sesion diferentes aunque con mas limitaciones (como es el caso de CakePHP)
    El objetivo de mi framework es no ser obstrusivo. Vos usas PHP de la forma en que aprendiste a usarlo, no hay cosas raras que aprender, ni comportamientos inexperados.
  • Librerías y código innecesarios: Muchas veces a estos frameworks le acompañan muchas librerías que terminan no siendo usadas por la aplicación, o que a veces no tienen ni siquiera sentido de existir. Pongamos por ejemplo, los engines de templating. PHP tiene una sintaxis alternativa, con el objetivo de ser amigable con los templates, no hay porque crearle al programador la necesidad de aprender una sintaxis nueva o leer documentación sobre como hacer algo tan simple como imprimir una variable o hacer un bucle, como es el caso de Smarty.
    En mi framework busco solucionar solamente la arquitectura MVC de la aplicación y darle un par de clases que creo imprecindibles para el framework. El resto a criterio de cada uno.
Con respecto al ORM, he pasado un buen tiempo buscando uno que me gustara para PHP. Hay muchisimos, muy variados, todos diferentes. Ninguno me gusta XD


Yo tengo mi propia idea de como un ORM debería ser, formada luego de pasar por diferentes lenguajes y luego de haber usado diferentes herramientas. Mi objetivo es la simplicidad, siempre. Es por eso que decidi empezar de cero y escribir uno.


Personalmente creo que el componente mas importante y atractivo del framework es el ORM. Creo que he logrado diseñar algo muy bonito de usar y ver. Inclusive estoy pensando en hacerlo un proyecto independiente en el futuro, para que pueda ser usado en otros frameworks.


Lo lindo de mi capa de base de datos pasa por la forma de diseñar los objetos y sus relaciones, utilizando YAML en los comentarios de cada propiedad. La última versión posee soporte a cache para mejorar la velocidad de la aplicacion entre un 40 y 50% sin afectar la integridad de los datos (todavia lo tengo que documentar).


Bueno, esas son mis razones porque lo hice, y creo que son las mismas que le daria a cualquiera para usarlo. Aunque claro, es completamente subjetivo y depende de las necesidades de cada uno :)



Working on Anarkade. A couch multiplayer 2D shooter.

dracks

Quote from: JaViS on April 12, 2012, 01:52:18 AM
Me parece una idea genial, de hecho, lo que mas hecho de menos en Bennu es la orientación a objetos (por la herencia y el encapsulamiento mas que nada). De hecho vengo pensando hace tiempo en publicar un whitepaper sobre como creo yo que se deberia implementar OOP en estos lenguajes :P


Exitos con tu proyecto!


Thanks, si es algo que comenzo con otro conocido de divsite, de hecho, nuestra idea era definir el lenguaje y no hacer nada mas, pero al final yo me lie y termine entregando el compilador como pràctica de una assignatura.


Si tienes tiempo libre y quisieras colaborar, te invito a que colabores, aunque antes de esto deberias apuntar tus ideas de como lo harias el lenguaje, ya que si no tendrias influencia.


Al igual que si hay alguien mas que pueda estar interessado.


Dracks.
la violencia és el ultimo recurso de los incompetentes.

Currar és malo para la salud.

FreeYourMind

Felicidades, por la estructura (no he mirado todavia nada del src) ya m parece un trabajo brutal!