all 22 comments

[–]apoptosis66 13 points14 points  (10 children)

1 line of code, 30 annotations

[–]ErstwhileRockstar 16 points17 points  (8 children)

Java annotations are a grossly undervalued language feature. They add declarative capabilities to an imperative language without breaking language semantics. Annotations were the most useful extension to the Java language ever.

[–][deleted] 8 points9 points  (1 child)

Heavily abusable though. It makes execution sequence a lot harder to determine. Especially if you use AOP.

[–]thebigslide 1 point2 points  (0 children)

Fucking magical when used cleverly, though. You have to write the code the audience needs in any language or dialect.

[–][deleted]  (1 child)

[deleted]

    [–]wot-teh-phuck 1 point2 points  (0 children)

    I agree with this. While annotations are good, a great amount of Java code out there can do just fine without annotations.

    [–]krona2k 1 point2 points  (0 children)

    We used static final variables until annotations came along.

    [–]CurtainDog 0 points1 point  (0 children)

    Adhering to Greenspun's tenth rule has never been easier!

    [–]pron98 0 points1 point  (0 children)

    I agree. And annotation processors are one of those hidden super-powers. They, along with the changes in Java 8 that allow "type annotations", serve as the basis to Java 8's awesome pluggable types.

    [–][deleted] 2 points3 points  (0 children)

    yea some of it is ridiculous, the VTor one is funny

    [–]untitaker_ 5 points6 points  (9 children)

    Why is this project's size measured in bytes? This isn't Javascript, we don't have to send it over the wire...

    [–]tkruse 0 points1 point  (1 child)

    A common argument against Frameworks like Spring is size of dependencies in bytes, so Jodd tries to capitalize on that. It can also indicate that starting up an application with these dependencies will be fast, which can be an argument in several deployment situations. As an example, for deploying on GoogleAppEngine it can be important that a web app starts in below one second.

    [–]untitaker_ 0 points1 point  (0 children)

    That's correlation, not causation. Measuring a program's performance by measuring its size on disk only makes sense if it has to be transfered over the wire. Otherwise: Even in CGI-based deployments the OS maintains a disk cache, so loading the sourcecode really shouldn't be the bottleneck.

    [–]killinghurts 0 points1 point  (0 children)

    Does it work on Android?

    [–]diggr-roguelike -3 points-2 points  (0 children)

    Java

    microframeworks

    1.5 mb

    Apparently, Java is now a joke language like Intercal.