Search source code from:
Month: June 2014
Link: Awesome Sysadmin
FindBugs: Java static analysis tool
FindBugs is one of the tools I use regularly at work. At the end of each coding iteration, I like to run FindBugs on the code to look for issues. It has caught more than one deferenced NullPointerException. I run the standalone GUI app, but it can be run from an Ant task, the command line, Eclipse, NetBeans, IntelliJ, Hudson, Maven, and Jenkins.
Link: The best career advice I’ve received
Undertow: Lightweight, non-blocking, embeddable, servlet 3.1 compatible web server with websockets support by JBoss
Isn’t that a lovely blog post title?
Undertow is a flexible performant web server written in java, providing both blocking and non-blocking API’s based on NIO.
Undertow has a composition based architecture that allows you to build a web server by combining small single purpose handlers. The gives you the flexibility to choose between a full Java EE servlet 3.1 container, or a low level non-blocking handler, to anything in between.
Undertow is designed to be fully embeddable, with easy to use fluent builder APIs. Undertow’s lifecycle is completely controlled by the embedding application.
Undertow is sponsored by JBoss and is the default web server in the Wildfly Application Server
Ya’ll know how I like my Markdown. Markdown and wikis. Like chocolate and peanut butter.
Mojolicious: Modern Perl web framework
I haven’t written any Perl in years, but this looks promising.
- An amazing real-time web framework, allowing you to easily grow single file Mojolicious::Lite prototypes into well structured web applications.
- Powerful out of the box with RESTful routes, plugins, commands, Perl-ish templates, content negotiation, session management, form validation, testing framework, static file server, first class Unicode support and much more for you to discover.
- Very clean, portable and Object Oriented pure-Perl API without any hidden magic and no requirements besides Perl 5.10.1 (although 5.18+ is recommended, and optional CPAN modules will be used to provide advanced functionality if they are installed).
- Full stack HTTP and WebSocket client/server implementation with IPv6, TLS, SNI, IDNA, Comet (long polling), keep-alive, connection pooling, timeout, cookie, multipart, proxy and gzip compression support.
- Built-in non-blocking I/O web server, supporting multiple event loops as well as optional preforking and hot deployment, perfect for embedding.
- Automatic CGI and PSGI detection.
- JSON and HTML/XML parser with CSS selector support.
- Fresh code based upon years of experience developing Catalyst.
Fenix: Windows/Mac static desktop webserver for local development
This looks pretty slick. This would be great for serving local prototypes and collaborating with peers.
Wintersmith: Plugin-based static site generator built on Node.js
Wintersmith tries not to put any limitations on how you work with your content. You can transform it using plugins and structure it as you please.
No special directories or odd metadatafiles, just a directory structure. This means that you can simply throw in your old hand-crafted static site or content from other generators.
Use your favorite templating engine, it comes bundled with a Jade plugin and there is community made plugins for most other node.js templating engines.
Wintersmith also ships with some handy site templates for building blogs & webapps.
Finagle: Protocol agnostic extensible RPC system for the JVM with Java & Scala APIs
Finagle is an extensible RPC system for the JVM, used to construct high-concurrency servers. Finagle implements uniform client and server APIs for several protocols, and is designed for high performance and concurrency. Most of Finagle’s code is protocol agnostic, simplifying the implementation of new protocols.
Finagle is written in Scala, but provides both Scala and Java idiomatic APIs.