The Road to IntelliJ IDEA

When it comes to choosing an IDE for Java development, people usually face a challenge of having to pick one from the three main players: IntelliJ IDEA, Eclipse or NetBeans.

The point of this topic is not to start another “the best IDE holy war”, but to share our own personal experience. Of course, the best tool is the one that gives you maximal productivity and that choice is always subjective. Period.

Originally, almost all of us here at Anotheria started the journey with Eclipse. It was free and did the job pretty well. Everyone got used to it and switching to another tool did not make sense at the time.

Things changed at the end of 2009, when JetBrains open sourced IntelliJ IDEA  and offered a new Community Edition version completely free of charge. Not to try it would have been a crime.

Result exceeded the expectations even of the biggest skeptics. Autocomplete was magical: sometimes it felt like like IDEA knew what statement you wanted to write next. Core editor features, debugger, external tool support  – they were all amazing as well. IntelliJ IDEA was definitely the most intelligent tool we had ever used.

During that time we were transitioning our open source project to Maven. Of course, build tool support was of critical importance. We used M2Eclipse for Maven integration but were hardly satisfied with it. After trying IDEA which had great built-in Maven support, there was no going back.

Today IntelliJ IDEA is the number one tool for us. Not only for Java development. Front-end guys use it for their HTML/CSS/JS work as well. And they are happy with it!

Recently, 14-th version was released. It came out with a number of big new features (improved debugger, built-in decompiler, etc). However, one of the most anticipated additions personally for me was the improved Scala support, which was worth waiting. So now if you need an IDE with SBT integration or want to build your next web application with Play Framework – I would definitely recommend you to check out IntelliJ IDEA.

New access control in ano-site

We often want to restrict access to specific part of an application from some parties. Moreover we usually want to do it with high flexibility at runtime, don’t we?

With the recent release of ano-site (version 2.4.1) we’ve added a brand new access control mechanism based on the ano-access framework. The idea was to make all parts of the application, that user interacts with, configurable from access point of view.

In this article we’ll make a brief overview of capabilities that are available in current version. It won’t replace comprehensive developer documentation, though.

Currently access can be controlled for such entities as:

  • Page
  • Box
  • Navigation item
  • Action
  • Wizard

All configuration is done traditionally through ASG (ano-site content management system) which was enriched with two new modules for access control configuration: Ano-Access Configuration and Ano-Access Data. While latter is pretty straightforward, the former requires some explanation.

Continue reading