Recientemente he estabilizado desarrollos de una importante biblioteca de código abierto escrita en Java. Luego publiqué un artículo del lado del servidor, que me brindó una gran cantidad de comentarios positivos (pero también críticos, constructivos). Y un primer colaborador, ¡que es genial!Mi biblioteca de código abierto se está estabilizando. Ahora, ¿cómo llamar la atención?
- Ver el artículo aquí: http://www.theserverside.com/discussions/thread.tss?thread_id=61162
- Y la biblioteca: http://jooq.sourceforge.net
Así que con todo eso una buena retroalimentación, que tienen una gran sensación de mi proyecto, de manera que estoy creando algo útil y original. Algunas ideas clave detrás de mi proyecto, y por qué creo que es original:
- Es un mapeador. OK, ahora que realmente no es original ... ;-)
- Tiene generación de código en él. OK, todavía no es original. Pero eso siempre es bueno.
- Permite crear consultas de tipo seguro en Java utilizando su propio lenguaje específico de dominio. Eso es mejor. Sin concatenación de cadenas. JPA acaba de copiar recientemente consultas de criterios de Hibernate.
- Permite hacerlo con todas las funciones de SQL, incluidas combinaciones complejas, selecciones anidadas, uniones, alias, etc. Ahora que me parece original. Los OR-mappers tienden a tratar de ignorar el modelo de datos relacionales detrás de RDBMS.
- Admite todo tipo de funciones nativas no estándar, como UDT, procedimientos almacenados, funciones nativas, etc. No conozco ningún mapeador ni eso lo hace.
Creo que estas ideas clave son útiles para un tipo de desarrollador muy específico. Ese desarrollador específico
- interfaces Java con enormes bases de datos heredadas.
- sabe bien SQL y quiere usarlo extensivamente. No desea aprender ningún idioma nuevo (HQL, JPQL, etc.
- quiere poca abstracción sobre SQL, porque su software está estrechamente relacionado con su base de datos. Algo que creo que los chicos de Hibernate o JPA parecen haber ignorado.
- EDIT: necesita una biblioteca fuerte pero liviana para el acceso a la base de datos. Por ejemplo, cuando se desarrollan para dispositivos móviles (vea el comentario de SRM).
Ahora es el comienzo del arduo trabajo. ¿Cómo llamar la atención? ¿Cómo puedo alcanzar una multitud más grande? ¿Cómo puede mi proyecto ser relevante? ¿Cómo llegar a ese "tipo específico de desarrollador"?
Bueno, mi atención atravesó las preguntas de stackoverflow. : p BTW: ¿Admite Jooq las sugerencias de Oracle? Tenemos bases de datos que tienen varios TB con tablas que tienen millones de registros. Algunas consultas realmente necesitan sugerencias de Oracle para funcionar bien. –
@Fatal: A petición popular, he agregado soporte para sugerencias de Oracle, tal como se documenta aquí: https://sourceforge.net/apps/trac/jooq/wiki/Manual/ADVANCED/OracleHints. Actualmente, la sugerencia solo se admite para las sentencias 'SELECT'. –
Se siente como que debería estar en un sitio diferente, pero no estoy seguro de cuál. –