Faster Maven builds
https://blog.frankel.ch/faster-maven-builds/1/, posted Oct '21 by peter in development howto java performance reference
I want to detail some techniques you can leverage to make your Maven builds faster in this post. The following post will focus on how to do the same inside of Docker.
Arquillian Â· Write Real Tests
arquillian.org/, posted 2016 by peter in development java opensource testing
Arquillian is an innovative and highly extensible testing platform for the JVM that enables developers to easily create automated integration, functional and acceptance tests for Java middleware.
Getting Started | Dropwizard
dropwizard.github.io/dropwizard/getting-started.html, posted 2014 by peter in development howto java software
Getting Started will guide you through the process of creating a simple Dropwizard project: Hello World. Along the way, we’ll explain the various underlying libraries and their roles, important concepts in Dropwizard, and suggest some organizational techniques to help you as your project grows. (Or you can just skip to the fun part.)
Archive of Interesting Code
www.keithschwarz.com/interesting/, posted 2013 by peter in c++ development java list reference
The Archive of Interesting Code is an (ambitious) effort on my part to research, intuit, and code up every interesting algorithm and data structure ever invented. In doing so, I hope both to learn the mathematical techniques that power these technologies and to improve my skills as a programmer.
The Play Framework at LinkedIn | LinkedIn Engineering
engineering.linkedin.com/play/play-framework-linkedin, posted 2013 by peter in development framework howto java scala
Let's walk through a quick tour of developing apps with Play. Play has idiomatic support for both Java and Scala; this tutorial will start with some Java examples in the first half and move onto Scala for the second half.
Togglz - Features flag for Java
www.togglz.org/, posted 2013 by peter in configuration continuousdelivery development free java opensource software
Togglz is an implementation of the Feature Toggles pattern for Java. Feature Toggles are a very common agile development practices in the context of continuous deployment and delivery. The basic idea is to associate a toggle with each new feature you are working on. This allows you to enable or disable these features at application runtime, even for individual users.
nealford.com â€¢ Why Everyone (Eventually) Hates (or Leaves) Maven
nealford.com/memeagora/2013/01/22/why_everyone_eventually_hates_maven.html, posted 2013 by peter in development java opinion
Maven is a classic contextual tool: it is opinionated, rigid, generic, and dogmatic, which is exactly what is needed at the beginning of a project. Before anything exists, it’s nice for something to impose a structure, and to make it trivial to add behavior via plug-ins and other pre-built niceties. But over time, the project becomes less generic and more like a real, messy project. Early on, when no one knows enough to have opinions about things like lifecycle, a rigid system is good. Over time, though, project complexity requires developers to spawn opinions, and tools like Maven don’t care.
IDEs Are a Language Smell
www.recursivity.com/blog/2012/10/28/ides-are-a-language-smell/, posted 2012 by peter in development java opinion
I've been programming since I was 7 years old. My short foray with IDE's (in perspective: 2004-2011/2012) also coincide with my most frustrated period with tooling and languages. I don't think this is a coincidence. Comparing using poor languages (..ehm, Java)requiring tank-like IDE's, with using a more lightweight toolchain with sane languages like Haskell, Clojure and Scala (used correctly) only confirms this.
I can only conclude that the need for an IDE or a heavy "code navigation tool" is a symptom of a deeper problem, if you suffer from tool frustration, it's not necessary your tools that are poor, it may be that your language sucks, or you're not using it correctly.
Repository Management with Nexus / Documentation Sonatype.com
www.sonatype.com/books/nexus-book/reference/, posted 2012 by peter in development java reference
Nexus manages software “artifacts” required for development, deployment, and provisioning. If you develop software, Nexus can help you share those artifacts with other developers and end-users. Maven’s central repository has always served as a great convenience for users of Maven, but it has always been recommended to maintain your own repositories to ensure stability within your organization. Nexus greatly simplifies the maintenance of your own internal repositories and access to external repositories. With Nexus you can completely control access to, and deployment of, every artifact in your organization from a single location.
The Nexus book.
Sandia National Laboratories: Cognitive Foundry: Home
foundry.sandia.gov/, posted 2012 by peter in ai free java opensource software
The Cognitive Foundry is a modular Java software library for the research and development of cognitive systems. It contains many reusable components for machine learning, statistics, and cognitive modeling. It is primarily designed to be easy to plug into applications to provide adaptive behaviors.
The Cognitive Foundry's development is led by Sandia National Laboratories and is released under the open source BSD License.