InfoQ Homepage Programming Content on InfoQ
-
Application Security With Apache Shiro
Apache Shiro is a Java security framework that provides simple but powerful approach to application security. This article introduces the framework and explains Apache Shiro’s project goals, architectural philosophies and how you might use Shiro to secure your own applications.
-
mobl: a DSL for Mobile Web Development
Zef Hemel explains mobl, a cross-platform DSL for building mobile applications, detailing language’s constructs, how to create an application, and why it is better than other similar solutions.
-
The Top Five Challenges of Building Software Platforms in the Agile World
When scaling Agile to the enterprise new concerns arise that require revisiting the values and practices of Agile software development. One such concern relates to a common strategy to achieve reuse at the enterprise level - building software platforms. This article lists the top five challenges that an Agile organization should expect to face when deciding to adopt a software platform strategy.
-
Book on Leveraging Domain-Specific Languages by Martin Fowler with Rebecca Parsons
In their new book Martin Fowler and Rebecca J. Parsons address the topic of Domain-Specific Languages. “Domain-Specific Languages” does not only address the concepts behind DSLs, but also tries to explain the subject in a pragmatic manner using examples in Java, C# and other languages.The book contains different patterns that reveal best practices in designing DSLs.
-
Implementation Decision Rationales – Program Comprehension in Agile
Given the fact that the bulk of a developer's work is maintaining and enhancing existing code, Fabian Kiss makes the case for a lightweight approach to documenting the rationale and decision process behind design decisions to help later developers tie the source code syntax to its meaning in the application domain. Using simple tags and clearly thought out rationale to provide just-enough value.
-
Concrete: Rich, Customizable DSL Editors for the Browser
Text-based DSLs are useful, an custom editor for the DSL is even better. Concrete allows to build customized editors for JSON-based DSLs/Models. InfoQ talks to Concrete's creator Martin Thiede.
-
The Azul Garbage Collector
Azul's recently announced Zing product brings their Garbage Collector, which achieves both pauseless garbage collection and a high tolerance to the factors which typically impact collection and application responsiveness, to Java programs running on Intel and AMD based servers. This article takes a detailed look at how Azul has been able to achieve these design goals.
-
Xtext/TS - a Typesystem Framework for Xtext
Since the release of version 1.0, it has become feasible to build complex expression languages in Xtext. However, once you have expressions, you typically also need a type system. In this article Markus Völter describes a framework for specifying type systems for expression languages built using Xtext.
-
Using Apache Avro
Boris Lublinsky presents an introduction to AVRO and evaluate its usage for Schema componentization, inheritance and polymorphism. He also discusses backward compatibility issues and AVRO solutions for this problem.
-
Asynchronous, Event-Driven Web Servers for the JVM: Deft and Loft
Asynchronous, event-driven architectures have been gaining a lot of attention lately, mostly with respect to JavaScript and Node.js. Deft and Loft are two solutions that bring "asynchronous purity" to the JVM.
-
Virtual Panel: How to Survive Asynchronous Programming in JavaScript
Using callback-passing for asynchronous actions does not compose very well and might create complex flows of passing callbacks around to handle return values. The JavaScript community is aware of this and has come up with several libraries to deal with it. In this virtual panel, InfoQ has interviewed the creators of the most popular of these libraries.
-
Hades - JPA Repositories Done Right
Almost every application has to access data to do its work. In a domain driven design approach one defines repositories for the entities that make up the domain. Java developers often use JPA to implement these repositories. Hades is an open source library that's built on top of JPA and Spring to significantly improve the implementation of data access layers by reducing the effort required.