Monday, November 21, 2011

Moqui Framework 1.0.0 Now Available

The initial production-ready version of the Moqui Framework was released on 21 Nov 2011. This release includes various fixes and new features to facilitate easy use based on more extensive testing and real-world development using the framework.

More examples of different recommended and useful patterns now exist in Moqui Framework itself, and in add-on projects including Mantle, POP Commerce, and others.

To download this release, and for Release Notes with more details about this and previous releases, go to:

Wednesday, August 3, 2011

Moqui Framework Release 1.0-rc1 Now Available

The first 1.0 release candidate of the Moqui Framework (version 1.0-rc1) was released on 3 August 2011.

This release includes various small new features based on feedback and actual use, including Apache Shiro for security (authc and authz), build using Gradle which supports Maven repositories and with directory layout changed to follow Maven conventions, the ability to run arbitrary SQL and get the results back in an EntityListIterator, and the Data View tool that allows users to build queries and data exports on the fly.

This release candidate also includes improvements based on more testing, including performance testing and profiling to dramatically increase the speed of various operations, especially those done frequently.

As a release candidate from this point only minor changes are expected before the 1.0 final production-ready release.

Release download files are available on SourceForge:

Note that there is a file that also incudes a preview release of the Mantle Universal Data Model running on Moqui Framework.

Thursday, July 14, 2011

Moqui Demo Site on Amazon Elastic Beanstalk

There is now a demo site for Moqui Framework at:

This site is running on Amazon Web Service's Elastic Beanstalk service (as a war file in Tomcat 7) and uses the AWS RDS database (MySQL 5.5.12).

Deploying this demo site involved a couple of bug fixes for running on Apache Tomcat and on MySQL, and both are working well now.

Moqui also now includes some features to make it easier to create a war file with the runtime directory included, even if you just have the war file from the Moqui binary release and the new wartools.xml Ant build file. Just run "ant -f wartools.xml add-runtime" and a new war file will be created from the existing moqui-1.0.war file, your file, and your runtime directory.

Enjoy the demo, and enjoy this new and easy way to deploy apps built on Moqui Framework.

Also, and my business site are now also running on Moqui Framework in another AWS Elastic Beanstalk instance.

Friday, April 1, 2011

Moqui Framework Release 1.0-beta1 Now Available

The first feature-complete release of the Moqui Framework version 1.0 is now in beta and available for download. This release represents a major milestone for Moqui Framework as it is ready to be used in development of web-based applications ranging from simple sites and applications with a few forms and some content to comprehensive corporate ERP, CRM, and eCommerce systems.

For details about what this release includes, and what has been implemented in previous releases, see the Release Notes here:

For general information about Moqui and the Moqui Framework see:

To try Moqui Framework download it through SourceForge, and read the instructions in the RunDeploy.txt file included in the download:

Thursday, March 31, 2011

Why would someone contribute to an open source project?

There is an interesting thread in the Open Source group on LinkedIn that started with the message: "why would someone contribute to open source project? what would programmer get in return?" Here is my response to this:

This question is a good one because it goes to the core of how open source software gets created. The fact that there have been so many replies to this question demonstrates its importance (even to those who seem offended by the idea that an individual needs a reason to contribute).

The factors of satisfaction, building skills, and better employment opportunities (for certain types of companies anyway) are, IMO, more symptoms of the underlying reason rather than the reason itself.

What is implied by the question and many of the answers is that intellectual property protection is the only way to earn a living making software. It seems clear to just about everyone the IP law is not good for innovation, which is best recognized by symptoms like satisfaction and greater value in a market.

Along with this IP law is also not in the best interest of software creators, and does not result in greater income for those of us who create software professionally. When we create software for an employer we get a salary and unless we're really lucky the salary is the minimum they can get away with paying for what is often considered a worldwide commodity skill that isn't worth much in the market.

IP law is great for investors, but bad for the software itself and bad for software creators. Open source and free software are the answers to that.

Those who give up on IP protection to make a living will make more money and have more opportunities for satisfying and skill-building work.

I like to consider myself a good example of that, so much so that after a decade of working on what is now Apache OFBiz all of my free time is going into the next generation of free software tools and applications for business use with Moqui and the projects based on it.

In all of this I've made 2-3 times as much over the last decade as I would have by working as an employee, unless perhaps I had hit a C-level position in a larger company by now (which I'm not sure I'm really that interested in anyway).

Tuesday, March 1, 2011

Moqui Release 1.0-preview2 Now Available

With release 1.0-preview2 the Moqui Framework is now nearly complete and has sufficient functionality to build a wide variety of functional and useful enterprise, or less formal, applications. This release includes a functional example application with various screens demonstrating features of the framework and recommended practices and patterns to use when developing with Moqui.

While not feature-complete for the planned 1.0 feature set, the 1.0-preview2 release is ready for early adopters. For those interested, this is a great time to try out Moqui for a pet project or even a more formal project that is just getting started and won't be deployed in production for at least a few months.

Feedback on functionality and bugs by early adopters would be extremely helpful for the project at this point, both to validate (or invalidate...) designs and to more extensively test the implementation.

The release and release notes are available here:

Monday, February 21, 2011

Free as in Freedom

In his article about free software versus open source Richard Stallman expresses the importance of a focus on freedom:

I couldn't agree more. Freedom can be effectively applied as a solution to any modern problem, including software. On the other hand, freedom can also be ineffectively applied or downright misapplied and fail to solve problems in spite of the good goal and direction.

Some say Stallman's focus on freedom is dogmatic, other call it communist, and others utopian. I say Stallman doesn't go far enough.

When it comes to free software and open source I certainly started out in the open source camp where the utilitarian development was a higher priority than freedom. At the time I simply found the GNU GPL to be overly restrictive, and ironically because of that it is popular among commercial software companies who want a revenue stream from software licensing and also want to market their wares as "open source."

In the last decade my understanding of freedom and its importance in the world has changed, and I think I'm starting to understand Stallman's focus on freedom and his approach to achieving it. Understanding isn't agreement though, and in this case I don't agree with the approach at all. It doesn't really represent freedom at all in my opinion, and is in fact a misguided attempt to violently force people into freedom.

Violence? Force? Yep. The irony is the use of the "legitimate" force of intellectual property law as a means to promote freedom. The goal of freedom is spot on, but freedom must be chosen and anything that looks like freedom but is brought about through force will always have a hard time rising above mere compliance.

From a different perspective, namely that of law makers and enforcers, this idea is pure genius and because of that is promoted frequently and consistently in nearly all modern propaganda, including media and educational institutions. If you want something done, give someone the power to force it to happen. Those who want certain things done get to feel like something is getting done without doing much themselves, and those who want the power get what they want and usually have no liability or accountability to balance their power. The more we try to solve with force, no matter how legitimate it might seem, the more force and centralized power we'll get as a result.

Your mom was right: violence is not the answer. If your mom was really smart, she also taught you that government is little more than a monopoly on violence. In some cases, such as countering aggressive force, violence is entirely appropriate. In most cases it is absolutely not.

This is where we cross the line from ethics to morals. Ethics are morals within a certain context, and in the context of legitimate use of force through government violence is entirely ethical. In the more absolute context of morals, violence in response to the treatment of ideas (no matter how they are represented) is clearly not justifiable.

So which license is really the friend of freedom? Which open source or free software license rises above ethics into the realm of morals and does away with threats of violence? If the license is based on the concept of copyright, it is violent and antithetical to freedom. If the license tries to force people to do or not do certain things in order to comply with copyright law it cannot be a friend of freedom.

In general, and certainly with software, there is only one way to not feed the beast of centralized power: don't solicit it's services! If you want free software, with free as in freedom, then the only approach that is moral, and the only approach that will result in more freedom in the world instead of less is to not use copyright law at all. The only way is to disclaim your copy rights. Until there is no intellectual property law in the world, the only way is through no copyright and no license.

Let freedom start with you. Disclaim your copy rights. Put your works in the public domain. Don't feed the beast.

Not convinced this is a good idea? Consider what various corporations do that you don't like. Do you support the RIAA and the ruin of lives over copying of music? Do you support the big corps and their approach to protecting their "rights" with commercial software? Are you in favor of a $500,000 fine and 5 years in prison if you copy a movie, and the absurd amount of our money through taxes that go to enforce that? Are you in favor of DRM software, and laws against even revealing the details of DRM software? Do you think it's okay to throw people in a cage or steal money from them because they wore a t-shirt with a set of numbers and letters printed on it?

I hope your answer to those questions is no. If not, then why on earth are you reading this? So what is it that bothers you about those things?

All they are doing is applying copyright law to protect their interests in the "intellectual property" they own.

If you do the same, are you any better? Can you claim any moral, or even ethical, superiority? Why should people listen to you?

Let freedom start with you. Disclaim your copy rights. Put your works in the public domain. Don't feed the beast.

Wednesday, February 9, 2011

Moqui Release 1.0-preview1 Now Available

The first release of the Moqui Framework is now available for download through SourceForge at:

This first release has many tools that are usable right now, but there are many features planned for the final 1.0 release that are not yet complete. See the release notes for details about what is included and what is not yet either in the distribution or on the download page linked to above.

This release includes a WAR file that is executable (like an executable JAR), or can be deployed in an app server or servlet container. For more details see the RunDeploy.txt file in the distribution, or online here:

Part of the purpose for this release is to get feedback, bug reports, and contributions. If you have any questions about those, feel free to contact me or post in the forums. Thanks to all for feedback so far, and for continued interest and support.

Monday, January 10, 2011

The Moqui Framework Web Site

I started work on design of the Moqui Framework in Feb 2010. Just a few weeks ago in late 2010 I decided the design was done (I made it through all of my TODOs), and started implementation. Right now implementation is under way, and I'm appreciating the power and flexibility of Groovy and as I get into higher level code also the features of the Moqui API and features.

Anyway, to the point of this post...

This weekend I decided it was finally time to get a web site together for the project. This initial web site has useful links and a good deal of content about the project. If you're wondering about what Moqui is or how it will be managed or what drove the design, then there are good time ahead for you at: