Mission Vision Values Goals 2011


My mission is to fulfill the greatest commandments to love the Lord my God with all my heart, soul, mind, and strength and to love my neighbor as myself (Mark 12:29-31). Jesus said that the outworking of my love for Him is keeping His commandments (John 14:15), so I strive to eliminate sin from my life and to fulfill His great commission to make disciples, baptizing them, and teaching them to observe all things that He commanded (Matthew 28:18-20).


My vision is that I would be a man used by God as a messenger and minister of His love for all people through my prayers, words, thoughts, actions, and attitudes. It is my vision that I would make a lifelong impact on the lives of younger men as a spiritual mentor and discipler. I want to have a lifelong reputation as a faithful and diligent servant of Christ’s bride, His Church. I envision myself as being an excellent steward of all that God entrusts to my care: time, money, talents, relationships, responsibilities, knowledge, and family. May I live this life in such a way that Jesus, when He brings me Home, will be elated to tell me “well done, good and faithful servant; you were faithful over a few things, I will make you ruler over many things. Enter into the joy of your Lord.” (Matthew 25:21)



I am committed to seeking the leadership, direction, and mentorship of wise and godly older men. I make personal sacrifice to provide such mentorship to younger men around me. I consistently pray for the spiritual, emotional, and mental development of those I disciple.
Matthew 28:18-20, 2 Timothy 2:2


I am created not to simply seek my own well-being, but rather to glorify God by following Jesus’ example of serving. I have learned that I greatly enjoy and am deeply satisfied by serving those around me. However, I also recognize that more doing does not always equate to better serving, so I also invite and equip others to join me in service.
Mark 10:43-45, 1 Peter 4:10-11


God is the creator of every single thing on Earth and even of time itself. Therefore, it is foolish to think that anything I have it truly “mine.” Everything is the Lord’s, and I simply have been given a stewardship over it. I am responsible to use the things God gives me wisely and in accordance with His will.

As for my finances, I fully believe in the principle of a 10% tithe as well as gifts and offerings beyond that. As for my time, the Bible calls me to “redeem the time, for the days are evil,” and I find that seasons of hard work and effective time management are those in which I am most satisfied.

The Lord has also created me with certain talents, abilities, and interests that He expects me to use for His honor and glory. I look for opportunities to put these things to work for His Kingdom, knowing that God will honor and repay it in this life or the next. It is the “good and faithful servant” to whom the Lord chooses to give more.
Malachi 3:10, Ephesians 5:15-16


The Bible is the holy and divinely inspired Word of God, fully authoritative and accurate in its original language. The Lord has given us the Scriptures as the written record of who He is, who we are, and how He has designed us to live. I believe that Scripture contains absolute and irrefutable truth that He has chosen to reveal to us.
2 Timothy 3:16-17, Romans 10:17, John 10:4-5, Hebrews 4:12


I have a passion and talent for gaining new knowledge, understanding, and abilities. As a matter of good stewardship, I seek to continue to learn and grow in understanding. Some of the subjects in which I am particularly interested include:

  • God – His will, His ways, and His Word
  • Hard sciences such as mathematics and physics
  • Technology – everything from software, algorithms, and design patterns to web technology and security to hardware and electronics
  • Practical matters: fixing things, making/building things, understanding how things work

Proverbs 1:5-7, 8:10, 15:14, 18:15, Ecclesiastes 7:12, 1 Corinthians 12:7-11


I recognize that I am most effective when I am challenged by deadlines or a desire for excellence. I actually enjoy seasons of high stress and pressure, because they force me to focus on the things that are most important and consequently, most satisfying. This is why I set deadlines and high expectations for myself: in order to develop the kind of environment in which I can be most effective. I’ve always believed that if life were easy, it would quickly become boring.
2 Chronicles 31:20-21, Nehemiah 4:6, Proverbs 6:6-8, Ecclesiastes 9:10


The Church is the beloved bride of Jesus Christ, my Lord and Savior. Jesus loves His Church just as a perfect husband would love his wife. If I truly love, serve, and follow Jesus then I can’t help but fall in love with that which He loves: His people, His Church. My love is manifested by striving to grow, strengthen, and spend time with the Church. I strive to grow the Church through personal evangelism as a part of my daily life, and I strive to strengthen the Church as I spend time with her through my involvement with a local church body in fellowship and service.
Acts 20:28, Ephesians 5:29-32, 1 Corinthians 12:27-31


Technical Certifications (Learning, Challenges)

Because I value learning and challenges, I challenge myself to achieve a number of professional certifications. Obtaining these certifications will reinforce and deepen my knowledge in these technologies that I find particularly interesting. Certification is also a way for me to be a good steward of the knowledge and experience that the Lord has allowed me to gain through my career in the technology industry.

A candidate schedule of certifications that I would like to achieve:

Fixer Upper Home (Stewardship, Learning)

I really like living in San Antonio and currently have no plans of moving elsewhere in the foreseeable future. As a result, it would be more economical for me to invest in building equity in my own home rather than paying rent on a house or apartment. I want to be a good steward of the financial resources that the Lord chooses to place in my care, and I see investing in a home as a practical application of that core value.

Moreover, I don’t feel it necessary to buy a house that is in pristine condition. I’m not bothered by things that are a little bit broken and enjoy the opportunity to repair and rebuild things. As such, I can save a lot of money by purchasing a house that is something of a fixer-upper, and I would then have the ongoing opportunity to make improvements to the house myself.

I would like to see this come to pass within the next 5 years, but I don’t relish the idea of being in a lot of debt on a mortgage. As a result, I am compelled to maintain a budget of living well under my means so that I can save enough money in that time span for a significant down-payment on a house.

My tangible goals in this area include:

  • Budget to save at least $5K per year to build up a down payment
  • If my salary increases, continue to keep my expenses low
  • Determine what extent of repairs needed on a house I would be comfortable with doing myself and start to learn how to do such repairs

Mentoring Youth (Discipleship, Service)

As I look back on my life, the thing that I would say has made the most profound impact on my development has been the older, wiser men who invested time in my life as mentors. As a youth, Tom Haley consistently pursued me to spend time with me, involve me in the service and ministry that he did, and offered godly counsel in my life over the course of several years. As an adult, I was again pursued by an older man of God: Roderick Barnes, who has been a mentor and discipler to me for the last 5 years. It is through interaction with these men that my love of serving, scripture, and learning were cultivated and provided with guidance and encouragement.

Obviously, I will continue to maintain a relationship of being mentored by an older man of God, but I also want to be used by God as such a mentor in the lives of some younger men in my life. When Jesus commanded His disciples to go forth and make disciples of all nations, the message was clear that part of His plan of discipleship was reproducing leaders who themselves would reproduce leaders. If I am to fulfill the Great Commission, I must be striving to make disciples and equipping them to carry on the example of Christ by making disciples as well.

In practice, I have come to the belief that mentorship is particularly effective when the discipler is at least 10 to 15 years older than the disciple. As such, the natural context for me to make disciples in this stage of my life is among young men in their early teens.

My tangible goals in this area include:

  • Re-establish a regular schedule of meeting with Andrew at least once per week
  • Reconnect with Jamari and visit him in Maryland
  • Begin mentoring one other young man

Serving at Alamo Stone (Church, Service)

By God’s grace, I have had the privilege of being involved with Alamo Stone Church for the last several years as a member and by serving in a number of different capacities. The Lord has created me with a passion for service, and it is in the context of the local church that I have the opportunity to fulfill His design and plan for me.

Throughout the years I have helped with Audio/Video support, band equipment setup and teardown, cleaning, leading or supporting small groups, and serving as a part of the youth ministry team, but I am presently most involved in the youth ministry. Originally, I started serving in this capacity simply because it was the area in which my mentor needed the most support. However, I have stayed with this particular area of ministry because it most naturally lines up with my goal of mentoring youth and because it is developing and strengthening aspects of my character (e.g. patience and the ability to teach) that will be important if the Lord allows me to be a father one day.

The Lord hasn’t revealed to me if youth ministry is where He wants me to be long-term, but He has certainly made it clear that this is what He has called me to in this season of my life, and I plan to stick with it until He calls me elsewhere.

My tangible goals in this area include:

  • Support David in the development of a children’s (i.e. early elementary) ministry team
  • Develop a transportation team and pass on leadership to someone else
  • Teach from the Bible at least once per month

Complete Scripture Memory Made Easy (Scripture, Challenges)

In 2009, Roderick cast a vision for a group that would meet regularly to memorize scripture. To support this endeavor he identified the book Scripture Memory Made Easy, which has a schedule of 100 Bible verses to be memorized over the course of a year. Unfortunately, I never made it past seek 26 and the group fizzled out several times, but I would still like to finish memorizing the verses from that schedule. Furthermore, as a part of my ongoing attempts to learn Biblical Greek, I would like to learn these verses in both English and Greek.

A candidate schedule for memorizing the veres:

  • 2011-09-30 Re-memorize the first 26 weeks of verses in English
  • 2012-03-31 Memorize the entire 52 weeks of verses in English
  • 2012-06-30 Memorize the first 26 weeks of verses in Greek
  • 2012-12-31 Memorize the entire 52 weeks of verses in Greek

Hello DreamHost!

Well, I’m migrating to DreamHost, because they seem to be pretty great. Also, the old JSPWiki software I was using seems a bit crusty, so I’ve switched to WordPress while I’m at it!

HTTP Proxy Servlet

Update: License Added (2010-06-05)

I have recieved a number of emails regarding the license under which this little piece of code is released, and I’ve been meaning to get around to answering those requests for some time, but now I’m finally doing it. And the winner is: Apache License, Version 2.0. So yeah, I hereby release this software under the Apache license, yada, yada, yada. If this license is to restrictive for you, drop me a line and we can discuss other possible licensing options.Oh, and by the way: since the time of this writing, I have since realized that Apache HTTPD’s mod_proxy is none too shabby, so I actually have started using that instead of this little proxy servlet. But if this helps you to accomplish your mission, then more power to ya!

I’m hoping to get around to hosting this on Google Code soon so that I can leverage their source control, issue tracker, wiki, etc. When I do, I’ll be sure to post a link to it here 🙂

So here’s the deal:

I have some applications running in an Apache server, and I have other applications running in a Tomcat server.
I like the fact that these applicaitons are running in their respective servers, and I definitely don’t want to have to choose between using only Apache or only Tomcat.
The problem is, I can only bind one application on port 80 (the standard port for the HTTP protocol) at a time. But I like having my servers on port 80, because when I type in a URL in my web browser, I dont have to bother with the whole :<port> business to specify the port.
I really don’t want to have to remember which application is running in which server on what port when I enter a URL. For example, if I want to got to my wiki, I don’t want to find myself asking “OK, was the wiki running under Apache or Tomcat?”


The mod_jk connector provides a means of solving this problem by properly configuring Apache and Tomcat to play nicely with each other. For most people, this is probably the best solution, but I don’t like it. My reasons for not liking the mod_jk solution are pretty arbitrary, but I find my justification in the desire for Loose Coupling of software systems, which has been ingrained in to my very core through years of computer science education.
So, if we want to have loosely coupled webservers both appearing to operate on port 80, we are going to have to perform some magic with some kind of Transparent Proxy.

There are two possibilities for a proxy server configuration:

  1. Use a third-party proxy application such as Squid to accept all requests on port 80 and proxy them to the appropriate webserver.
  2. Configure one of the webservers to listen on port 80 and automagically proxy certain requests to the other webserver.

I’m sure that the former option is possible, but I don’t want to install squid on my server. I’m running everything on a server that is cobbled together from spare parts, so it’s already over-taxed without me installing squid on it.

I am therefore left only with the choice of which webserver will handle the proxying. Apache has some built-in proxying capabilities, and this guide explains how to set up Apache to proxy over to Tomcat. However, as far as I can tell, this requires that you update Apache‘s httpd.conf every time a new webapp is installed in Tomcat. Alternatively, all webapps in Tomcat could have a certain path prefix (for example, you could configure Apache such that all requests to http://example.com/tomcat/* are proxied to Tomcat).
I am not looking to add any more administrative burden for myself when I deploy my applications, so this option is out for me.

Given the power of Tomcat for deploying applications, I figured it should be no trouble for a servlet to solve the proxying problem. Therefore, I have a a small HTTP Proxy Servlet running in the root context of the Tomcat server, that is mapped to the URL pattern ‘/*’ (the so-called ROOT context). This way, any request made to the Tomcat server that does not map to a certain web application gets handled by the HTTP Proxy Servlet sitting in the ROOT web application context.

Proxy Servlet Options:

In my search for a solution, I ran across a number of HTTP Proxy Servlets, but none that quite suited my fancy:

When I tried the servlet from Coldbeans Software, I was unable to get it to start right away, so I pretty much gave up on it right then and there.

The most full featured servlet was Noodle, fully supporting custom filters and streaming. However, the software depends on a seemingly archaic HTTP client library called (creatively enough) HTTPClient. From my cursory investigation, it seems like the HTTPClient project died soon after it was integrated into Noodle. At the time of this writing (October 2007), Noodle ships with version 0.3-2 of the HTTPClient library, and the most recent version available is 0.3-3. Additionally, the HTTPClient website currently shows a date of “6. May 2001” for most of the pages (including the “Bugs fixed in V0.3-3” page), so it seems safe to say that the project is fairly well dead. I would never have known or cared about any of this info about the HTTPClient library except for the fact that it choked on a simple HTTP redirect, which the library claims to support.
Support for HTTP redirects is a crucial feature for what I want to accomplish, and I was not interested in gutting the Noodle source code of its current HTTPClient library usage and sticking a different HTTP Client library in its place.

The servlet from Frank’s Internet Playground worked out very well for me for a while. I did have to make a modification to the source code, as there were two lines that handled redirects, but were commented out. I simply uncommented those two lines, and everything was hunky-dory. Unfortuantely, I was trying to log in to a PHP based web application through the proxy servlet one day, and to my chagrin, I discovered that the proxy servlet that I knew and loved did not properly pass “Set-Cookie” headers back to the client.

It was at this point that I decided to write my own proxy servlet, borrowing a good deal of code from Noodle, and using the Jakata Commons HttpClient library, which seems to be under more active development than the HTTPClient library used by noodle.


I have attached a the proxy servlet as a WAR file, you can find the link at the bottom of the page.

Source code

I have also attached the source code for the proxy servlet separately, you can also find the link at the bottom of the page.


Currently, all of the libraries I use are from the Jakarta Commons.

Library Version Used
Commons HttpClient 3.1
Commons Logging 1.1
Commons Codec 1.3
Commons FileUpload 1.2
Commons IO 1.3.2

Servlet Configuration

To configure the servlet, put this in your web.xml and customize the intit-param values to suit your needs:






Mission Vision Values Goals


My mission is to wake up each and every morning and love the Lord my God with all my heart, soul, mind, and strength.

With all of my heart

Having no passion, desire, or interest that supersedes Him, submitting my will to him

With all of my soul

Always seeking to align my beliefs with His Truth, that there might be no portion of my person that is reserved from HIm

With all of my mind

Basing all of my decisions and reason on what I know of Him and continually seeking to know Him and understand His ways ans His will for me

With all of my strength

Expecting the road to be difficult and acknowledging that I am, in my humanity, unable to succeed without Christ in me as my source of sufficiency


I envision myself as a man, humble in love, who is unashamedly and unrelentingly in love with the Lord. I am to be a man the that Lord uses to draw people to Himself, a man who encourages those around him to seek after God, not merely through words, but also through prayer, example, support, and love.I am to be a man who supports the growth in unity of the Church, the body and bride of Christ. I am to be a man committed to discipleship, a devoted adherent to the model of Jesus as demonstrated in his ministry here on Earth.

I am to be a man committed to prayer, worship, meditation, and study of scripture. A day spent without all of these is a day deprived of the essential elements of Life.



Knowing that every human soul is dearly precious to God, sharing the Good News of the saving work of Jesus with those who have not heard is absolutely critical


Jesus’ model of ministry on Earth is one of discipleship. He spent 3 years continually pouring into 12 men who he later commanded to make disciples in the Great Commission of Matthew 28.


As I come to better understand how God has made me and my personality, I recognize ever more the need for me to be involved in service. It is in serving the body of Christ that I find greatest fulfillment, having filled to the full the role for which God has optimized my nature. As such, it is critical that I be involved in service at every stage of my life.


In addition to long-term high-commitment, one-on-one discipleship, I recognize that training in specific topics is extremely important for spiritual, emotion, professional, and personal development.

Covenant Peers

Having a group of covenant peers to do life together with is one of the pinnacle aspects of true, deep community. Providing accountability, encouragement, prayer, wisdom, and fellowship for a lifetime, covenant peers are essential to healthy growth throughout life.


God has commanded that we “pray without ceasing”, that we “with prayer and petition, make your requests known to God.” Jesus often took time apart to pray, even though he was himself the God-Man. How much more important then, that I remain in constant communion and communication with God through prayer. Prayer is also a key aspect of relationships with others; I must pray for my brothers and sisters in the faith, as well as for those who have not yet come to the saving knowledge of and faith in Christ.

The Church

The Church is one of the great mysteries of God revealed to mankind in the New Testament. It is in the context of the Church that evangelism, discipleship, service, training, covenant peer relationships, and prayer reach their fullest potential both in the local fellowship of a particular church, as well as the global fellowship of the Church universal.



  1. Scripture Memorization
    • 2 Verses per week according to the schedule in the Scripture Memory Made Easy book
    • Weekly fellowship, encouragement, and accountability with men who share this goal
  2. Discipleship
    • Meeting with Roderick at least twice a month to discuss issues of real importance
    • Meeting individually with two or more kids at Alamo Stone to promote their spiritual development
  3. Regular Exercise
    • Lifting weights twice per week
    • Running 5 miles per week
  4. Pay off $25-30K in debt
    • Maintaining a healthy and minimal budget
    • Working full time with BIF
    • Devoting $2100-2500 per month to debt payoff

PL/Java on Gentoo

  1. Download the PL/Java source tarball from pgFoundry
  2. Ensure that you are not using JDK 1.6
    java-config -L
  3. If necessary, switch to JDK 1.5
    emerge -av “<sun-jdk-1.6”
    java-config -S sun-jdk-1.5
  4. Tinker with the PostgreSQL include files a bit
    cd /usr/include/postgresql
    mv pgsql pgsql.old
    ln -s libpq-4 pgsql
  5. Extract the PL/Java source tarball
  6. Execute make in the PL/Java source directory
  7. If necessary, switch back to your original JDK
    java-config -S <Your original JDK>
  8. Restore the PostgreSQL include files to their original state
    cd /usr/include/postgresql
    rm pgsql
    mv pgsql.old pgsql
  9. Determine the library directory used by Postgres and copy the PL/Java shared object to this location. On my environment this is /usr/lib64/postgresql:
    cp build/pljava.so `pg_config –pkglibdir`
  10. Ensure that the JVM library paths are properly set in /etc/env.d/20java. Supposedly, java-config –set-system-vm=sun-jdk-1.6 is intended to do this, but I don’t buy it. Here’s what mine looks like:
    # Autogenerated by java-config
    # Command: –set-system-vm=blackdown-jdk-1.4.2 



  11. Run env-update
  12. Download the PostgreSQL JDBC Driver
  13. Install the sqlj schema in some database or other
    cd build
    export CLASSPATH=./deploy.jar:/path/to/postgresql-*.jdbc4.jar 

    java org.postgresql.pljava.deploy.Deployer -install -host localhost
    -port 5432 -database mygreatdatabase -user postgres -password

Church Management Systems

Current Solution (Community Church Builder)

Our current solution is Community Church Builder CCB, the site is located here.
The current software has an excellent back-end, but does not provide any CMS/Web hosting. Although it is possible to create a separately hosted web site, there is no obvious way to integrate the CCB backend with an external web application.

This leads to a serious dilemma when we want to have public group websites. It appears to be impossible to publsh group content to the web without requiring any visitor to obtain a CCB login.

The CCB site’s security model seems to be rather weak at first glance. The inability to publish groups without requiring a login is one example, another example is their document management solution. All documents published in a group are completely visible to the outside word regardless of the group’s privacy settings. This is due to the use of an external FTP server for document their document hosting solution. This requires that the FTP site publish all documents as public, snce there is no mechanism for passing the CCB credentials to the FTP server for file download. The license of CCB that we are using will cost us $600 per year, but we are still in an evaluation period.


  • Role-based security, users can be given varying levels of administrative access for Groups or the Church as a whole


  • No webhosting/integration with externally hosted website.
  • No hosting of documents, this means that document management does not leverage the CCB security model.
  • Groups canot be organized hierarchically, all groups appear at the same level

New Solutions

We found a website that provides an extensive searchable/filterable list of Church Management Software. We have begun to evaluate some alternative software that might be more feature-rich than CCB. We have created a matrix of features for some various web-based solutions here.


The first software package that we investigated in depth was Ascribe.


  • Hosting plan includes Webhosting/CMS
  • Hierarchical groups
  • Unlimited public webpages for groups


  • A bit more costly ($125/mo for first 200 regularly attending church members).
  • Only 1GB of webhosting space in the standard base plan



Other Churches’ Solutions

We have also investigating church websites that are very slick, and/or include features/design patterns we wish to replicate.

South Side Life

At the 2007 Internet Ministry Conference, Tom and I went to a seminar in which a church group from Chilliwack, British Columbia demonstrated their church site South Side Life. They have a number of good ideas for their site:

  • Including community-related content on the church site to increase traffic
  • Microsites for community interests such as hiking that link back tot he church site and drive up traffic ans search engine rankings

New Hope Chruch

New Hope Church essentially created the foundations of the Ascribe church management system back in 2001.

  • Church classifieds system called iNeed
  • Internet Church Campus provides a chatroom, live video feed of the service, etc.
  • Video feeds of sermons with side-by-side notes

More Sample Church sites

Christian Life Center
Faith Developers
Calvary Chapel
Lakeside Church
Lakeside Life
The village church
10 must see sites

Church site design help sites

CMS Matrix

A faily in-depth feature comparison specific to donor/financials trackign has been compiled by the makers of the Soul Management system here.

We have reviewed a number of web-based software packages:


Software Package Price (Annual) Licensing Webhosting Group Organization Group Website Contributions Management
Community Church Builder $600 Site License None Flat Private/Non-extensible Yes
Ascribe $1500+ By Membership Yes Hierarchical Public/Full website Yes
Kingdom Tools Unknown Site License Templates/CMS Unknown No Support? Yes
IconCMO $304+ By Membership None Heirarchical No Support Yes
Arcturus Web Systems $660+ Per Module Templates/Custom Unknown No Explicit Support No
ChurchDB $120+ By Membership/Per Module Unknown Hierarchical Unknown Yes: Integrated Online Giving
Church Ledger $72-420 Open Source Available Unknown Unknown Yes
Church Membership Online $113+ By Membership Included/Not integrated Flat No Support Yes