&gt; 1. Difficult to develop or debug without custom IDE plug ins. With Google cutting back on their investment, not clear how well those plug ins will be maintained in the future.<p>Interesting, I&#x27;m just using IntelliJ IDEA‎ and their GWT plugin.<p>What are they using?<p>&gt; 2. Awkward to work with Javascript libraries, at least compared to all Javascript development.<p>Fair enough, it does take some getting used to it.<p>&gt; 3. Sometimes hard to predict exactly what Javascript will be emitted for specific Java code.<p>I&#x27;m not sure why this matters?<p>I thought that&#x27;s the idea when you add another abstraction layer.<p>&gt; 4. Remembering the rules for what Java code can or cannot be compiled by the GWT compiler.<p>Oh I think I get it now, they haven&#x27;t migrated to Super Dev Mode yet.<p>That way it no longer requires a browser plugin (the old devmode), and the code is just JS + sourcemaps.<p>And if you use code that can&#x27;t be compiled, you know straight away, not just when doing a production compile.<p>&gt; 5. A lot of indirection. The event model has definite benefits, but it also seems to make it very hard to figure out what the program will do by just navigating the code.<p>I don&#x27;t agree with this, but I&#x27;m probably biased as a Java guy.<p>&gt; 6. Difficult to find developers willing and able to work on a GWT code base.<p>I&#x27;m available :-P<p>But being serious, thank you for the write-up, you do have some good points.