authored by Wayne Witzel III

Migrating to Blogofile

On December 16, 2010 In personal Permalink
Because I am a lemming and everyone else is doing it, I too am going to migrate to blogofile! Then I'll blog about doing it!
Read and Post Comments

Moving by blog back!

On December 16, 2010 In personal, updates Permalink
ok, combining personal blog and tech blog was a bad idea. I didn't realize there were some many people following each that were completely uninsterested in the other one. So after some thought, I will be bring back all my Tech posting to pieceofpy.com My personal stuff will now be on Riotous Living! which is a much better platform for all the crazy stuff I do that isn't tech related. Thanks for putting up with all my shifting and moving around!
Read and Post Comments

What I Look For In A Job

On January 20, 2010 In personal Permalink
So I'm currently looking for new work and I've defined my list of items that are high priority to me. I figured I'd list them here and then break each down in to a little detail. Mainly because I'm up late at a stopping point in some code and haven't updated my blog in forever.
  • Refreshing
  • Excitement
  • Vision
  • Caring
Refreshing What do I mean by refreshing? I mean a company that isn't doing what everyone else. Something that isn't YAIC (Yet Another Internet Company). For me, this can really mean two things though. It could also mean a company that produces software for an industry I've never worked in before, but ideally it is a company doing something new, innovative, and refreshing. At the end of the day, writing software for them makes you go "Ahhhhhhhhhh". Excitement I want everyone in the company I am working for to be jacked about working there. I want people to be excited about the products. Even if they are boring everyday products. If everyone there is excited about them and cares about them it promotes a much better work environment and in my experience a higher quality product. Vision Here's where we are. Here's where we are going. Here is how WE are gonna do it. This seems as one of those things that is so easily over looked once you're out of lets keep this startup from dying working 100 hours a week mode, but even for established companies this is so important. Without a vision your company will eventually end up stuck in the mud. Caring This is more in the human respect. We are sometimes at work more than we are at home. This is especially the case with small companies and start-ups (and even some big ones). Companies that care, have employees that care. Treating employees like cattle will only result in employees treating the company like a feed station. Every place I've worked that did mandatory start / end times or mandatory OT always had issues getting coverage and had huge turn over rates compared to flex time locations with resources for employees to relax, take breaks, and feel cared about.
Read and Post Comments

I Need a New Theme

On April 09, 2009 In personal Permalink
I want a new theme for my blog. This site runs Wordpress 2.7. So please link your recommendations in the comments. I'd like something simple and clean but a little more pleasing to the eye than this current theme. I've been flipping through the different ones on the Wordpress site, but there is so many and I have no zero skills when it comes to what looks good and what doesn't; I like Christmas colors if that tells you anything.
Read and Post Comments

Jython 2.5 and snakefight for deploying Pylons w/ SQLAlchemy + Oracle.

UPDATE / 13 March 2009: snakefight 0.3 now has a --include-jar option, prefer that to using my hack. After reading P. Jenvey's blog post about Deploying Pylons Apps to Java Servlet Containers I immediately downloaded the Jython 2.5 beta and installed snakefight to give it a try. One of our services where I work is a Pylons based application. It is deployed using paster and Apache ProxyPass. Our main application is written in Java and is deployed as a war under Jetty. So if I can get my Pylons application built as a war and deployed that way, it would greatly simplify our deployment process. [sourcecode language="bash"] $ sudo /opt/jython25/bin/easy_install snakefight $ /opt/jython25/bin/jython setup.py develop $ /opt/jython25/bin/jython setup.py bdist_war --paster-config dev_r2.ini ... output of success and stuff ... $ cp dist/project-0.6.8dev.war /opt/jetty/webapps [/sourcecode] Now I visit my local server and hit the project context. I get some database errors, kind of expected them. So for the time being, I'll be running this directly using Jython to speed up the debugging process. A quick googling of my DB issues turns up zxoracle for SQLalchemy which uses Jython zxJDBC. I install that in to sqlalchemy/databases as zxoracle.py and give it another go. Changing the oracle:// lines in my .ini file to now read zxoracle:// Now it can't find the 3rd party Oracle libraries (ojdbc.jar). [sourcecode] $ cd ./dist $ jar xf project-0.6.8dev.war $ cd WEB-INF/lib $ ls # no ojdbc.jar as expected ... $ cd ~/project $ export CLASSPATH=/opt/jython25/jython.jar:/usr/lib/jvm/java/jre/lib/ext/ojdbc.jar $ /opt/jython25/bin/jython /opt/jython25/bin/paster serve --reload dev_r2.ini [/sourcecode] Now it is looking a little better and it able to find the jar, but still a DB issue, now with SQLalchemy library. Not having a ton of time to investigate, I decide to try rolling back my SQAlachemy version for Jython. Turns out rolling back to 0.5.0 fixed the issue. I'll be investigating why it was breaking with 0.5.2 soon (tm). So now I rerun it, and get a new error. [sourcecode lang="bash"] AttributeError: 'ZXOracleDialect' object has no attribute 'optimize_limits' [/sourcecode] I decide I am just going to go in to the zxoracle.py and add optimize_limits = False to the ZXOracleDialect. No idea what this breaks or harms, but I do it anyway and rerun the application. Success! Every thing is working now. No liking the idea of having to manually insert the Oracle jar in to the WEB-INF/lib and not really wanting to much around with environment variables, I also implemented a quick and dirty include-java-libs for snakefight, the diff for command.py is below. This allows me to pass in a : separated list of jars to include in the WEB-INF/lib. EDIT: The diff I posted isn't needed since I put it on my hg repo. You can grab it from here. So now I am back to building my war. Just as before. [sourcecode lang="bash"] $ /opt/jython25/bin/jython setup.py bdist_war --paste-config dev_r2.ini --include-java-libs /opt/jython25/extlibs/ojdbc.jar running bdist_war creating build/bdist.java1.6.0_12 creating build/bdist.java1.6.0_12/war creating build/bdist.java1.6.0_12/war/WEB-INF creating build/bdist.java1.6.0_12/war/WEB-INF/lib-python running easy_install project adding eggs (to WEB-INF/lib-python) adding jars (to WEB-INF/lib) adding WEB-INF/lib/jython.jar adding Paste ini file (to dev_r2.ini) adding Paste app loader (to WEB-INF/lib-python/____loadapp.py) generating deployment descriptor adding deployment descriptor (WEB-INF/web.xml) created dist/project-0.6.8dev-py2.5.war $ cp dist/project-0.6.8dev-py2.5.war /opt/jetty/webapps $ sudo /sbin/service jetty restart [/sourcecode] And presto! I am in business. My pylons application is deployed under Jetty and all the selenium functional tests are passing. I am sure there is probably a easier, neater, or cleaner way to do all this, but this was my first iteration through and also my first time ever deploying a WAR to a java servlet container so all in all I am happy with the results. Performance seems about the same as when running the application with paster serve, but Jetty does use a little more memory than before (expected I guess).
Read and Post Comments
Next Page ยป