Hacker Newsnew | past | comments | ask | show | jobs | submit | breakpete's commentslogin

Regarding 2, you can actually bind routes to instance methods:

  var obj = new SomeObjectWithHandlerMethods(dependency);
  var app = Javalin.create().get("/", obj::handlerMethod).start();

Edit: For 4, Javalin 6 also has some documentation regarding Servlets here: https://javalin.io/documentation#adding-other-servlets-and-f...


Strange — I swear this wasn't the case. I and several other devs tried for a good three weeks to get Javalin to accept such route bindings. This was a year or two ago, though. Maybe the interface type for a handler function was changed in some more recent version of Javalin?


Not sure about the older versions of Javalin, but from my experience with v5+ it just uses regular Single Abstract Method conversion for the Handler interface, which has a single method with just one parameter (the Context).


It's been a SAM interface since 2017 and basically hasn't changed at all.


You are not doing it wrong.

Standups can be traced back to the Scrum practice Daily Scrum. The Daily Scrum is a short (max 15 minute) synchronisation meeting for developers. It is explicitly not a status meeting for PMs. It eventually became known as a standup because people figured out that it was easier to keep the meeting short when you were not sitting down.

Scrum became popular, but it didn’t really make room for traditional project managers. So what to do with all the PMs? Teach them to be Scrum Masters.

This is where things started to go downhill. Most PMs just kept doing what they had always done, just using different names.

And so standups became hour long status meetings, inspect and adapt, sustainable pace and other good things were replaced with micromanagement and death marches. Dark Scrum was born.

This is of course greatly simplified. Agile Consultants and certification peddlers are also to blame.


There is https://github.com/peterskeide/bones (I'm the author). It's by no means a large codebase, and it's not finished, but the goal is to give you a decent starting point with some hopefully useful idioms to build on.


There is more. The dependency injection implementation is based on reflection, using the https://github.com/codegangsta/inject package.

See e.g

https://github.com/codegangsta/martini/blob/master/martini.g...

https://github.com/codegangsta/martini/blob/master/martini.g...

Still, the end result is a nice API.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: