Creating a domain specific language with XML-Schema and JAX-B
Here at scoyo we use the Magnolia CMS to manage our website content. It's a quite nice tool based on the Content Repository API for Java (JCR) (JSR-170). In this blog post I want to tell you a little more about a small domain specific language, which I created to manage the migration of content and configuration of our Magnolia CMS installation, using XML-Schema, JAX-B and the facilities of the CMS.
Temporal coincidence or news on maven builds
A few weeks ago I wrote a blog entry about building applications with Apache Maven and where I see the most demanding problems with Maven builds.
Coincidentally Jason van Zyl a mastermind behind the Apache Maven Project wrote a series of articles on the blog at Sonartype, which are describing the future road map of Maven 3.0.
Some thoughts about building
Over the last few days I had some thoughts about building your project. I am using Apache Maven for quite a while now. At my current employer we use Maven for all our components even our learn portal which is build entirely in Adobe Flex, using the Flexmojos.
The bottom line is that we have approximately 100 projects build with maven to build our entire platform. You don't need much imagination that we have a couple of challenges to meet.
git-ing around
The last weeks I had some spare time to play around with the Git source control management system. My interest was aroused by a vote on the Apache Tapestry mailing list to migrate the Tapestry Subversion repository into a Git repository.
After a little more than a glimpse into the capabilities of Git I am quite impressed!
Blogging in private too …
On the last weekend I had some time to migrate my private website to another blog. So this blog will be used more exclusively for technical topics.
If you want to read more of my private thoughts, which will be written in my native tongue - german -, has to visit http://www.niclas-meier.de. See you there
New jaev Release
Today I made a new release of the jaev Framework for "advanced" e-mail validation. After being in productive use for quite some month now it was about time to offer a bugfix release. Some issues with domains containing no MX but an A DNS record where resolved. E-mail belonging to this kind of domains will now be accepted. An issue with a file handle leak due to unclosed UDP connections during the DNS lookup was also fixed.
Due to the generosity of Google I got a nice Google wave test account. Now I am looking desperately to some spare time to evaluate the integration of jaev to the wave. One idea is to expand the validation to wave addresses via the wave protocol. Maybe an online validation as wave bot is another exciting idea.
Making it lean
Programming is the most known part of software engineering to non software types. A couple of years ago I improved my skills in programming with the hope to improve my software engineering skills. But it took not very long for me to realize, that it takes a lot more to be successful in software engineering.
It's quite sad, but if you are honest even with your source code quality is far below average the project may be a success by the given business goals. On the other hand side your source code may be excellent, your code metrics are outstanding and your architecture is state of the art but you are missing the needs of your stakeholders by miles.
jaev 1.0 released
After some weeks the third release candidate of the jaev was the final one yesterday.
The jaev framework is in productional use at least one installation and no major problems where filed so far. I'm keeping my fingers crossed
I am working already on some new features:
- Caching negative responses of mail servers
When a mail server refuses communication due to suspected spam, the result will be cached to reduce network traffic. - Suggest e-mail addresses
When the validation fails suggest a list e-mail addresses. This algorithm may use the previous request and a default list of domains to compute some suggestions.
If you have any good ideas, file them on the issue tracking system or the google group.
Maybe I am applying for a google wave developer sandbox access to provide a google wave robot for online e-mail suggestion. Bah, that sounds like some work
Maven and Flex hoodoo
The last time when I blogged about the Flex mojos I was still quite frustrated and thought I had a better solution. Now some time passed and on April the 3rd the new version (3.1) of the flex mojos was released and me and some of my colleges made some interesting discoveries.