Blogs

View all Blogs >>

In the Spotlight - Etienne Studer

Etienne Studer

Sr. Java Developer @ Navis

Etienne Studer is a Senior Java Software Developer at Navis LLC, world-wide market leader of Marine Terminal Operating Systems, based in Oakland. Starting his Java developer career at Canoo in Switzerland, he joined Navis three years ago and has been working on architectural decisions, framework infrastructure, and application development for Navis' next-generation products. Etienne is an expert in UltraLightClient (ULC), IntelliJ IDEA, and TeamCity and has spoken at various conferences and JUGs in California on behalf of JetBrains.























Presentations by Etienne Studer

Productive Web Development with Pleasure

Productivity is about more than just hard work. It's about using tools that intelligently amplify your abilities, speed up your progress, and handle time-consuming tasks for you, so you can focus on the work ahead while having great pleasure writing high-quality code.












Etienne Studer's Weblog
Thoughts on ULC (Ultra Light Client), IDEA, and Beyond


Etienne Studer's complete blog can be found at: http://www.jroller.com/ulc

Thursday, August 9, 2007

TeamCity provides a widget that displays the status of a given build configuration in an arbitrary web page. With a little help by Kir from JetBrains, I was able to integrate the External Status Widget into Confluence.

First, add the following section at the beginning of TeamCity/webapps/ROOT/status/externalStatus.jsp:

<style type="text/css">
  @import
  "${pageContext.request.requestURL}/../../css/status/externalStatus.css";
</style>

Then, integrate the External Status Widget for the build configurations of interest into Confluence:

h1. TeamCity
|{html-include:url=http://tc.xy.com/externalStatus.html?buildTypeId=bt77}|
|{html-include:url=http://tc.xy.com/externalStatus.html?buildTypeId=bt88}|
|{html-include:url=http://tc.xy.com/externalStatus.html?buildTypeId=bt99}|

That's it. Another fine feature of TeamCity.

In Benares, i.e. TeamCity 3, a link will be available that also includes the CSS information as part of the returned HTML fragment and hence there will be no more need to import the CSS style information separately.


Tuesday, July 17, 2007


All tree views provided by IntelliJ IDEA allow you to expand and collapse the entire tree using the shortcuts Ctrl-NumPad+ and Ctrl-NumPad-. You can also recursively expand just a sub-tree using the shortcut Ctrl-NumPad* on the node of interest, which is quite helpful when the tree is very large and you are only interested in a certain portion of the tree.


Thursday, June 28, 2007

This week-end, I'll give two presentations at the SoCal CodeCamp in San Diego. One will be a presentation on IntelliJ IDEA and the other will be a presentation on TeamCity. The majority of the audience will have a Microsoft/.Net background and I'll make sure to highlight how both IntelliJ IDEA and TeamCity are very valuable and effective outside the Java space, too.


Tuesday, June 5, 2007

As a little spare-time project, I developed an IDEA Plugin Statistics servlet. This servlet will give you a graph showing the total number of downloads of one or more plugins over time. For example,

...you might wonder how actively one of your plugins is downloaded and whether it was worth all the effort:
SimpleIntentions

...you might want to compare how often two similar plugins are downloaded before you decide which one to use yourself:
Retrotranslator Integration vs. Retroweaver Integration

...you might be curious how much of an interest there is in some of the commercial plugins:
Code Dependency & Refactor-J

...you might be interested how IntelliJ IDEA is actually used beyond Java:
Ruby vs. Groovy

Of course, the interpretation of the results has to be taken with a grain of salt, but the data is definitely real and updated daily.

The IDEA Plugin Statistics servlet has been developed with IntelliJ IDEA and integrates various open-source Java tools. I will write a little experience report shortly.


Friday, May 11, 2007

Some random thoughts after having attended JavaOne 2007 this week...

Monday evening, there was the G2One mini-conference which was all about Groovy and Grails. Groovy has a lot of momentum and one could feel the excitement in the room. Groovy's Java-like syntax and its first-class integration with the JVM make it very attractive for integration into existing Java projects. An IntelliJ IDEA Groovy/Grails plugin by JetBrains is in an early stage and I bet it will be very slick once completed.

As always, Josh Bloch gave some solid presentations on Effective Java and Java Puzzlers, both including a lot of interesting material related to generics. Bloch's long-awaited second edition Effective Java Reloaded is not yet out, though.

These days, the performance and scalability constraints are shifting from Moore's Law to Amdahl's law and hence writing and testing robust concurrency code becomes really important. There were various talks related to application performance and concurrency and Java exponents like Brian Goetz, Doug Lea, and William Pugh do a great job at making this advanced domain approachable for the Java community.

Fortunately, some of the unbiased hype about Web 2.0 is over and building functionally rich user interfaces is again more relevant than having graphically rich user interfaces. This was also reflected in several interesting and very well attended presentations on enterprise Swing applications. Many enterprise Swing applications share the same challenges regarding code design and architecture and it looks like there are increasing efforts to extract and consolidate best practices into some standard APIs.

Overall, I think it was a pretty good event this year, not too much hype, some promising frameworks driven by the Java community, smarter tools to support various aspects of development, and some new faces on stage.