Little Continuous Integration with Growl Notifier 2

Posted by Fernando Meyer on November 19, 2007

Are you tired to run ant scripts and wait for tests results whenever you change some source file? Yes, me too, basically I got autotest’s idea for ruby and Did it work for ant as well. Continually runs tests based on files you’ve changed improving feedback with a fancy Growl alert.

If you are a Java developer and works with ant (on mac of course) check out my bash script( and avoid cruise control for little stuf ) **see update

Change all images paths on the script, put the script in your project folder and execute it

remember you need unit tests to use this script properly.


If you have some idea on how to improve it, let me know

** now hosted at github

git clone git://github.com/fmeyer/autotestmac.git

Antlr Lecture at Conexao Java 2007 3

Posted by Fernando Meyer on November 12, 2007

As I promised at CJ2007 I’m uploading my slides and demo code from my ANTLR lecture. I got really surprised about people’s interest in ANTLR, compiler theory and DSL in general.

You can import the demo in both eclipse or Intellij (or use maven to generate your own ide config). to run the code without an ide just unpack and execute the runconsole.sh you can set variable’s values ex:

x=1

y=2

And execute some expression using these predefined variables ex:

3*(x-y)*(x/y)

when you finish to input your expression just press ctrl+D on unix or ctrl+Z on windows ( EOF char ) to execute it
ps: Thanks to Danilo Sato to help me figure out a Grammar ambiguity, my approach wasn’t the optimal solution to resolve the problem.

*Update, Sami Koivu just sent me the pictures from my lecture,

Explaining the compiler process

Explaining the compiler theory

 

 

Hands on

Hands On

 

 

 

The antlr grammar as itself

The Antlr Grammar file as itself

Drools DLS sample

Drools Sample DSL

JBoss Drools 4.0 Released

Posted by Fernando Meyer on July 25, 2007

JBoss Drools 4.0 has just been released. We are really proud of what we have done here. We believe that we now have the best and most powerful declarative rule language, bar none; commercial or open source. The Rule Flow is excellent and I really enjoyed updating the Conway’s Game of Life to Rule Flow; sub Rule Flows and milestone support will be coming in a point release soon. The BRMS has long been requested and we put a lot of effort into the ajax based design. The Eclipse improvements for the debug points and guided editor should help reduce learning curves, opening us to new audiences. Of course performance is now much better, especially for complex rules and the new Sequential Mode should be very popular with decision services.
Enjoy :)
The Drools Team
Mark Proctor, Michael Neale, Edson Tirelli, Kris Verlaenen, Fernando Meyer
http://blog.athico.com

My Books arrived 2

Posted by Fernando Meyer on July 18, 2007

CIMG2736.JPGMy books from amazon arrived (with nice gifts from New York redhaters) yesterday. I spend about 2 hours reading some random pages and I can drop some lines about:

The IA book, I studied with the same book at university. so I just ordered to get the new 2002 version, but the mother… nice seller sent me the outdated 95’s version.
Principles of the Business Rule Approach, this book is a nice introduction to business rules, it explains all concepts in the natural way, some step-by-step topics are very interesting to figure out the more complicated rules concepts.
Jess in Action - that’s another book which you must have in your library, but don’t seize at it (try drools instead)
Expert Systems: Principles and Programming - That’s certainly the most advanced book I’ve ordered, so I must dive/read/assimilate more to write a good review.

    I think that’s a good start.

Interesting links for today

Posted by Fernando Meyer on July 17, 2007

Open source JBoss Rules gains speed

http://www.infoworld.com/article/07/07/16/jboss-rules_1.html

JBoss also extends business rules engine to nonprogrammers, adds MVEL language support

Essencial Drools blog reading

http://markproctor.blogspot.com/2007/07/essential-drools-blog-reading.html

Special tips building and debugging GWT based UI on Fedora Core 6

Posted by Fernando Meyer on May 04, 2007

When launching Google web toolkit you get this error, org.eclipse.swt.SWTError: No more handles (java.lang.UnsatisfiedLinkError?: mozilla-1.7.12/libxpcom.so: Can’t load IA 32-bit .so on a IA 32-bit platform)

FC6 has libstdc++.so.6.0.8 out of the box. Many times yum is smart enough to get the “compat” version of a lib when a newer one is installed, so I rolled the dice and tried:

yum install libstdc++.so.5

When launching the Eclipse debugger you get this error,
ERROR: transport error 202: gethostbyname: unknown host “transport.c”,L41?
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510) “debugInit.c”,L500?

To correct the problem, just add the following line to /etc/hosts :

127.0.0.1 localhost

Probably it will be useful for you, as was for me.

Good bye bloglines, hello Vienna. 2

Posted by Fernando Meyer on January 11, 2007

I’m changing my default RSS reader from the web-based bloglines to Vienna, a rss reader for Mac OS X, Vienna keeps following RSS feeds simple and functional with smart folders, groups, an integrated browser and item flagging. It’s the perfect tool for offline readers like me.

ps: Yeap, I’m having some problems to get an internet connection here in Colombia; (sic)

Linux Kernel in a Nutshell is now Creative Commons: free pdf download

Posted by Fernando Meyer on January 10, 2007

Written by a leading developer and maintainer of the Linux kernel, Linux Kernel in a Nutshell is a comprehensive overview of kernel configuration and building, a critical task for Linux users and administrators.The book is available for download in either PDF or DocBook format for the entire book, or by the individual chapter.

To quote of the book’s author:

If you want to know how to build, configure, and install a custom Linux kernel on your machine, buy this book. It is written by someone who spends every day building, configuring, and installing custom kernels as part of the development process of this fun, collaborative project called Linux. I’m especially proud of the chapter on how to figure out how to configure a custom kernel based on the hardware running on your machine. This is an essential task for anyone wanting to wring out the best possible speed and control of your hardware.

http://www.kroah.com/lkn/

Firefox is crashing on my macbookpro 1

Posted by Fernando Meyer on January 08, 2007

I don’t know why but it’s happening, every time when i open a second gmail tab my Firefox crashes

Exception: EXC_BAD_INSTRUCTION (0×0002)
Code[0]: 0×0000000d
Code[1]: 0×00006e64

Thread 0 Crashed:
0   libSystem.B.dylib                  0×90029ae5 _longjmp + 37
1   <<00000000>>     0xc00101dd 0 + -1073675811

I was looking for some similar bug at firefox bugzilla but, I didn’t found anything about it. That isn’t the unique problem, I’m coding a web interface to access and test some Webservices, then I discovered another bug: div element with visibility:hidden still show scrollbars, I couldn’t reproduce the problem on Firefox running over Win32 with the same html file, so I think that’s a bug.

Berkeley e-classes for your IPod 2

Posted by Fernando Meyer on January 07, 2007

Last April, UC Berkeley, one of the premiere schools in the United States, announced its plan to put complete academic courses on iTunes. Fast forward nine months, and you can already find 59 full courses ready for your iPod. Simply click here to access Berkeley’s iTunes site (or here for the Rss feed).

No matter where you live, you can access at no cost the very same courses attended by students paying full tuition. And, given the critical mass of courses being offered across a range of disciplines, you can put together your own personalized curriculum and expand your horizons on the fly.

That’s include interesting computer’s science coursers like, CS 162 - Operating systems and System programming and CS 61C - Machine Structures. You can listen this podcast and forget about these classes in university (but I think that your teacher will not appreciate)