Bueno, para los que han tenido este problemita igual que yo, entonces encontré a alguien que sabia como arreglarlo.
En detalle es cuando cambio entre folder de Eclipse, entonces la varible ANT_HOME se queda apuntando a la vieja dirección. Y eclipse te dice “Could not find the main class. Program will exit.” cuando tratas de correr el ant :( así que ni idea de cual era el problema.
Friday, August 17, 2007
Sunday, June 17, 2007
Web Semántica
Ando detrás de Web Semántica para mi Spider implementado en Jade.
Este artículo describe muy bien aunque de forma aérea. Ahora estoy buscando la manera de implementar la búsqueda y análisis de los RDF para el Spider. También al mismo tiempo, pienso agregarle funcionalidad de lectura para los RSS creo que será más fácil el desarrollo de RSS.
Para la web semántica utilizaré Jena, el cual parece ser un proyecto muy maduro. Para RSS no se aún pero estoy viendo Commons FeedParser, pero también estoy dandole un vistazo a RSSOWL y a Informa.
También estoy buscando la manera de navegación en paginas con javascript, de tal manera que el agente pueda interactuar con estas. Para esto estoy viendo el api llamada Rhino de mozilla, o pudiera usar Chickenfoot el cual es muy potente a la hora de hacer script para automatizar la navegación.
Además estoy buscando la manera de almacenar las paginas en cache, esto es fácil de implementar.
Este artículo describe muy bien aunque de forma aérea. Ahora estoy buscando la manera de implementar la búsqueda y análisis de los RDF para el Spider. También al mismo tiempo, pienso agregarle funcionalidad de lectura para los RSS creo que será más fácil el desarrollo de RSS.
Para la web semántica utilizaré Jena, el cual parece ser un proyecto muy maduro. Para RSS no se aún pero estoy viendo Commons FeedParser, pero también estoy dandole un vistazo a RSSOWL y a Informa.
También estoy buscando la manera de navegación en paginas con javascript, de tal manera que el agente pueda interactuar con estas. Para esto estoy viendo el api llamada Rhino de mozilla, o pudiera usar Chickenfoot el cual es muy potente a la hora de hacer script para automatizar la navegación.
Además estoy buscando la manera de almacenar las paginas en cache, esto es fácil de implementar.
Saturday, June 16, 2007
Hacking Firefox: The secrets of about:config
Un artículo de un poco de hacking en Firefox, me gusto mucho, principalmente por la parte de que queda configurado para que no consuma tanta memoria de mi computadora. Aunque hay un sacrificio de rendimiento.
Thursday, June 14, 2007
5 tips para saber a quien contratar
En este blog se puede ver cuales solo los requisitos que se deberían tomar en cuanta a la hora de contratar una persona.
Por ejemplo:
- El reclutamiento es mercadeo (vende la empresa, vende el puesto)
- Confianza en el equipo (si contratas a alguien no deberías preguntarle al equipo con quien va a trabajar el nuevo?)
- No ganes con dinero (el dinero es importante pero los beneficios y el ambiente de trabajo también, debe haber un balance) tratas con personas no productos.
- Guarda espacio para las personas inteligentes (contratar a las personas por su entusiasmo por hacer lo que saben hacer puede ser aprovechado por la empresa a pesar de que la empresa no tenia esos planes, pero la persona es ideal para eso)
- Saber cuando dejar pasar. Bueno en este punto hay tres preguntas que deberías hacerte antes de contratar a una persona:
1. Quieres a esa persona en tu equipo?
2. Pasa esta persona la prueba de la cerveza? (Si te gustaría *compartir con esta persona)
3. Es esta persona apasionada, entusiasta, positiva?
Por ultimo:
* En un bar, restaurant, etc. y si aprenderias algo de esa persona de manera personal.
Por ejemplo:
- El reclutamiento es mercadeo (vende la empresa, vende el puesto)
- Confianza en el equipo (si contratas a alguien no deberías preguntarle al equipo con quien va a trabajar el nuevo?)
- No ganes con dinero (el dinero es importante pero los beneficios y el ambiente de trabajo también, debe haber un balance) tratas con personas no productos.
- Guarda espacio para las personas inteligentes (contratar a las personas por su entusiasmo por hacer lo que saben hacer puede ser aprovechado por la empresa a pesar de que la empresa no tenia esos planes, pero la persona es ideal para eso)
- Saber cuando dejar pasar. Bueno en este punto hay tres preguntas que deberías hacerte antes de contratar a una persona:
1. Quieres a esa persona en tu equipo?
2. Pasa esta persona la prueba de la cerveza? (Si te gustaría *compartir con esta persona)
3. Es esta persona apasionada, entusiasta, positiva?
Por ultimo:
Quickie Bonus Tip: No Keyword Hiring
Que significa no contrates basado en el SIGLAS de tecnologías, el explica que muchas de los mejores no pasan esta pruebas, que contradicción.* En un bar, restaurant, etc. y si aprenderias algo de esa persona de manera personal.
Wednesday, June 13, 2007
Friday, June 08, 2007
Eclipse TIPS
Una página web con buenos tips de eclipse, aquí encontré como eliminar los espacios al final de las líneas en un archivo.
http://www.newt.com/java/eclipse/
http://www.newt.com/java/eclipse/
Saturday, April 21, 2007
Mylar en Eclipse
Mylar es un proyecto que busca integrar la parte colaborativa en Eclipse, es decir su usa bugzilla ya no tienes que salir del IDE, muchos diran ya plugins para eso si pero ninguno que yo sepa hace task focus (enfoque en tareas) como lo hace Mylar :), así que Mylar no es solo integración es eso y más.
Solo tuve que ver el webinar para decir un WOW :), esta es la contribución a Eclipse más importante después del mismo Eclipse, y es mucho decir ;).
Tienen que darle un ojo a este impresionante plugin, para los que trabajan al estilo de tareas y bugs en Eclipse se sentirán aliviados :)
Solo tuve que ver el webinar para decir un WOW :), esta es la contribución a Eclipse más importante después del mismo Eclipse, y es mucho decir ;).
Tienen que darle un ojo a este impresionante plugin, para los que trabajan al estilo de tareas y bugs en Eclipse se sentirán aliviados :)
Tuesday, April 03, 2007
Problemas al ejecutar el task de JUnit de Ant en Eclipse
De seguro muchos como yo han tenido problemas al ejecutar el ant task de junit con eclipse.
..\plugins\org.apache.ant_1.6.5 de eclipse\junit.jar
Este archivo es la librería de junit la cual debe estar disponible para ejecutar el ant task.
Nota: esto es para eclipse 3.2, no se si las versiones anteriores tienen este problema.
<junit fork="true" haltonerror="false">El problema esta en que se debe agregar el archivo junit.jar al directorio:
<classpath location="${build_testclassdir}" />
<classpath refid="test.build.classpath" />
<test name="${package}.AllTests" todir="${testlogdir}">
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
</test>
</junit>
..\plugins\org.apache.ant_1.6.5 de eclipse\junit.jar
Este archivo es la librería de junit la cual debe estar disponible para ejecutar el ant task.
Nota: esto es para eclipse 3.2, no se si las versiones anteriores tienen este problema.
Eclipse subversion - Malformed network data
Bueno en este blog encontré la solución al problema del cliente de subclipse el cual tenia este error cuando se hacia el checkout de un proyecto.
Sunday, April 01, 2007
Video Tutorial de Ajax con Prototype
Un video tutorial hecho por mi :) explicando la creación de un chat utilizando ajax y java, para ajax se utiliza la herramienta archi conocida librería Prototype.
Para poder ver el video en mejor resolusión youtube
Para poder ver el video en mejor resolusión youtube
Monday, March 26, 2007
Anti-patrones en Ajax
Unos anti-Patrones que donde me incluyo haberlos utilizados para entregar rápido pero que cuestan a la hora de mantener la aplicación.
Cinco Anti-Patrones en Ajax
Cinco Anti-Patrones en Ajax
Rhino: JavaScript for Java
Para implementar la funcionalidad de ejecución de javascript en mi SearchEngine con Agentes de Jade, estuve leyendo un articulo interesante sobre Rhino que es una implementación de Javascript para java que permite scripting en aplicaciones Java. Esto es posible en Java 6 como una nueva característica, ya puedes correr PHP, Ruby, JavaScript, Python (or Jython).
Por cierto, Rhino viene integrado en Java SE 6, por lo tanto si tiene Java SE 6 ya puedes utilizar esta característica.
La características de este puedo mencionar:
Ejemplo:
Por cierto, Rhino viene integrado en Java SE 6, por lo tanto si tiene Java SE 6 ya puedes utilizar esta característica.
La características de este puedo mencionar:
- Compilación de javascript (si quiere compilar en script para un mejor rendimiento)
- Invocación de funciones.
- Acceso a recursos de Java (Puedes importar clases de java, invocar métodos y objectos de Java )
- Y lo más obvio manejo de return del script que ejecutas.
- Ejecutas el script desde hard code en java (lo cual no tendría mucha diferencia con lo que podrias hacer en java) y ejecución de script almacenado en un archivo.
- Soporte para la ejecución de PHP, Ruby, JavaScript, Python, etc dentro de Java con las características ya mencionadas. (Imaginate correr PHP en un servidor de Java EE y que puedas acceder desde PHP los objectos de java, javabean, ect.)
Ejemplo:
package org.vnssoftware;
import javax.script.Bindings;
import javax.script.Compilable;
import javax.script.CompiledScript;
import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class Scripting {
public static void main(String[] args) {
ScriptEngineManager engineManager = new ScriptEngineManager();
ScriptEngine engine = engineManager.getEngineByName("js");
engine.put("age", 21);
try {
engine.put("age", 26);
engine.put("noClaims", Boolean.TRUE);
Object result = engine.eval(
"if (age < 25){ " +
" riskFactor = 1.5;" +
"} else if (noClaims) {" +
" riskFactor = 0.75;" +
"} else {" +
" riskFactor = 1.0;" +
"}");
System.out.println(result);
// using javascript files
//engine.eval(new FileReader("c:/voting.js"));
// importing java classes
engine.eval("importPackage(java.util); " +
"today = new Date(); " +
"print('Today is ' + today);");
// using object instances passed to the script engine, and on static class members.
engine.put("name","John Doe");
engine.eval("name2 = name.toUpperCase();" +
"print('Converted name = ' + name2); \n");
// script engine implementations support script compilation
Compilable compilable = (Compilable) engine;
CompiledScript script = compilable.compile(
"if (age < 25){ " +
" riskFactor = 1.5;" +
"} else if (noClaims) {" +
" riskFactor = 0.75;" +
"} else {" +
" riskFactor = 1.0;" +
"}");
Bindings bindings = engine.createBindings();
bindings.put("age", 26);
bindings.put("noClaims", Boolean.TRUE);
bindings.put("riskFactor", 1);
script.eval();
// call individual functions defined in the script from your Java code.
engine.eval("function increment(i) {return i + 1;}");
Invocable invocable = (Invocable) engine;
Object resul = invocable.invokeFunction("increment", new Object[] {10});
System.out.print("result = " + resul);
} catch (ScriptException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
}
}
Tuesday, January 09, 2007
En busca de parseadores HTML
Estoy en busca de parseadores HTML para mi spider implementado en Jade,
encontré este HTMLParser, el cual es simple y rápido.
Ahora es más simple obtener el texto de una pagina web y la lista de enlace de esta misma.
Ejemplo:
encontré este HTMLParser, el cual es simple y rápido.
Ahora es más simple obtener el texto de una pagina web y la lista de enlace de esta misma.
Ejemplo:
String URL = "http://htmlparser.sourceforge.net";
StringExtractor se = new StringExtractor (URL);
String contents = se.extractStrings(true);
System.out.println(contents);
Subscribe to:
Posts (Atom)