Online Chat

Use the window below to chat with me (if I'm online ...)

Use the edit nick field above to let me see your name.

cazh1: on Business, Information, and Technology

Thoughts and observations on the intersection of technology and business; searching for better understanding of what's relevant, where's the value, and (always) what's the goal ...

Friday, November 04, 2005

Digging into open source for a New Big Project leads to Yak Shaving

Digging into open source for a New Big Project leads to Yak Shaving

Well, it's been over a year since I started this site / blog, and it's about time I listen to my own coaching, and dig into some new technology, and get my hands even dirtier with Open Source. I have an idea for a New Big Project, something to keep me busy through the upcoming winter months, but I need to stop looking at the cool new toys I'm going to open up, and think through my basic toolset.

<takeaway> Remember, dear reader, a fundamental philosophy of this web site - if you can't do IT "stuff", even on a small scale, how can you credibly pitch to the business, manage creative and talented people, and/or understand when the sales reps and consultants are shoveling it? </takeaway>

Cursory examination of MediaWiki (my first Wiki! New Big sub-Project #3) and WordPress (swap out from Blogger! New Big sub-Project #2) leads me to believe I'll get exposed to lots of "stuff", but I'll be able to get some basic web apps up with a reasonable amount of effort. The key thing that I now realize is that the ongoing maintenance of the content is where all the magic is - so, I've got to handle some nagging issues I've been off-and-on with re: my existing site / content.

<aside>Here's where the yak-shaving really kicks into gear - an explanation of the term, from a posting by Godin.</aside>

For example - the whole push-to-production model I have in place is slightly kludgy. That, and the fact that I've switched primary machines - just means I have to re-open my Eclipse notebook (integrated development environment! Big sub-Project #1) and get the latest installed, see if the basic web / HTML development tools and process have been updated. I went back out to eclipse.org to grab the latest ; no reason to maintain local copies when the latest and greatest is easily accessible. Since the last time I went through this process, the version has updated from 3.0.2 to 3.1.1, so I'll have to add a version check process ongoing.

  • Note that I need a Java runtime environment; that piece is a bit more stable, does not seem to go through the version update cycle as fast as Eclipse. I went with Sun Microsystems, just to needle IBM a tad.
  • I remember last summer installing the basic environment, then finding the Web Tools project - and that download / install seemed to re-install the basic package. However, I've also figured out the Eclipse Update Manager (UM), a much nicer way to extend the basic package. So, after the standard 3.1.1 install, I used UM to grab the Web Tools Platform components.
  • Unfortunately, I still didn't get the key piece I needed - FTP-WebDAV, so I can push to production from inside my Eclipse IDE. I finally found the module here (scan down to where it says FTP and WebDav support); hmmm, had to install that "manually", I can't seem to see this on any update sites (accessible via UM).
  • PHPEclipse is a nice set of plugins for Eclipse, especially since PHP is the language underneath MediaWiki and WordPress. After finding the update site, I pointed UM in that direction and grabbed the required files. When going through the documentation to set up my first project, I realized I needed ...

<aside> Here's where the yak-shaving really kicks into gear - an explanation of the term, from a posting by Godin. </aside>

  • ... a nice, full-featured development server environment on my local machine. To pull this off, I am installing XAMPP - a sweet little Apache distribution containing MySQL, PHP, and Perl. I'm getting rid of IndigoPerl and switching to this collection. This is awesome - I'm going to be able to install all of these applications, develop and debug wherever I want - even detached from the Internet - and "push to prod" (production) whenever I want.
  • At first, I wanted to skip the installation of all of the XAMPP chunks as services - why waste the memory / processor thru the day? I also (thought) I wanted to be able to control the services from within Eclipse. After hacking away at that approach for a while, I remembered that previous experience with Visual Studio and Source Safe made me realize that the 100% integrated IDE idea was a bit overrated, and usually somewhat clunky. Also, I'm going to want to implement a local wiki for my own "knowledge management" - so, I leverage the XAMPP control panel and have MySQL, Apache, et al loaded and running at all times.
  • I've set up multiple VirtualHosts on my machine, and sepnt a huge chunk of time getting the SSI feature to work. Found this section in the http.conf file, had to commnet it out to get everything to work.
<Directory/>
Options FollowSymLinks
AllowOverride None
</Directory>
  • In going thru this debug process, I've switched my meme a bit - I have a Crimson Editor project that loads all the critical config files for my development environment, and make all the tweaks and such from that editor. The source code will be aintained from within the IDE.

Enough for now - next steps will be to vet the development cycle and "push to production" for a collection of web sites.

Labels: , ,

<< blog home