- Java är svårt eller krångligt.
- Utbudet av hostingleverantörer är både fattigt och ofta dyrt (läs. dyrare).
- Java är gammalt. Ingen använder Java idag när PHP, Ruby eller .NET finns.
Det är tankar som jag tror folk resonerar kring när de överväger Java. Det är inte nödvändigtvis mina åsikter.
På ett forum som det här tror jag inte att folk är så intresserade av kod. Det viktiga är att man får ihop nåt som funkar, gärna snabbt. Javautvecklare känns ofta mer åt andra hållet - inom de mer akademiska språken får man gång på gång höra att man ska bygga sina projekt i olika lager. Det är nästan omöjligt att undgå det. Delar man upp sina projekt i lager upplevs de lätt som större och rörigare om man inte är kodvan, och det tar längre tid att nå målen. Det kanske avskräcker.
En annan aspekt som hör ihop med punkten ovan är ramverken. JEE-specen (min kunskap sträcker sig fram till 1.5) är ganska primitiv. Att skapa en anslutning mot MySql är t.ex. inte helt enkelt om man inte vet hur man ska gå till väga. Att använda och konfa en ORM-mapper (Hibernate) var väldigt bökigt som jag kommer ihåg det. Det tror jag definitivt avskräcker. Att välja bland ramverken är inte heller så lätt med tanke på att det finns ungefär hur många som helst och ett till att välja mellan. De flesta verkar dessutom vara skrivna av utvecklare, för utvecklare. Tröskeln är ganska hög.
Som språk halkar Java efter nyare språk. Både Javas egna och många 3e-parts-API:er är krångliga och pratiga jämfört med andra språk. Jag har jobbat ungefär lika mycket med Java som med .NET och tycker att .NET är mycket enklare och tydligare. Jag tror absolut att det är en anledning till att många väljer bort Java. Vem vill skriva 30 rader kod när det räcker med 5 i ett annat språk med typ lika bra prestanda? På forum som det här handlar det ofta om att göra så lite som möjligt till så stor vinst som möjligt. Det gäller iofs inte bara här.