Alex Karasulu's Blog
Alex Karasulu's Blog

20120309 Friday March 09, 2012

Apache Open Office coming along!

This is a photo of me testing out the first unofficial pre-release of Apache Open Office. It sure looks promising. Kudos to the Apache Open Office folks!

 

Apache Open Office on my desktop 

(2012-03-09 03:27:07.0) Permalink

20120302 Friday March 02, 2012

Getting Libmad working on macports

An attempt to install libmad will fail on macports. There are several issues open for this. To get libmad-0.15.1b working for macports requires a bit of manual intervention. Follow these steps to make up for the lack of a macports integrated patch to remove the -fforce-mem configuration option in macports:

cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_audio_libmad/libmad/work/libmad-0.15.1b

edit the configure script removing the following option -fforce-mem

./configure --prefix=/opt/local

make

make install

then force activation of the package 'port -f activate libmad'

 

(2012-03-02 02:14:15.0) Permalink

20120220 Monday February 20, 2012

SQL Maven Plugin and Embedded On Disk HSQLDB Lock Problem

If you're using the Maven SQL Plugin from Codehaus to load your schema into an embedded on disk HSQLDB instance then you've probably encountered the following trace when your test cases against the database bomb:

java.sql.SQLException: Database lock acquisition failure: lockFile:

org.hsqldb.persist.LockFile@22c728ea[file =

/Users/akarasulu/Projects/local/factbook/db/target/factbookdb.lck,

exists=true, locked=false, valid=false, ] method: checkHeartbeat read:

2012-02-21 03:28:02 heartbeat - read: -102 ms. 

        at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
        at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
        at org.hsqldb.jdbc.JDBCConnection.<init>(Unknown Source)
        at org.hsqldb.jdbc.JDBCDriver.getConnection(Unknown Source)
        at org.hsqldb.jdbc.JDBCDriver.connect(Unknown Source)
        at java.sql.DriverManager.getConnection(DriverManager.java:582)
        at java.sql.DriverManager.getConnection(DriverManager.java:185)

This is due to the fact that the maven sql plugin is not properly shutting down the embedded instance point to the on disk  storage for whatever reason. The same problem does not occur when the database is in memory. To fix this issue just add another execution to the list of executions of the maven-sql-plugin to properly shutdown HSQLDB like so:

          <execution> <id>shutdown</id> <phase>process-test-resources</phase> <goals> <goal>execute</goal> </goals> <configuration> <sqlCommand>SHUTDOWN IMMEDIATELY</sqlCommand> </configuration> </execution> </executions> 

This should make the nasty lock based failures go away and your test cases against the database should run smoothly. 

(2012-02-20 22:51:29.0) Permalink

20111220 Tuesday December 20, 2011

OS Genetic Engineering to Solve World Hunger

It seems OS is being considered for use with nearly any kind of substrate: it started with code but there's OS hardware and now OS tools for building sustainable communities to save the environment. See this post for more information here. Below is a snippet from the article:

 

    "... the participants in the Open Source Ecology project take ambition to new heights. 
     The project takes the principles that were developed originally by the open source 
     software movement and later the experiments with open source hardware, and applies 
     them to developing an environmentally friendly society by creating open source tools 
     capable of building sustainable communities - pretty much from scratch, using recycled 
     and scrap materials." 


It's pretty cool to see OS expanding to new dimensions like this. I was always thinking about OS recipes and other areas not necessarily dealing with code. One really nice idea that came to mind was OS genetic recipes for livestock and seeds. The thought came to mind when I was in Turkey and there was a drive to raise 500M dollars to help fight the famine that struck some African countries this year.

My initial thought was. This is pathetic! They're buying food stuff and sending it to these starving people but this is like giving aspirin to a cancer patient. It just prolongs the inevitable and is no cure at all. Instead if these funds are used to open a new open source research center that promotes OS sharing of genetic alterations to plants and livestock across nations it could make a real dent in an epidemic that is getting worse. It could be a cure. It could be something to look forward to as the world population grows, global warming results in more deserts and food sources dwindle. If we can make the yield of plants greater or make them capable of flourishing in desert like conditions this would be a cure and not just a temporary treatment for famine. It could help end or greatly diminish world hunger. It could even prevent blood shed due to a lack of land or resources to feed the growing populations of the world.

So the next time someone thinks of a charitable drive to help stop hunger. Rally for the cure: OS genetic research on livestock and plants to make them viable in drought ridden environments.

(2011-12-20 12:31:26.0) Permalink

20110312 Saturday March 12, 2011

An alternative to Java

Apache Harmony possesses the potential of being a viable alternative to Java. It can finally give the world a truly free and open platform around which and entire ecosystem can form. It is hard to watch things slow down with Apache Harmony because of IBM's decision to pull out and side with Oracle on the OpenJDK project.

What is the world thinking? Why don't other companies or even governments come together to support Apache Harmony? Do they forever want to be trapped in the nasty clutches of Oracle? 

It would not take that much to take the Java Community back to freedom. Apache Harmony with the right care can be the catalyst. Apache Harmony does not need to be Java. Let's call it the new Harmony language. Looks like Java smells like Java but instead of java.* packages it has org.apache.* packages. Most of the software to pull this off exists at Apache to begin with.

Conversion tools can be written easily to map the old Java packages to the Harmony packages. This way previous code investments can be preserved and a large portion of the community can be instantly pulled over to Harmony. This can even be done on the fly by the Harmony VM. Hence we can make it so Java is also Harmony but Harmony is not Java.

I hope the world wakes up and puts the proper support behind Harmony. I've never had confidence in Oracle, and now it's looking worse than ever. You have one of the crustiest companies hold the coolest VM technology and millions of technologists hostage.  

(2011-03-12 07:09:01.0) Permalink

20090406 Monday April 06, 2009

Juicy File System

OK get ready because this is a sick idea.  It's not new because we shamelessly stole it from Oracle's IFS years ago and transmuted it into the plane of LDAP.

Consider an LDAP server that exposes an NFS server and a framework which can be used to build parsers and composers.  Parser/composer pairs can be mapped to file extensions.  When someone stores a file with a specific extension on the NFS share, the file is parsed as it is streamed back to the server.  An entry or tree of entries are created to store the contents of the file in parameterized form.  So the file is never really stored as is on the server.  When the file is opened and ready off the NFS share, the parameterized information in the Directory is searched and the file is composed on the fly while streaming it back to the reader. 

I know the initial reaction to this is wow this is cool.  What's sick about this idea is that it applies file semantics to LDAP data and vica versa.  But then one has to stop and think what the heck am I really getting out of this?  Let's make a list:

  • LDAP servers constrain values which reduces typographical errors which occur frequently when editing flat files.
  • Once the data is parameterized as entries and attributes in the directory, the content can be searched rapidly.
  • Access to the data is centralized and access controlled.
  • The data is replicated if LDAP replication is enabled.
  • The configurations of LDAP ignorant legacy applications can be managed in LDAP non-intrusively.

Need I say more? But wait, if you buy now, you'll get this for free: ApacheDS has a slick versioning and snapshotting mechanism.  So you say?  Well this is great for snapshotting and versioning configurations in the Directory Information Tree.  How many times do you make a change and wish you can rollback?  How many times do you find yourself copying that same httpd.conf file over to httpd.conf.bak or httpd.conf.bak.bak ...

So this is the good news.  We have a slick idea.  The bad news is it's not implemented yet.  But wait there's more good news.  We have everything we need to implement this JUICY idea.  Plus we have a couple folks who know their stuff to get this done.  If you're interested in getting involved just let us know over at Apache Directory: dev@apache.org.


(2009-04-06 20:58:42.0) Permalink

I'm back After a descent hiatus, I'm making my way back into the code bases of various projects at Apache.  I must say, there certainly is a benefit to being away and coming back to look at the code with fresh eyes.  My first reaction was to start scolding myself for how bad I've designed this or implemented that.  However, at the same time, you begin to see solutions to problems you thought would never get fix.  You begin to see yourself thinking differently.  It's really great!  I recommend that everyone take at least a few months away from any project they work on regularly if they can. (2009-04-06 20:31:21.0) Permalink

20071215 Saturday December 15, 2007

The Joule as the Global Monotary Unit For some time I've been trying to think of a way to start leveling the playing field of currencies.  People get raped at the currency exchange shops and they barely even know it.  It's the biggest global racket where people who do nothing and add nothing of value make a great living.  This is why the whole world should be based on one currency which is tied to a tangible and measurable unit which is at the center of everything: energy.  By using the Joule globally then energy will govern peoples buying power as it should naturally.  Someone told me this a while back and it makes more sense than ever before.  This will lead to a better society and one where different countries cannot play currency games to cheat the system or the worlds people.
(2007-12-15 11:39:28.0) Permalink

20071201 Saturday December 01, 2007

OpenDS Reveals the Critical Flaw of Sponsored Commercial Open Source

I don't understand why Simon Phipps would be attacking Neil Wilson's motives when they are pretty clear and utterly noble. Perhaps it's just part of his job function for SUN damage control. The reason I don't understand is because Neil is trying his best to accommodate the users and community who would be put out because of this fiasco. He's being very noble and using what tools he has (yes a public forum) to apply pressure on SUN and save this project. Hearing the SUN Open Source Officer recommend keeping critical aspects about an OPEN source project's governance decisions behind CLOSED doors is a bit disappointing to me. It shows how little SUN and Simon Phipps actually know about Open Source.

 

These reactions from SUN are expected. Sponsors of Open Source Projects often feel they own the project (the people and the code), they after all pay for resources and the employee salaries who contribute to the project. It becomes hard to differentiate between the different hats contributors might wear (as employees and as independent members of the community). Commercial interests get confused and sponsoring companies often try at all costs to maintain control. It's all about recouping an investment. This dynamic is antithetical to the core aims of Open Source which at their foundations is based on community. There's obviously more dimensions to Open Source than just having source code published openly. The code is nothing without the people (the community) behind it. These are the problems evident in most sponsored commercially driven projects as opposed to organic projects. There obviously are trade-offs however some are especially costly as we are all witnessing on this blog.

 

Neil Wilson shows the caliber of someone who really understands the core tenets of Open Source as demonstrated by his struggle for the rights of the community. Kudos to Neil for that and I sincerely wish him the best. I hope he can turn this situation around. Unfortunately, as he has probably already seen, SUN has the upper hand legally because it's lawyers have engineered the situation from the beginning with the CDDL and their more than obvious intensions driven by the bottom line: profitability. I am not making a moral judgment about this but rather stating the problems it causes when mixed with "Open Source". However, OpenDS and Neil Wilson's situation has flushed out a very important pitfall with sponsored commercial open source: the ability of a contributor to stick with the project across employers is at the discretion of the sponsor not the individual. The force of this flaw eventually erodes away at any community that could possibly gel (other than employee based members) while an organic community is immune to this dynamic and enjoys greater diversity.

(2007-12-01 13:45:14.0) Permalink

20070908 Saturday September 08, 2007

1st International LDAP Conference The 1st International Conference on LDAP in Cologne (Setp 2007) was an absolute success in bringing the LDAP community together. Vendors, Open Source Projects, users, and the creators of both LDAP and X.500 were present at this conference. I commend the GUUG for the exceptional program and quality effort they put into arranging this conference. We (Apache Directory Team) had the opportunity to speak about our vision and demonstrate it with our reference implementation. The reaction towards the idea of adding triggers, views, and stored procedures to LDAP along with the proper tooling to make users comfortable was extremely positive. We feel the community was captivated or intrigued with these ideas and our attempts to formalize them. Chris Custine was telling me that one fellow even approached him and said, he "got his money's worth for the conference after seeing the Directory presentations (3 in all)." Others wished that the vision can be achieved to increase the usability and prominence of LDAP. The authors of the protocol RFC's pointed out the need to join the specification process and help standardize these features. It was a great event that I personally have been waiting for for the last 5 years of my life. On the standards related end we had the chance to pull together enough momentum from various other implementors to begin some draft proposals in the effort to standardize these new rich integration tier constructs for LDAP. (2007-09-08 12:43:01.0) Permalink

20061017 Tuesday October 17, 2006

ASN.1 Keeps Getting Faster and Faster Man I've got to hand it to Emmanuel Lecharny from the Apache Directory team. He's been speeding up the Apache Directory Server since day one but recently before 1.0 his performance improvements have gone through the roof. ApacheDS is now processing LDAP ASN.1 faster than most C implementations. We have Emmanuel Lecharny to thank for this!!! (2006-10-17 15:00:14.0) Permalink

20040330 Tuesday March 30, 2004

Another victory for svn Today I resusitated a file in subversion. I thought it was cool although its not a big deal. However what was cool was getting help from the original authors on it. I think people should rething the support issue for svn its definately growing strong from what I can see. (2004-03-30 11:39:55.0) Permalink Comments [0]

20040217 Tuesday February 17, 2004

Notification pattern has interesting effect on IoC

While looking at the frontend of the Eve server I began to realize a trend emerging after I introduced a central publish and subscribe facility. The pattern decouples components by enabling communication using events and the notifier pattern. This also lead to the disappearence of methods on service interfaces.

So the dependency graph turns into a star with all components depending on the event router, hub, bus or whatever you call it in the center. Event types and interfaces essentially become the dependency as opposed to the service interfaces. This way the introduction of new subscribers and publishers. Also the dynamic rerouting of events are possible at runtime. What this means is the dependencies between components can change on the fly! Wow not a bad thang.

What does this mean for service interfaces? Well they start looking bleak because the Subscriber interface replaces them. Basically methods are called internally by the Subscriber handling code on the component itself rather than exposing them on the service interface for direct calls by what are now publishers. This is crazy my service interfaces are all empty now!

(2004-02-17 23:40:44.0) Permalink Comments [0]

20040212 Thursday February 12, 2004

Groovy dude is on a roll

You know I just started to get good at groking the Jelly. Just as I start digesting one Strachan production the guy comes out with yet another. Groovy really lives upto its name and I can't wait to get hard core with it. You just can't beat a language that has a class called GString in it! That's totally Groovy.

It sure would be nice if we could get maven to use Groovy in addition to Jelly. From the looks of it this might not be all that much of an undertaking. You could certainly create a Jelly tag to just load a Groovey script. I bet there's more ways than one to skin that cat.

Was also thinking of a GroovyJndi package. This would be most excellent when embedding Groovy within Eve as a stored procedure scripting language. Groovy closures make it ideal. Having the GroovyJndi package would make writing SP code that talks to the server side JNDI provider a walk in the park.

Perhaps if someone does not implement the GroovyJndi package it might be a way I can add my $0.02 to it and be Groovy too :-).

(2004-02-12 11:40:08.0) Permalink Comments [0]

20031030 Thursday October 30, 2003

Eve formerly know as LDAPd has been accepted to Apache Incubator

Eve the LDAP server formerly known as LDAPd has just been accepted last week into the incubator under the Apache Directory top level project. Eve will be the flagship server for that Apache Directory TLP upon matriculation from the incubator.

Thanks to all those that made it happen!

(2003-10-30 23:00:53.0) Permalink Comments [0]


archives
links
referers