Chances are that if you design a system you also have the requirement of tracking data changes, also known as history tracking or audit trailing. The mechanism of capturing data changes can be achieved in a number of ways, each one of them having its own advantages and disadvantages. This article is a summary of my research on this topic.
"The Play Framework takes a functional programming approach to stream processing (e.g. Comet, chunked responses, WebSockets) by using abstractions called Iteratees, Enumerators, and Enumeratees. When I originally tried to wrap my head around Iteratees, I found that the existing documentation and sample apps were fairly confusing and ineffective for getting started. Since teaching is often the best way to learn, I decided to write a blog post as a way to become more comfortable with functional I/O."
by Joseph Rickert I am a book person. I collect books on all sorts of subjects that interest me and consequently I have a fairly extensive collection of R books, many of which I find to be of great value. Nevertheless, when I am asked to recommend an R book to someone new to R I am usually flummoxed. R is growing at a fantastic rate, and people coming to R for the first time span I wide range of sophistication. And besides, owning a book is kind of personal. It is one thing to go out and buy a...
"Is there anybody having the problems with integration of Play 2.1 applications with Cloud Foundry?
If so, please check this post out, since its author has just spent about 3h trying to integrate the latest (so far) 2.1 version of Play framework with Cloud Foundry PaaS, and in the end all efforts have been paid off to him."
How to make your app production-ready, i.e. combine all your files into one, minify the result, and to map WebJars resources to CDN URLs.
Are you using InnoDB tables on MySQL version 5.1.22 or newer? If so, you probably have gaps in your auto-increment columns. A simple INSERT IGNORE query creates gaps for every ignored insert, but this is undocumented behaviour.
"Partant de ce constat, le site OnlineColleges a publié une infographie expliquant comment bien tirer parti des médias sociaux dans une recherche d’emploi. Ces chiffres concernent en particulier le marché américain."
Il se trouve quelques références intéressantes à des sites webs pour bâtir des CV.
There are a number of ways to do dependency injection in Scala without adding a framework. The cake pattern is probably the most popular approach and is used in the Scala compiler itself. Using implicit parameters is less popular and is used in the Scala concurrency libraries.
An approach that doesn’t get as much mention in the blogosphere but gets much love from those who have tried it is dependency injection via the Reader Monad.
A Bloom filter is a data structure designed to tell you, rapidly and memory-efficiently, whether an element is present in a set.
The price paid for this efficiency is that a Bloom filter is a probabilistic data structure: it tells us that the element either definitely is not in the set or may be in the set.
Angular-xeditable is a bundle of AngularJS directives that allows you to create editable elements.
Such technique is also known as click-to-edit or edit-in-place.
It is based on ideas of x-editable but was written from scratch to use power of angular and support complex forms / editable grids.
"Swaggerkit is a Scala toolkit that helps you generate the Swagger JSON for your REST API, that allows Swagger-aware tools to automatically discover and use your API, and the Swagger-UI tool to show documentation and a sandbox for your API.
The Swagger project itself consists of the Swagger Specification and some implementations for servers and clients. There is a Scala implementation, but it relies on JaxRS, which is often not the technology of choice in your Scala REST API.
Swaggerkit is an alternative implementation that has no dependencies on JaxRS, or any other technology for that matter (except for Scala…). It is basically an set of case classes that form the data structures as described in the Swagger Specification.
From these case classes, the JSON must be generated. This project currently contains an implementation that uses the Play 2.0 JSON library for that."
Deadbolt is an authorisation mechanism for defining access rights to certain controller methods or parts of a view using a simple AND/OR/NOT syntax. It is based on the original Secure module that comes with the Play! framework.
Note that Deadbolt doesn’t provide authentication! You can still use the existing Secure module alongside Deadbolt to provide authentication, and in cases where authentication is handled outside your app you can just hook up the authorisation mechanism to whatever auth system is used.
How much of this still holds true for Deadbolt 2? More than 50% and less than 100%, give or take.
Deadbolt is still used for authorisation
It can control access to controllers
It can control access to templates
The capabilities have expanded beyond the original role-based static checks
Deadbolt 2 is based on Deadbolt 1, so it's related to the old Secure module in spirit, if not in implementation
You can (or should be able to) combine Deadbolt 2 with any authentication system
"HTML5 and CSS3 have just arrived (kinda), and with them a whole new battle for the ‘best markup’ trophy has begun. Truth to be told, all these technologies are mere tools waiting for a skilled developer to work on the right project. As developers we shouldn’t get into pointless discussions of which markup is the best. They all lead to nowhere. Rather, we must get a brand new ideology and modify our coding habits to keep the web accessible.
"Play! Authenticate is a brand-new choice for Java-based authentication
within Play! Framework 2.x applications, supporting common OAuth2 providers
such as Facebook or Google in parallel with your own user account service or an out-of-the-box username/password provider."