ConradDecker.com

Random ramblings of this Jax Beach based software developer


ConradDecker.com is the online playground of, you guessed it, Conrad Decker. He's a small business owner and web developer located in the Jacksonville, FL area.

I read a blog post the other day on the LessEverything blog,  and it got me thinking about how many sites are out there that are great sites that I don’t look at regularly, or that I’m completely unaware of. It struck me that I was probably missing out on a bunch of really cool stuff. I’ll admit that I’m not much of a fan of reading, but I do love technology, and everything related to the web. It’s constantly changing, and constantly moving forward so it’s very easy to fall behind. So what does one do?

I wish things were a little different, but down here in Jax we’re not exactly the technology hub that I was in the middle of when I was in DC. There are so many ridiculously smart people there, and I was constantly surrounded by them. Don’t get me wrong, there are a number of very intellectual people here as well, but they are more scarce. (A little disclaimer: there are probably way more then I’m aware of - I just haven’t met them yet. I’m working on that.) That being the case I really try to do whatever I can to stay on top of trends, new technology, and new businesses. To do this I depend on my RSS feeds. With Google Reader, I’m able to get access to my feeds anytime anywhere - it’s awesome. Below are some of the feeds that I read regularly, but I’m curious what other people read to stay up on everything, and how they get that information. Let me know.

  1. AdAge Digital (http://feeds.feedburner.com/AdvertisingAge/Digital)
  2. Code Igniter News (http://codeigniter.com/feeds/rss/news)
  3. Ogilvy PR 360 Digital Influence (http://feeds.feedburner.com/360DI)
  4. WebResources Depot (http://feeds.feedburner.com/webresourcesdepot)
  5. Obie Fernandez (http://feeds.feedburner.com/obie)
  6. Official Google Blog (http://googleblog.blogspot.com/atom.xml)
  7. Google Data APIs Blog (http://googledataapis.blogspot.com/atom.xml)
  8. Google Mobile Blog (http://googlemobile.blogspot.com/atom.xml)

So…what do you read, and how do you read it?


Phew…I’ve finally cracked the craziness that is installing Zend Studio on a 64 bit linux architecture!

I recently purchased a new computer, a computer that I’ve been so excited to setup and get running in the new office. Unfortunately, it’s taken me much longer then anticipated as I’ve decided to make the jump to running only Linux as my OS. Don’t get me wrong…I’m still planning on running a virtualized Windows, just in case I need it for anything, but I’ve been wanting to make this jump for a little while especially since I spend about 95% of my development time navigating through linux.

I definitely met some struggles along the way, some that I’ll probably document here as I have time, but the most recent struggle that I came across, was installing Zend Studio. I’ve installed Zend Studio on linux before, but I was unaware that there wasn’t a 64bit distribution. In an effort to document my steps in case I need to do this again, and also in hopes of lending a hand to other individuals out there that are having the same problem - I figured I’d blog about it. So without further ado - here are my instructions on how to Install Zend Studio for Eclipse version 6.0.1 on a 64bit Fedora Core 9 machine. For the abridge version - scroll to the bottom of the page.

Before I realized ZS didn’t come with a 64bit version, I downloaded the installer and gave it ago. Only to get the following output.

Preparing to install…
Extracting the JRE from the installer archive…
Unpacking the JRE…
Extracting the installation resources from the installer archive…
Configuring the installer for this system’s environment…

Launching installer…

‘SWING’ UI not supported by VM. Reverting to AWT.
Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)

Stack Trace:
java.lang.UnsatisfiedLinkError: /tmp/install.dir.24722/Linux/resource/jre/lib/i386/xawt/libmawt.so: libXext.so.6: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.load0(Unknown Source)
at java.lang.System.load(Unknown Source)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at sun.security.action.LoadLibraryAction.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.awt.NativeLibLoader.loadLibraries(Unknown Source)
at sun.awt.DebugHelper.(Unknown Source)
at java.awt.Component.
(Unknown Source)
at com.zerog.ia.installer.LifeCycleManager.g(DashoA8113)
at com.zerog.ia.installer.LifeCycleManager.h(DashoA8113)
at com.zerog.ia.installer.LifeCycleManager.a(DashoA8113)
at com.zerog.ia.installer.Main.main(DashoA8113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.zerog.lax.LAX.launch(DashoA8113)
at com.zerog.lax.LAX.main(DashoA8113)
This Application has Unexpectedly Quit: Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)

From there…I looked a little further and realized that there was in fact no 64-bit installer. I followed my tried and true method of googling my problem to see if anyone else ran across the same snafu, at which time I found this site. While, it opened my eyes a little bit, it didn’t help in my process much as I realized it was from 2005. Being a paying customer I reached out to the Zend technical support. They informed me that they don’t support ZS on 64bit architectures, but the gentleman was nice enough to try and point me in the right direction. He told me that ZS should be able to run, as long as I have the 32bit libraries installed. I wasn’t overly impressed with their support as they weren’t very helpful, but I did appreciate the pointers.

At this point I was getting a little pissed, why couldn’t this be easier? I knew jumping to Linux was gonna be a pain, but I needed to get this working otherwise the computer was pointless to me. Back on the horse…

A little bit of time went by before I was able to find someone else who was having similar problems. I came across this site, and noticed Josh was getting similar errors - by the way, thanks so much for posting your experience Josh it was definitely helpful. While I was actually taking tiny steps in the right direction, Josh’s solution to the error was to install the ia32-libs which don’t exist for Fedora - so I had to figure out what the equivalent of those were.

More googling led me to this thread on the Fedora Forums. I followed those instructions paying specific attention to the last post regarding editing your “/etc/yum.conf” file and adding “multilib_policy=all”. After following these tips, I was able to install the libXtst.i386 libraries, but I still got errors when I tried to run the Zend Studio installer. Errors about loading shared libraries blah, blah, blah. At this point, it’s obvious to me that this isn’t going to be an easy transition to Linux. However, I didn’t know everything about Windows when I first started either, so I’m attributing all of this to a learning experience :-)

After my most recent error - I hit Google again using this search. That, of course, led me back to a thread on the Fedora Forums. I know it doesn’t look like it’s related because it’s based around getting flash working on a 64bit version of FC9, but don’t leave yet. The last piece of information that I needed came from this post on the thread - where stevea states that the file /usr/lib/libgtk-x11-2.0.so.0 is missing and we’ll need to install the gtk2 libraries by running “yum -y install gtk2.i386″. After doing that I tried running the installer again - and VOILA!! I had Zend Studio for eclipse running on my 64bit version of Fedora Core 9. PHEW!!!

Okay…so where does this leave me on my feelings for my transition to Linux? Well, I’ll be honest…it makes me a little nervous. I am worried that if I move away from windows totally, that I may run into some issues along the way with Linux that I will have to figure out, and may take some time for me to nail down. However, I must also say that I’ve been using Fedora Core since version 3 and I’ve really liked the progression. As I become more and more engrained in Linux during my daily work - I know I’ll be pumped to finally escape the expensive grasp that is Microsoft. For those of you that are looking to make the jump - I say go for it, as long as you’re up for a learning experience. Overall though, Linux probably isn’t quite ready for the casual desktop user…YET.

After all of that talking, here’s my abridged version for those of you trying to install Zend Studio for Eclipse on a 64bit Fedora Core 9 installation.

  1. Install Fedora Core
  2. Download the Zend Studio installer from the Zend.com website.
  3. Make sure that you’ve got all of the necessary libraries installed.
    • Modify /etc/yum.conf by adding multilib_policy=all to the bottom of the configuration settings, but above the repository listings.
    • Install the libXtst libraries by running yum install libXtst.i386
    • Install the gtk2 libraries by running yum -y install gtk2.i386
  4. Install Zend Studio by running ./ZendStudioForEclipse-6_0_1.bin

And that should be it, you should get a gui for the installer that will walk you through the installation process. I hope this helps anyone that reads it.


New iPhone

May 14th, 2008

Yup…I did it, I broke down and got a new iPhone. While I’m very excited about it, I’m hoping it is all it’s cracked up to be. Yes…this was my first trip to the local Apple store, and yes my friends made fun of me for it.

Overall I’ve been pretty impressed with this little guy. The first thing that I noticed that I really enjoyed was the interface. So many of the small little touches really make it super easy to use. As I’ve started giving more thought to usability in everything I do, I realize that Apple is by far one of the best in the business. They’ve got some amazingly talented UI guys. I’ve only hit one point where I’ve thought to myself, there’s gotta be an easier way to do this - that was when I was going to dial a person in my contact list. Currently there’s no easy way to do a search for a contact, you have to manually scroll to a name and click it. I may be missing something here, but my old Treo was pretty simple when it came to that.

I’m looking forward to playing with it some more over the next couple of weeks, and I’m really interested to see what happens when we’re able to install third party apps. My biggest wish is SyncML capability with push PIM & E-mail functionality. I’ve successfully been able to setup my own Funambol server, and sync my contacts that way (yes - a quick jailbreak allowed me to install the Funambol iPhone client, but it’s not nearly as robust as the Treo Funambol client that I was using before). I think it’s a result of the underlying syncevolution package - but I’m sure there will be plenty of solutions when we’ve got access to install our own applications.

I will certainly be sure to post follow-ups on my progress with the phone as well as any compliments or issues I come across.

Nice job Apple - so far, your phone is pretty sweet!

P.S. - After jailbreaking my phone to see what it was all about, I got to play with some of the inners of the phone. I found it pretty cool that I could SSH into my phone and work my way around. For those that haven’t tried it, and have that little geek in them - JUST DO IT, you can always restore back! :-D


I’m going naked for a day!

March 31st, 2008

Okay…not me personally, but ConradDecker.com will be showing off it’s <body> for 24 hours.

On April 9th, 2008 ConradDecker.com will be participating in CSS Naked Day. The soul purpose of this day of nekkidness is to promote, and help spread the word about, web standards.

CSS Naked day originated back in 2006 when Dustin Diaz thought it could be a fun way to get the word out. It has since become an annual event. I haven’t seen as much buzz about it this year, but I did come across this article on xhtml.com. So, in an effort to support the standards movement I’ll be naked as well.

There are some really good articles out there about why utilizing web standards is the way to go, so I’m not going to rehash all of that. I will tell you though, that as I’ve become more and more involved with moving all of my sites to be XHTML compliant I’ve seen how beneficial it truly is.

I’m sure there are those individuals out there that are thinking that this is totally going to confuse what few visitors that I have to this site, but what better way to get the word out then by having them ask what’s going on?

So, I’m going naked for a day - who’s with me?


So…I started a write up on CodeIgniter (my favorite PHP Framework) earlier this week, but I haven’t gotten around to finishing it just yet. I’ll look to get that pushed out soon. Yesterday though, I had a run in with a rather frustrating web accessibility issue that I thought I’d share. Not necessarily because it’s uber important, but more because it’s something that frustrated me, and that I’ll surely be keeping an eye on now. :-)

As a web developer, and a pretty recent advocate of the standards movement, I find myself giving more and more thought to web accessibility over various mediums. As I build a site, I’m always thinking about who could be visiting the site, and how they’re viewing it. My two most common thoughts are - what will this look like on a mobile device, and how will this look to a search engine. There are obviously plenty more to consider (screen readers, low resolution monitors, etc) but I’ll save those for another conversation.

A back story as always…I’ve been contemplating switching from my Palm Treo to the iPhone for a little time now. While I really feel like the iPhone kind of goes against my open source beliefs, I realize that it would be incredibly helpful in making me more efficient. Until I can get Android up and running on a phone, it’s probably the most cutting edge phone out there. But I digress.

So, I’m driving home after work yesterday, and I wanted to check with Verizon to see when my contract expires. If I’m gonna make the switch to the iPhone, I’d rather not pay the contract cancellation fee. I’m sitting in traffic, so I pull out my Treo and fire up the browser to look up their number. I realize it’s a little slow to load, but that’s no big deal. When the site finally comes up, I’m kind of excited to see the “skip to content” link at the top of the page. Sweet, maybe this isn’t going to be a painful process. I’m not gonna have to trek through a ton of navigation images to get to the information I need. I find the link to the contact us page, and click on it. After another short wait, the contact us page comes up. Again…I click on the “skip to content” link and realize they’re asking me for my zip code. To begin with, this is something that always frustrates me with the Verizon website. WTF? I just want a way to call you - what on earth do you need my zip code for? Oh well, lucky for me I’m pretty comfortable on the Treo keyboard. I type in my zip code, and I start navigating to find the submit button. hmm…I don’t see it. I look around for a couple minutes and it’s nowhere to be found. What the…I can’t give you my zip code, which in turn means I can’t get a number to call you. All because your website wasn’t prepared for a user like me? I think that’s kind of shoddy. As much as you guys charge me for my phone bill each month, you’d figure you’d have someone somewhere QA’ing your website and making sure that everyone can get to the information they need. Verizon Wireless - I think you’ve failed.

Point of the story…don’t always assume that everyone will have a full featured browser when they’re looking at your site. More and more people are turning to their cellphones to find information online. If they can’t get the information they want, it’s likely that they’ll get pretty frustrated.

I do realize that this could be a plot to keep me from ever switching my service to another provider, but I’d like to think it’s just an oversight on Verizon’s part.