Software Engineering

Posté le 31/01/2012 par Sébastian Méric de Bellefon

Le modèle relationnel est né à une époque où l'espace était rare, et fut donc conçu pour minimiser le niveau de redondance des données: il était plus économique de stocker une indirection vers une chaine de caractères que de stocker cette chaine deux fois. Aujourd'hui, cette contrainte d'espace ne tient plus. On achète un Teraoctet pour 100 dollars...

Lire la suite >

Posté le 30/01/2012 par David Rousselie

La délégation de tâches en asynchrone est un moyen efficace d'alléger la charge que subissent nos systèmes. En effet, de nombreux cas d'utilisation ne nécessitent pas d'être exécutés de façon synchrone lorsqu'un utilisateur effectue une action ou qu'un événement extérieur intervient.Par exemple, lorsqu'il n'est pas nécessaire de restituer la derniè...

Lire la suite >

Posté le 27/01/2012 par Borémi Toch

Un précédent article a exposé les grands principes de la sérialisation avec Thrift et Procotol Buffers. Ces deux frameworks promettent notamment une représentation des messages optimisée en termes de taille, ce qui est avéré dans le benchmark JVM Serializers : Thrift et Protocol Buffers y obtiennent une réduction de taille du message de 73% par rap...

Lire la suite >

Posté le 26/01/2012 par Céline Pageaux

Agenda :Introduction aux enjeux d’analyse de données en temps réelPrésentation des architectures d’analyse de donnéesPrésentation de la solution Open Source ESPERPrésentation de la solution ActivePivot Sentinel (Quartet FS)Questions/RéponsesDéfinition : « Un système d’analyse de données temps réel est un système évènementiel disponible, scalable et...

Lire la suite >

Posté le 17/01/2012 par Eric Favre

IntroductionDepuis que les sites web sont devenus des applications riches, le besoin de push s’est largement manifesté. Il est présent sur des sites de mails, de feeds d’information, de partage de documents, de réservation de billets avec choix des places… Le push web permet de notifier le client d’une certaine information directement depuis le ser...

Lire la suite >

Posté le 17/01/2012 par Vincent Guigui

Derrière cette formulation humoristique se cache un des fondements de l’industrialisation des développements : le fait de pouvoir tester de manière automatisée tout ou partie d’un système informatique.Aussi bien dans les architectures complexes que dans les applications les plus simples, il est pertinent de pouvoir tester un composant logiciel unit...

Lire la suite >

Posté le 11/01/2012 par Borémi Toch

La sérialisation est une des bases de la transmission de données entre systèmes. Certains langages proposent d'ailleurs une méthode de sérialisation en standard, qui leur est souvent propre.L'interopérabilité entre systèmes hétérogènes nécessite que le format de sérialisation soit compréhensible par différents langages et plates-formes. De nombreux...

Lire la suite >

Posté le 22/12/2011 par Rémy Saissy

ASIHttpRequest, AFNetworking, MKNetworkKit,… The iOS/MacOSX programming landscape is full of helper libraries to deal with asynchronous network communications in your applications.RestKit can be seen as yet another library to do it. However, its approach is radically different since it does not only address asynchronous networking but also object m...

Lire la suite >

Posté le 16/12/2011 par Mathieu Hausherr

Les connections réseaux sont une source fréquente de lenteur des applications mobiles. Remplacer 10 téléchargements de 1Mo par 1 de 10Mo peut améliorer le fonctionnement de votre application.L’utilitaire unix Tar permet justement de regrouper des fichiers en un seul package. Malheureusement aucune implémentation sous iOS de tar n’est satisfaisante ...

Lire la suite >

Posté le 16/12/2011 par Mathieu Hausherr

The problemWhy untar?Network connections cause latencies on your mobile app. Replace 10 downloads of 1Mb by 1 download of 10Mb is a good improvement to your app.There’s a well-known unix tool for that: tar.What is tar? Wikipedia says: “Tar is now commonly used to collect many files into one larger file for distribution or archiving, while preservin...

Lire la suite >