Tuesday, December 29, 2009

Comparison of issue tracking systems on Wikipedia

Comparison of issue tracking systems - Wikipedia, the free encyclopedia

Not a lot of pretty Java based bug tracking systems out there. Several are proprietary or "free for non-commercial use". I've heard about JIRA, but in most environments I work in (work/home) I want to use an open source issue tracking system.

So Bugzilla and Mantis are there. I've used Mantis lately due to it's easy setup on a Windows machine. Not too sure I want to dig into Bugzilla yet since there are several steps including ActivePerl setup. Looks kind of crazy and I'm suppose to be getting a new laptop in Q1. :)

Google Chrome Extensions: Blog This! (by Google)

Google Chrome Extensions: Blog This! (by Google):

Nice extension. Works nice with one Install caveat:
"At first, could not install with '4.0.249.43'. Receive error: 'could not move extension directory into profile'. Then goto Wrench->Options->Under the Hood->Downloads and check ON 'Ask where...'. Everything worked then."

Test from ScribeFire

Just want to see if this works from the new ScribeFire plugin I installed in Firefox 3.5.6.

Flush DNS

On a Windows machine (I’m on Windows XP) run the following to flush your DNS cache:

ipconfig /flushdns


Nice to know. At one time I thought you could stop/start a couple of Windows services, but that just causes headaches. :)

Monday, December 21, 2009

Upgrade NetBeans from 6.7.1 to 6.8

 

  1. Step 1 - What I’m installing
    1. Basic Java stuff with Sun Glassfish Enterprise Server
      1. not Java ME
      2. not Groovy
      3. not Tomcat (I’ve got other installations on my machine)
        image
  2. Step 2 – Accept terms
  3. Step 3 – Installation Location
    1. I’ve selected C:\DevelopmentTools\NetBeans 6.8 for my install folder
    2. Selected JDK 1.6
      image
  4. Step 4 – Install Glassfish
    1. Install to C:\DevelopmentTools\glassfish-v3
      image
  5. Summary
    image
  6. Press Install and wait for the install.
  7. Once complete, I started NetBeans 6.8 from my desktop and imported my settings from 6.7 when prompted.

Google Chrome Beta

I upgraded my Chrome browser to the Beta version (4.0.249.43).  Some of the issues I had in 3.x have gone away.  Mostly things like collapsible elements.  So far it’s working ok.

Thursday, December 10, 2009

Installing and Running Development Tools and Software Locally

I’m a big fan of running certain software locally for several reasons.

  • Test and try to see if it’s something you think the organization would need.
  • Keep track of your own information (notes, dev issues, etc.) to help improve your efficiency.
  • Learn.  You can learn a lot just by installing the software, configuring it, and running it.

Management and the corporate IT departments typically don’t like you doing this because

  • it alters the machine from the standard image.
  • they don’t want to have to support it
    • FYI, I didn’t ask for you to support it. I’m a developer with the knowledge to do it.
  • Security risks
    • Understandable, but I don’t install software from John Doe that I found on an obscure website that hardly gets used or tested.  I’m installing well respected software with a large user community.  It’s already been tested and put through the hoops.  If a malicious piece of code was to be placed in the software, the project would get red flagged everywhere.

Software I run locally:

  • Tomcat for
    • Hudson
      • To evaluate and test several build processes
    • JSPWiki
      • To document what I learn on the job
      • Possible Java project that I would like to get involved with
  • XAMPP Lite (Apache, PHP, MySQL)
    • Mantis
      • Try and test
      • Document issues and how I resolve them.
  • SQuirreL – SQL Client

 

The role of a software developer or engineer is more advanced as you learn and grow.  In the end, isn’t it to make life easier for others by simplifying their life or automating tasks?  Some software makes my life as a developer easier.  New software is developed to do this and I feel we need to evaluate and learn about the options to make better decisions.  Moving forward so to speak, rather than staying in one spot.  There’s a reason we aren’t using typewriters as much (or at all?) anymore. :)

Tuesday, December 1, 2009

SQuirreL issues

I’m running some pretty basic SQL and SQuirrel seems to be locking up a lot today. Do I just need to reboot Windows. :)

Well it’s happened a couple times today, so what I did was use the “Reconnect” menu option under “Session”. But I just tried that and now it’s locked up still.

My hope is that I don’t have to stop the java process because I have some queries I’d like to save. I’m not able to get to the GUI at all right now.

20 minutes later….yes, 20 minutes.

Everything is unlocked and GUI is responding. no error messages or indication of what went wrong. Query (modified) that I used.

   1: delete from table1 where field1 = ? and field2 in 
   2:     (select field2 from table2 where field3 = ?)

Monday, November 30, 2009

SQuirreL Upgrade from 3.0.2 to 3.0.3

I just got notified in the GUI that this upgrade was available.  I started the upgrade process and received a list of Artifacts that will be upgraded.  I looked through the list and decided to add a few extra ones (sybase, mysql) and clicked Apply Changes. 

image

Once the JAR’s were downloaded, I was told that the changes would take effect once I restarted the application.  So I exited the application and then started SQuirreL back up.  Another prompt to verify that I want to upgrade, and then some backup’s occurred and we’re off and running.

 

First time I’ve done an upgrade for SQuirreL.  Smooth process for me.  And still a great tool.  Check it out. http://squirrel-sql.sourceforge.net/

Friday, November 20, 2009

Local Subversion

I installed Subversion and TortoiseSVN on my development machine a week ago today and I must say I am very pleased with the results.  Easy to do, easy to use.

I would highly suggest using Subversion locally if you are not already. The ability to change any file, then commit or revert is very nice when you want to make a bunch of changes but not sure if you will use them again. 

TortoiseSVN also comes with a diff and merge tool that is easy to use. The Diff tool can also be used with files that are not in a repository.


Serena Version Manager

Now…….the development shop I work at uses Serena Version Manager.  So did the previous company I worked at.  I’ve actually used Version Manager for a long time now (not by choice) and even though it’s undergone a lot of name changes, it has increased in performance over the past 6-8 years.  I still don’t like it.  It’s very slow and works as a tool, but it would not be my first choice.  I’ve used CVS and Subversion and like them both, both for ease of use, power, and definitely great speed.   I don’t yet have a preference over CVS vs. Subversion, but perhaps someday I will.  :)

Why do I mention this?  Well, I still have to use VM for the projects I’m on.  I sync my local environment every night (using Hudson/Ant), then I can visually tell in Windows Explorer (because of TortoiseSVN) which items have changed.  I can then revert them back or Commit the changes to Subversion.  

What if a file changes in VM and I’ve been working on it locally?  Well my VM get only updates the read-only files on my machine.  I still have to check the local error log for “Could not complete the action because the workfile already exists and cannot be overwritten.” meaning that a newer revision was found in VM and the local copy couldn’t update because it’s writeable. 

JSPWiki is a wonderful tool

For a long time I’ve wanted a tool to help with general documentation on projects, coding, ideas, “things I’ve learned”, tips and tricks, and on and on.  It’s nice to have something at work to do this with, because frankly, I learn a lot of little things to help me in my job that sometimes I just forget.  And is there a possibility that someone else has learned those same things? yep.  Maybe they want to write about or tweak the same things I’ve documented.

Try a Wiki for your development team.  Whether it’s Java, PHP, or something else. Give it a try. I work in a Java shop, so I looked a almost went with a PHP based solution (because I work in PHP as a hobby), but decided it would be best to go with a Java solution.  Side goals regarding this include perhaps someday contributing back to the project.

I found JSPWiki. What Java based Wiki’s have you found?

JSPWiki is fairly straightforward to setup.  I’m running it in Tomcat 6.0.18.  I don’t suggest auto deployment, since the configuration information is stored in WEB-INF/jspwiki.properties and could easily be lost in an upgrade.  So I unzipped to the webapps folder and versioned the files with Subversion.  Easy enough.

What I did:

  1. Unzip WAR to the TOMCAT_HOME/webapps folder.
  2. Open a web browser and request “http://localhost:8084/JSPWiki/Install.jsp” (verify your port; watch the case on Install.jsp)
  3. Enter the config parameters making sure you enter at the very least the “Page storage” parameter.  Otherwise pages are stored in the web app folder
    image
  4. Enter the other parameters and press Configure! at the bottom of the page.
  5. A page will be displayed to enter an ADMIN user.  After this, you will have to be logged in as the admin in order to see the Install page again.
  6. UnZip “JSPWiki-corepages” for your language in the directory defined by “Page storage” above.  This is just a bunch of starter and help pages.
  7. Start editing your Wiki.

There are some plugins available for it. http://www.jspwiki.org/wiki/JSPWikiPlugins

You can use the triple braces for code, or you can install the plugin Code2HTML, giving a little better visual for code;  There’s a special syntax to use, but it’s nice.

JSPWiki-Install Code2HTML Plugin

Wednesday, November 4, 2009

Hudson for Continuous Integration

Well I've been working with Hudson for about…a day and a half. I had it up and running in about 5 minutes or so (including my first task). I easily added a few plugins, configured the SMTP mail server to get build fail notifications, and set the HUDSON_HOME to the dir of my choice. This is where the projects are located and build information is stored.

Comparing Hudson to CruiseControl, a CI tool I've used for a long time now, is not something I'm ready for yet.

CruiseControl is very powerful and has lots of features, but with the experience I've had with it, it's all done in an XML configuration file.

After the install of Hudson, all configurations are done through the web app. I get a message (in "Manage Hudson") when there is a new version of Hudson, and then I can download the WAR, deploy it and I'm running again. No need to merge or do anything special for that (that I've noticed so far).

Looking forward to more with Hudson. Great tool.

Thursday, July 16, 2009

Onward with Java Coding

I’m helping keep my Java coding up to par by building a JSF app called MyMovies to help catalog the large library I have. Technologies I am using:

  • Hibernate
  • JSF
  • Struts?? – not sure on this one yet.