Papervision 3D Trailer
April 28th, 2008
I appreciate this is a little late in terms of the papervision bandwagon, but I only came across this on the tube this morning. A truly awesome display of what the latest version of flash + papervision is capable of:
Geek Honors: Joins Scala Lift Core Team
April 24th, 2008
My appologies; I hardly ever blow my own trumpet on this blog, but I just cant let this one pass without a good old toot of the proverbial horn.
Today I joined the lift committers. That might not sound much, but when you think that lift will be the next Ruby on Rails size phenomenon to hit the development community, thats pretty dang awesome.
I shall toot no more – respect to David and the rest of the other guys on lift core… you freaking rock!
Accessing OSX Network Interfaces From Wireshark X11
April 23rd, 2008
Just a short post for people who might not be sure how to get Wireshark to read the interfaces from your mac…
I had to run the applications as root:wheel to let the X11 interface read the network interface devices. To do the same, just run:
sudo /Applications/Wireshark.app/Contents/MacOS/Wireshark
Then, when prompted, just enter your password (provided you are a machine administrator that is). Wireshark X11 should then boot up and work without problem.
If your on 10.4 you will need to install X11 beforehand
NGINX (Engine-X) Rewrite Rules For CakePHP
April 17th, 2008
I’ve been doing some work with NGINX of late and anyone familiar with CakePHP will know that it ships out of the box with Apache .htaccess files to make sure that the URL’s are devoid of there query string.
Anyway, enough talk, if you want to host cakephp on NGINX, you’ll need to use a vhost like so:
server {
listen 80;
server_name somedomain.com;
access_log /var/www/logs/somedomain.access.log main;
error_log /var/www/logs/somedomain.error.log info;
rewrite_log on;
# rewrite rules for cakephp
location / {
root /var/www/sites/somedomain.com/current;
index index.php index.html;
# If the file exists as a static file serve it
# directly without running all
# the other rewite tests on it
if (-f $request_filename) {
break;
}
if (!-f $request_filename) {
rewrite ^/(.+)$ /index.php?url=$1 last;
break;
}
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME \
/var/www/sites/somedomain.com/current$fastcgi_script_name;
include fastcgi_params;
}
}
Apache CXF Graduates From The Incubator
April 16th, 2008
Today was the day that Apache CXF graduated out of the incubator and will now become a full bonafied apache project. This is such brilliant news as it means that CXF should replace Apache Axis and Xfire as the defaco Java services framework.
Congratulations to Dan Kulp and the rest of the CXF team – all the sterling work has paid off after about 20+ months of rocking development.
I wish them all the best for the future – CXF will be a big hit!
Tutorial: Getting Started with Apache CXF
April 12th, 2008
If you are looking to lean CXF, then you should really read this:
http://www.jroller.com/gmazza/entry/using_strikeiron_s_super_data
It was one of the best written tutorials I managed to find and covers both Maven and Ant compilation.
Kudos Glen!
Java Is Not A Dirty Word...
April 11th, 2008
Strong title I know… It feels like thats how Java is regarded these days – Ruby and Python are becoming the golden boys of programming choice and poor ol’ java is being left out in the cold because people only remember it as having crap costing/license models where you [the developer] needed to pay for everything.
Well, I have good news for you my friends, Java should no longer be a dirty word! The inertia that Ruby on Rails had in the Java community did cause quite a lot of controversy its true, but its almost like after the initial xenophobia had worn off they sat up and thought “you know what, these guys might actually be onto something here”. I recently got into using Maven 2, and god, my good god, its a million times better than Ant, which just sucked so badly I cant explain! For anyone who is familiar with Rake, Maven is like Rake, but with all the package management stuff built right in – it does still have a certain level of entry required, but it just simplifies the process of created projects and managing dependencies in a very streamlined way.
The language itself has evolved quite a lot too – the new annotations are used heavily be JEE apps and frameworks – take CXF as an example; it will eventually replace XFire and Axis2 as the premier SOAP/WebService framework for Java, its a very very powerful tool and pretty easy to use (relatively speaking)
Anyway, I digress… my point is that if, like me, you left Java because the last time you worked with it you were slogging it out with 1.4 and Ant hell, then perhaps its time you took another look? Java has had significant investment as a platform, and there is a hell of a lot of good code out there for doing pretty much anything you can think of. In all honesty, one of the main reasons I have come back to JEE and the JVM in general is deployment – the JVM is very robust, and the containers built of top of it like Resin and Glassfish are being used in very high-concurrency environments and the deployment method via JAR or WAR is just so much more robust than on a platform like Ruby – and thats coming from having spent nearly the past 3 years solidly coding Ruby and doing all manner of deployments!
Dont write Java off – its an amazing platform, so what if its not as easy to get started as with other languages; think long-term, its a language that will grow with you rather than one you might someday reach the ceiling of – or just find incredibly annoying when the application dispatchers crash for a past time ;-)
Over and out
One Click Installer for Apache Maven 2.0.8 on Mac OSX
April 10th, 2008
I have put together an all-in-one installer for Apache Maven 2.0.8 and Scala 2.7.0-final! Just download the installer, be it on 10.5 or 10.4, just download the right distro for your operating system and then follow the installation procedure.
The installer will then automatically append all the right shell variables to your $PATH so they will be freshly available from the terminal – splendid.
You can find the all in one maven installer for OSX here
Any problems feel free to get in touch.
New Download Section on timperrett.com
April 9th, 2008
Well, I finally pulled my finger out and put together a download section on my main site – I have included a couple of different packages right now, but I should be adding stuff up there on a fairly regular basis so stay tuned listeners!
You can find my new download section here
How to use rails 2.0.2 without a database
April 9th, 2008
Step 1
Run the rake task to freeze rails 2.0.2 into the project so your not reading from gems:
rake rails:freeze:gems
Step 2
Remove the database.yml file from RAILS_ROOT/config/
Step 3
Change line 21 in RAILS_ROOT/config/enviroment.rb to:
config.frameworks -= [ :active_record ]
Bobs your uncle, that should be it!
Cross Platform Language Mashups Are The Way Forward
April 5th, 2008
With new cross-language mash ups appearing all the time with things like JRuby and Jython it makes me wonder where all this is going? Will we have J2EE apps deployed alongside dynamic languages all within the same container, all capable of leveraging the awesome JVM runtime? If so, then wow, thats an awesome proposition. Pretty much every language you can think of is now deployable within a java container – its even possible to deploy .net applications via mono!
Perhaps people will start to standardize on the JVM as a platform – all this constant fighting over runtimes, platforms and environments makes work for the developer and architect extremely difficult; we want to keep up with the latest developments, but it just makes it so difficult to do that with all this chopping and changing.
Anyway, things I think are going to be seriously hot this year are:
Lift Framework and Scala
We’ll see how things play out over the next few months, but whatever happens, its going to be exciting to see how all these technologies interact with each other – which fizzle out and which go on to achieve wonderful things.
Updated XMPie / Merb Extension for Merb 0.9.2
April 3rd, 2008
Just a quick note that I have refactored the code base for the XMPie ICP extension for Merb 0.9.2 and added some extra cool things that are inherited by the ICP subclasses.
Now, its possible to add validation into the model subclass. Lets say we have a feild defined in our uPlan called ‘email’ and ‘user_name’. I need the ‘user_name’ field to be required, which you can now do like so:
class Visitor < Xmpie::Icp::Base
validates_presence_of :user_name
end
# in your controller...
@visitor.valid? # => true if has a user_name, otherwise false
All exciting stuff! When XMPie make ICP a more viable persistance tier, then this will no doubt be the quickest and slickest way to implement front ends in. Furthermore, with the Engine Yard team working on mod_rubinus then we should see ruby web application performance finally get where it needs to be.