Emmanuel Hugonnet's Library tagged → View Popular
Drive development with easyb
A disconnect between the stakeholders who define requirements and the developers who implement them has long plagued software development. In recent years, frameworks based on dynamic languages and domain-specific languages (DSLs) have tried to bridge the stakeholder-developer gap by making code read more like normal language. This tutorial shows how easyb — which provides a more natural DSL that is closely attuned to stakeholders — helps developers and stakeholders collaborate effectively.
In this tutorial
easyb is a behavior-driven development (BDD) framework for the Java™ platform. By using a specification-based DSL, easyb aims to enable executable yet readable documentation. You write easyb specifications in Groovy and execute them via a Java runner that can be invoked through the command line, Apache Maven 2, or Apache Ant. With easyb, you can verify the behavior of anything you write in Java code, in a more natural way. When you are done with the tutorial, you'll understand the benefits of collaborative stories implemented with easyb and how this framework makes collaboration easy.
Wicket: A simplified framework for building and testing dynamic Web pages
Wicket provides an object-oriented approach toward developing dynamic Web-based UI applications. Because Wicket is pure Java™ and HTML code, you can leverage your knowledge about Java to write applications based on Wicket, dramatically reducing your development time. This article gives you an overview of Wicket and describes how you can use Wicket to rapidly build Web-based applications in a non-intrusive and simplified way.
Intelligent agents and the Semantic Web
The Semantic Web envisioned by Berners-Lee, Hendler, and Lassila in 2001 was a grandiose vision that involved the use of agents to book doctor appointments and to find the best driving routes with the least hassle. The envisaged system was built upon formal ontologies that had already achieved a large following of scientists and agent developers. Although they raised some important issues and put forward interesting connections between technologies, they missed one thing: the fact that the Web had turned into a web of documents. Therefore, a middle way needed to occur between the formalism of ontologies and the informalism of documents. This is known as Linked Data. Linked Data coupled with agent technology is an ideal way of dealing with Semantic Web data. This article provides an overview of the Interlinked Semantic Web, agent technologies, and an example of the two combined.
Behavior-driven development with easyb - JavaWorld
Behavior-driven development offers many of the benefits of test-driven development, but without the tight coupling to specific implementations. In this article Rod Coffin discusses the difference between the two development methods and explains the concepts of BDD. He then walks through an example in behavior-driven development with easyb -- a Groovy-based framework that employs a rich DSL understandable by both developers and domain experts.
Automation for the people: Parallel development for mere mortals
Branching, tagging, and merging in Subversion
Although many development teams use version-control systems to manage code changes, they can struggle when developers code off the same code base, in parallel. In this Automation for the people installment, automation expert Paul Duvall shows how to effectively tag, branch, and merge source code using the open source, freely available Subversion version-control system.
Spring-Batch : par quel bout le prendre ? - OCTO talks !
Spring-Batch répond à un besoin récurrent : la gestion des programmes batchs écrits en Java. Si le framework semble de plus en plus complet et fonctionnel, celui-ci souffre de sa complexité de configuration et reste un peu difficile d'accès malgré les efforts de l'équipe de développement. Personnellement, j'ai passé quelques heures pour faire fonctionner mon premier batch. Les exemples fournis fonctionnent rapidement, et illustrent très bien les possibilités qu'offre Spring-Batch. Mais, comme ces possibilités sont très riches, les exemples sont nombreux et (nécessairement) complexes. On lit la documentation, on regarde les multiples exemples en détail, et au moment d'implémenter notre premier batch et de plonger pleinement dans le cœur du sujet, on se pose la question "Mais par quel bout je commence ?".
Agile Development Blog / SCRUM, Extreme Programming, Tools, Tips: Kanban in Software Development
Lean software development is becoming a new buzzword. More and more articles, books and discussions around lean and software development popped up last year. People are using new terms like Kaizen, Kanban, Muda, Pull System, etc. Well, this is great. New thinking about software development stimulates new ideas and new solutions to old problems.
Agile Development Blog / SCRUM, Extreme Programming, Tools, Tips: Reveal Agile Development Process Problems with Kanban Board
In previous post I described Kanban and its application in agile software development. Kanban board is not just a way to communicate story state, it is a tool that can reveal some problems in the development process.
There are some simple patterns that are very intuitive and can be applied to any development process. You should look for gaps on the kanban board. If you have many stories in a column before the gap, you definitely have a problem in development process.
Compendium of Beginner Erlang Resources | spawn_link
It seems like just yesterday I was just starting to dive into Erlang. Actually, it was only a few months ago, and Erlang resources were hard to come by! In addition to the lack of resources, there were a lack of blogs to help me along the way. The main purpose of this blog is to track my findings with Erlang, especially using it in a professional world, and help others learn what I have learned. As an added bonus, I’ll probably learn things from readers along the way, too.
To kick this blog off, I’ve compiled a list of resources that I used to jump into Erlang, and some additional resources I’ve found recently. They are in order of difficulty based on my personal opinion, to help you climb the Erlang mountain!
Behaviour Driven Development: By Example
This article aims to introduce Behaviour Driven Development (BDD), using JBehave 2, throughout a development episode; starting with a user story, describing a desired feature, through to the completion of working software.
Readers will learn how to use JBehave 2 to create executable scenarios that ensure desired application behaviour and will be introduced to the "outside-in" design philosophy at the heart of BDD.
The busy Java developer's guide to Scala: Building a calculator, Part 1
Domain-specific languages have become a hot topic; much of the buzz around functional languages is their applicability to build such languages. In this, the eighth article in The busy Java™ developer's guide to Scala, Ted Neward starts building a simple calculator DSL that demonstrates the power of functional languages for building "external" DSLs. Toward that end, he explores a new feature of Scala, case classes, and revisits an old functional friend, pattern matching.
Multithreaded Testing at Carbon Five Community
Every now and then you’ll work on something that needs to handle requests from multiple concurrent threads in a special way. I say “special way” because in a web application, everything needs to handle being executed concurrently and there are a slew of techniques used to handle this (prototypes, thread locals, stateless services, etc). Here’s an example of what I mean by “special”…
Java/JRuby Developers, Say Open 'Sesame' to the Semantic Web
Java/JRuby Developers, Say Open 'Sesame' to the Semantic Web
The semantic web enables you to use information from disparate sources in different formats/schemas without having to convert the data to a standard format. Get an introduction to semantic web application development using Java and JRuby.
The Seductions of Scala, Part III - Concurrent Programming
This is my third and last blog entry on The Seductions of Scala, where we’ll look at concurrency using Actors and draw some final conclusions.
The Seductions of Scala, Part II - Functional Programming
In my last blog post, I discussed Scala’s support for OOP and general improvements compared to Java. In this post, which I’m posting from Agile 2008, I discuss Scala’s support for functional programming (FP) and why it should be of interest to OO developers.
The Seductions of Scala, Part I
Because of all the recent hoo-ha about functional programming (e.g., as a “cure” for the multicore problem), I decided to cast aside my dysfunctional ways and learn one of the FP languages. The question was, which one?
My distinguished colleague, Michael Feathers, has been on a Haskell binge of late. Haskell is a pure functional language and is probably most interesting as the “flagship language” for academic exploration, rather than production use. (That was not meant as flame bait…) It’s hard to underestimate the influence Haskell has had on language design, including Java generics, .NET LINQ and F#, etc.
However, I decided to learn Scala first, because it is a JVM language that combines object-oriented and functional programming in one language. At ~13 years of age, Java is a bit dated. Scala has the potential of replacing Java as the principle language of the JVM, an extraordinary piece of engineering that is arguably now more valuable than the language itself. (Note: there is also a .NET version of Scala under development.)
Here are some of my observations, divided over three blog posts.
Scala Actors 101 - Threadless and Scalable | Javalobby
Application performance is no longer a free lunch, and with current hardware trends of cores-for-the-chores, the search is on for the programming model that will make your application scale out over all the processing units that you have. Java 5 and Java 6 have given us the goodness of java.util.concurrent, and if all things go well, we will have Fork/Join (FJ) as part of Java 7. All of these are layers of abstraction built on top of the native threading model that makes programming with threads easier for the masses.
OSGi based Integration testing with TestNG and Apache Felix [www.talios.com]
After thinking up various interesting, but overkill ways of OSGi-enabling TestNG to provide some nice integration testing I settled on the simplest approach (which also looks to be the best, and most flexible so far): embed felix - we already had a custom Felix launcher so this was very much similar (and so simple that it's almost not worth blogging about).
IT-eye » Getting started using openoffice in java
I’ve recently started using the OpenOffice api’s to generate documents using Java. The openoffice api’s are very powerful, but not the easiest to work with. So i thought it might be helpful to put some simple examples on this weblog.
Selected Tags
Related Tags
Sponsored Links
Top Contributors
Groups interested in introduc...
-
wikis
An introduction to Wikis, o...
Items: 17 | Visits: 109
Created by: Mark Marino
-
Introduction to Twitter
Here's a quick look at Twit...
Items: 18 | Visits: 1612
Created by: Michael Marlatt
Highlighter, Sticky notes, Tagging, Groups and Network: integrated suite dramatically boosting research productivity. Learn more »
Join Diigo
