A new release of Spring is out. Colin is announcing it Spring 1.1.1 is Out. I am already downloading it. To see whats new check the changelog.
Monthly Archives: September 2004
Groove ’bout Groovy
If you still want to evaluate Groovy maybe this will help you ONJava.com: Groovy, Java’s New Scripting Language.
Then come back and give me a groovy scenario for groovy. Thanks anticipated [blink/].
Analysing class dependencies
I am looking for a tool to analyse the external dependencies of a set of classes. Here is a list of what I have found till now, but if you know others I will be happy to grow up the list:
- Java Dependency Smart Analyser
- Dependency Finder
- JDepend
- Ant Depend Task
- classdep – The Java Package Dependency Analyzer (seems quite dead [sigh/] )
.
Update: sometime later I will revisit this post and put some info about all the links (mines + those contributes – many thanks guys).
Scripting in Ant
Today I had to create an automatic build for a Tuxedo Server. It requires the following steps:
- generate sources from header files
- compile each source with Cobol compiler
- link all obj files into a dll
.
For I moment I have thought that a rapid bat file will solve my problem, but I wasn’t able to figure out how to obtain a list of header files from a directory. I have tryed the following:
set LIST= for %%i in (*.ext) do set LIST=%LIST% %%i
but it didn’t work. After a while I have found out that I should enable delayed variable extensions and the above lines would become:
set LIST= for %%i in (*.ext) do set LIST=!LIST! %%i
At this step I wasn’t sure I want to continue, so I have decided to switch to Ant.
Here obtaining the list of files was an easy one pathconvert did my job immediately. But I have faced a second problem: how should I pass each generated file to the Cobol compiler. The solution I have found (and I don’t know if it the unique one – give me hints if you have) was to use a script task. After downloading BSF and
Rhino in a few lines I have solved my problem.
Again Ant proved it’s a great tool for building projects.
I would appreciate any other possible solution.
Filed under Uncategorized
notebook hapiness
I was looking for this all my life (ehhh… just kidding, just in the last time). It is the best thing I would expect.
Take a look: notebook.
Filed under personalog, Tools
Got to know list
A long list of “got to know”.
And I see it completed on other places :-), so I would like to add 3 more (for the moment):
XXIV+: You need to now how to use mock objects in your testing environment.
XXVI: You need to know how to refactor code.
XXVII: You need to know some enterprise integration patterns.
Filed under links, personalog
programming a cool language or programming to be cool
Wow! I am not working with a cool language. Damn it! My applications are not cool because I use a not-so-cool programming language (Java). My joy of everyday (and sometimes also night) job is gone. I must/will switch to a cool programming language. I think that I will join the guys which developed for 20 years in Cobol finding it very sexy. (don’t take me wrong Cobol guys, in my heart/mind I really appreciate your work).
I am astonished. Talking about a programming language/paradigm to be cool and/or sexy makes me really angry. I really think that some people should talk about having a programming job (I thought for a moment to write programming, but are too many guys pretending to be programmers when they are simple coders) to be cool/sexy (but this times I think are passed too) and not the other way around. I think that if you cannot find the coolness/sexiness in your application (in every piece of code your mind spits out) than maybe you will not be able to find this pleasure in another programming language (but I encourage you to continue to look for it).
Moreover, I have decided now to choose for my future applications the solution according to the coolest programming language poll. I will not design and write applications to best fit my customers, but to use the coolest programming language.
Back to reality. A programming language represents the means to create something cool/sexy. Your application must be cool (and not only from your point of view, but also from the point of view of your customer). Your code can be also your little piece of cool. If you cannot do this maybe there are other things you may want to do instead of programming.
Update: taking such a big decision I have forgot to place some references (they are able to change your life 🙂 ):
Does a tool need to be cool
Ho Hum Java
Java and coolness, a discussion
Filed under personalog
Analysing offshore development
I have read in the last time a couple of articles about offshore development and all of them seem to spread the same fears. Moreover all of them were written from the point of view of a consultant. After some thinking I must say that I cannot agree with some of their points, and I will detail this upon the article Consider The Total Picture for Offshore Development.
The main article argument (against offshore development) is directly the financial one. But, it is very hard for me to believe that some company financial dept. will miss this computation and so involving offshore dev will result in fact in a financial loss.
The computation made is based on the fact that offshore development implies the increase of the work done in the originator company. The over costs involved are: detailing the specifications, proximity to the customer, industry know-how, etc. All of these arguments seem to me pretty fake. Why? Let’s take them one by one and see.
- Detailing specifications. A specification can be understandable and usable from the beggining in which case a good developer will be able to use it correctly, but in many cases the specifications are changing/improving during the project life cycle. These changes are adopted mainly after technical meetings. I cannot see a real problem having a face-to-face or a phone conference in order to establish some further steps. Moreover, some trips of the decision guys cannot brake the project budget.
- Proximity to the customer. Hmmm, I do not think that a developer is in fact responsible with this. The marketing guys have this job and many times they do it much better than a developer may wish to do it. A company which base its relations to the customers on developers does not seem to be a serious company. You cannot ask a developer to sell.
- Industry know-how. When involving offshore development it is not required to use entry level developers. I am quite sure that an experienced and well chosen developer will be able to understand the target of the product on which he is working.
Concluding on aboves I can say that it seems that not the real costs are the problem of offshore dev. Based on my experience I can say that the problems may come from other places:
- communication deficiencies (easily solved if a correct location is chosen)
- cultural differences (same as above)
- national interests/subjective reasons (the IT market in the originated country is decreasing closing too many positions).
Finally, I can proudly tell that I was involved in many international projects which represented great successes (both from the point of view of the originating company and the final customers). I think the offshore development is a good solution for the companies which know how to work in a multi-national environment and in many cases will result in a big success.
Update: I think I should grow up this entry and post it somewhere else to counterbalance the criticism.
Filed under personalog
Foo, Bar and their brothers
I’ve always used for my examples the well-known names: Foo, Bar… and than FooBar. But when reaching the 4th one I always found myself asking for its name. Now I am happy that grace to What’s next after foo, bar? I have found all the guys around Foo and Bar. From now on my examples can be larger and more expresive :-).
Welcome to the gallery: foo, bar, baz, qux, quux, garply, waldo, fred, plugh, xyzzy, thud.
Filed under personalog