I have been going through a hell of a time at work trying to implement new enterprise grade software. As before, the environment I am working in is completely foreign to me. For S******’s L****** portal, the software loadout is Java, and XSLT inside of Apache Tomcat contained inside the uPortal framework wrapped inside their own solution. It sounds complex, and for good reason. It has taken me weeks to even chip the ice of developing channels.
To add to this complexity, for better or for worse, I have decided to trade out Visual Studio for Eclipse. The reason is that Eclipse’s support of Java puts Visual Studio to shame, as to be expected. Visual Studio is aimed at C# and Visual Basic. (*shudder*)
Creating these channels meant modifying a Java file on my local machine, and then transferring it to our Solaris box. I would then use a utility called “Ant” to deploy my project into the L****** application. Then, if anything has changed to the package path, or starting class I have to republish the channel, then update the view via the Content Manager. At this point I have clicked around enough that I am forgetting the change that I made, and the result to look for. Now, I have to complete this process by restarting the L****** web application. This takes almost a full minute, as the Apache Tomcat server has to read and parse thousands of java files floating around inside the application. Now, is the part where I have completely forgotten what the heck I changed.
To fix all of this I read, and read documentation and tried to duplicate many of the simpler development environments that the other L****** developers use. My problem however, had nothing to do with my development environment, but my own lack of knowledge. I quickly found myself clicking and praying instead of having a firm grasp of what was happening. And how could I? There are thousands of files that interact with each other in a system so complex, no one person can fully grasp it.
The key? I should have started small, and learned the building blocks of this beast of an application. I should have understood how to compile my Java code on a command line before worrying about the IDE doing it for me. I should have learned how to transform an XSL file before I worried about the Java code generating it. This is exactly what I am doing now. Now, instead of seeing a mountain I have to cross, I can see outcroppings that I can grab with my hands and feet.
It seems that the simplest lessons are the first you forget, and are the only things that can pull you through.