EcoConception Logicielle
9.0K views | +0 today
EcoConception Logicielle
Green IT, performance web, économies d'énergies, bref : éco-conception logicielle !
Curated by Mickael Ruau
Your new post is loading...
Your new post is loading...

Popular Tags

Scooped by Mickael Ruau
October 22, 2013 12:46 PM
Scoop.it!

HTTP Archive - Interesting Stats

http://httparchive.org entretient des statistiques sur le contenu des pages web et leurs temps de chargement.

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 12:41 PM
Scoop.it!

Why we need responsive images - TimKadlec.com

Why we need responsive images - TimKadlec.com | EcoConception Logicielle | Scoop.it
— June 11, 2013 — Why We Need Responsive Images The topic of responsive images has been one of the most hotly debated topics amongst web …
Mickael Ruau's insight:

We spend a lot of time talking about responsive images online—debating the approaches, trying out new solutions. Sometimes it can be a little discouraging that we still haven’t gotten it ironed out (I know I feel that way frequently).

 

But the web needs us to be diligent. It needs us to not settle for seemingly simple solutions that sacrifice performance. It is extremely rare where one optimization lets us knock off such a significant amount of page weight, but here we are staring one such technique right in the face.

 

72% less image weight.

That’s why we need a responsive image solution.

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 11:40 AM
Scoop.it!

SQL Server: Découvrez les données cachées pour optimiser la performance de vos applications

SQL Server: Découvrez les données cachées pour optimiser la performance de vos applications | EcoConception Logicielle | Scoop.it
Téléchargement du code disponible sur: DMVsinSQLServer2008_01.exe (155 KB)
Browse the Code Online


Cet article aborde les sujets suivants:

Vues et fonctions de gestion dynamiqueCauses des attentes de serveurProblèmes d'index courantsProblèmes liés aux E/S logiques
Mickael Ruau's insight:
 SommaireCauses des attentes de serveur
Lectures et écritures
Index manquants par base de données
Index manquants coûteux
Index inutilisés
Index utilisés coûteux
Index souvent utilisés
Index fragmentés logiquement
Requêtes coûteuses par E/S
Requêtes coûteuses par processeur
Requêtes CLR coûteuses
Requêtes les plus exécutées
Requêtes sujettes aux blocages
Plans de requête les moins réutilisés
Autres tâches à effectuer
No comment yet.
Scooped by Mickael Ruau
October 22, 2013 11:07 AM
Scoop.it!

Do not use PHP references - Johannes Schlüter

Do not use PHP references - Johannes Schlüter | EcoConception Logicielle | Scoop.it

So OO was one valid reason for using references, but as PHP 4 is dead for over one year now old code using this should really cleaned up!

Another reason people use reference is since they think it makes the code faster. But this is wrong. It is even worse: References mostly make the code slower!

Yes, references often make the code slower - Sorry, I just had to repeat this to make it clear.

 

Mickael Ruau's insight:

When coming from other languages from other languages people read in style guides that passing copies of large structures or strings should be avoided as creating a copy takes time.

In some environments complex structures have to be passed as pointers, which is a fundamentally different model from references, and people take this to PHP references. But PHP is not that other language but PHP with PHP's runtime and in PHP we do copy-on-write.

 

With copy-on-write we don't copy on an assignment or function call but just note that there are multiple independent variables pointing at one and the same variable container and only if there is a write operation we separate the variable, which is written to, from the others.

 

This means that even so a variable looks like a copy it's in fact no copy and the function call takes no penalty do to big parameters.

 

The problem with references now is that they disable the copy-on-write mechanism so any following non-reference assignment using this variable will create an immediate copy.

 

This in itself won't be bad - you could simply use references everywhere, well not really: PHP is built around the copy-on-write availability so most internal functions expect copies.

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 10:50 AM
Scoop.it!

Optimization: Journey vs Destination

Optimization: Journey vs Destination | EcoConception Logicielle | Scoop.it
Even though modern computing hardware is getting faster by days, the performance of a software starts to be treated as a feature. Optimization effort, whether it is for mobile applications or for h...
Mickael Ruau's insight:

What I learn from several large-scale software projects is that optimization should be treated as part of the journey. It is not a goal per se, your destination is not to reach the intended performance criteria. If we draw the quadrant of maintainable vs optimized code, we may end up like the following diagram. Note that the dichotomy does not always apply in real-world; for this purpose however, it does illustrate the point.

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 10:32 AM
Scoop.it!

Searching with Array.prototype.some

Searching with Array.prototype.some | EcoConception Logicielle | Scoop.it
Iterating over an array to search for an item is a pretty common task. With JavaScript, Array.prototype.forEach is often the popular choice. In some cases however, Array.prototype.some can be a bet...
Mickael Ruau's insight:

An improvement to the search would be to stop right away once the condition is fulfilled. Note that the condition needs not be only a single match. There are problems like searching the first 3 free spaces, locating enough suitable rooms, etc. Fortunately, there are Array methods which can do that: every and some. I have covered the use of every to implement a primality test (see the previous blog post on Prime Numbers, Factorial, and Fibonacci Series with JavaScript Array) so let us take a look at its sibling.

Section 15.4.4.17 of ECMAScript 5.1 specification reveals that for Array.prototype.some:

callbackfn should be a function that accepts three arguments and returns a value that is coercible to the Boolean value true or false. some calls callbackfn once for each element present in the array, in ascending order, until it finds one where callbackfn returns true.

This is exactly what we need!

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 9:46 AM
Scoop.it!

How to Tune Java Garbage Collection | CUBRID Blog

How to Tune Java Garbage Collection | CUBRID Blog | EcoConception Logicielle | Scoop.it

This is the third article in the series of "Become a Java GC Expert". In the first issue Understanding Java Garbage Collection we have learned about the processes for different GC algorithms, about how GC works, what Young and Old Generation is, what you should know about the 5 types of GC in the new JDK 7, and what the performance implications are for each of these GC types.

 

In the second article How to Monitor Java Garbage Collection I have explained how JVM actually runs the Garbage Collection in the real time, how we can monitor GC, and which tools we can use to make this process faster and more effective.

 

In this third article based on real cases as our examples I will show some of the best options you can use for GC tuning. I have written this article under the assumption that you have already understood the previous articles in this series. Therefore, for your further understanding, if you haven't already read the two previous articles, please do so before reading this one.

Mickael Ruau's insight:
Is GC Tuning Required?

Or more precisely is GC tuning required for Java-based services? I should say GC tuning is not always required for all Java-based services. This means a Java-based system in operation has the following options and actions:

The memory size has been specified using -Xms and –Xmx options.The -server option is included.Logs such as Timeout log are not left in the system.

In other words, if you have not set the memory size and too many Timeout logs are printed, you need to perform GC tuning on your system.

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 6:16 AM
Scoop.it!

Android Fragmentation: Do We Really Need to Support Older Devices?

Android Fragmentation: Do We Really Need to Support Older Devices? | EcoConception Logicielle | Scoop.it
A recent post from Danny Roa's blog asks the question that many Android developers ask in their darkest hours: Do we really have to support older devices? The answer, according to Roa, is no, not really.
No comment yet.
Scooped by Mickael Ruau
October 22, 2013 6:13 AM
Scoop.it!

Lancement du Green Code Lab Challenge | Le Point Etudiants

Lancement du Green Code Lab Challenge | Le Point Etudiants | EcoConception Logicielle | Scoop.it
Premier concours international inter-écoles qui vous plonge 48h au cœur de l'écoconception des logiciels ! Du 27 au 29 novembre 2013 – Angers – Nantes – Rennes – Brest – Arras – Paris – Bordeaux – Montpellier – Lyon – Dijon ...
No comment yet.
Scooped by Mickael Ruau
October 21, 2013 11:58 AM
Scoop.it!

Socialter, le magazine de l'économie nouvelle génération - Des tuiles transparentes pour capter l'énergie solaire

Socialter, le magazine de l'économie nouvelle génération - Des tuiles transparentes pour capter l'énergie solaire | EcoConception Logicielle | Scoop.it
L'entreprise SolTech Energy a mis au point une solution originale pour capter et exploiter la chaleur du soleil. Avec ou sans nuages.
Mickael Ruau's insight:

Soltech se décline en quatre versions : Sigma, pour les toits en tuiles, Alfa, pour les autres bâtiments, Techo Solar, pour les toits en ciment (notamment dans les pays méditerranéens) et Soltech Power, qui intègre des panneaux photovoltaïques afin de produire de l'électricité. Le système développé par la jeune entreprise peut être installé dans n'importe quel bâtiment, qu'il soit ouvert (par exemple une piscine en plein air) ou fermé.

No comment yet.
Scooped by Mickael Ruau
October 21, 2013 7:33 AM
Scoop.it!

Réparer soi-même son smartphone

Réparer soi-même son smartphone | EcoConception Logicielle | Scoop.it
Le site internet Sosav.fr propose des pièces détachées et des guides de réparation de produits high-tech. De quoi donner une seconde jeunesse à son Smartphone ou à sa tablette à moindres frais.
Mickael Ruau's insight:

S'inspirant d'un site américain baptisé Ifixit, il décide de lancer son propre service de réparation de téléphone en septembre 2011. Au départ, le projet baptisé Accessoires-iPhone.info ne concerne que des téléphones de la marque à la pomme. très vite, il change son fusil d'épaule et lance Sosav.fr .

"Je commercialisais des pièces détachées, précise le jeune homme, mais, depuis mars dernier et l'arrivée de mon associé informaticien, nous avons ajouté un volet conseils et guides de réparation."

Pour le moment, seuls les modèles les plus vendus sont disponibles sur le site.

No comment yet.
Scooped by Mickael Ruau
October 21, 2013 7:15 AM
Scoop.it!

Where Good Grows : une plateforme pour changer le monde - Sircome

Where Good Grows : une plateforme pour changer le monde - Sircome | EcoConception Logicielle | Scoop.it
Je vous présente Where Good Grows, un site collaboratif qui va rapidement devenir une référence pour les acteurs de la communication sur/pour le (...)
Mickael Ruau's insight:

Fondée par Thomas Kolster, consultant danois en communication et auteur du remarquable ouvrage Goodvertising, WhereGoodGrows (WGG) est une plateforme visant à inspirer la collaboration et le partage de bonnes pratiques de communication qui participent à un monde meilleur.

No comment yet.
Scooped by Mickael Ruau
October 21, 2013 7:11 AM
Scoop.it!

Des films solaires dans du verre afin de recueillir l énergie solaire

Des films solaires dans du verre afin de recueillir l énergie solaire | EcoConception Logicielle | Scoop.it

 

Tweet

 

 

Des systèmes photovoltaïques novateurs intégrés aux bâtiments (BIPV) devraient permettre d'aider davantage les architectes à concevoir des bâtiments n'émettant aucun gaz à effet de serre et capables de recueillir l'énergie solaire ; et cela, afin de respecter les directives internationales relatives à la réduction des émissions de carbone.

 

 

Mickael Ruau's insight:

Cela permettra à toutes les façades en verre des bâtiments, notamment les fenêtres, de recueillir l'énergie solaire de manière "très efficace et rentable" afin de réduire les émissions de carbone du bâtiment, le tout doté d'une apparence visuelle soignée et discrète.

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 12:44 PM
Scoop.it!

Sustainable Web Design: To Munge or Minify? - Mightybytes

Sustainable Web Design: To Munge or Minify? - Mightybytes | EcoConception Logicielle | Scoop.it
Want to make your website more sustainable? Minify its scripts. Tim tells you why in the next post in our Sustainable Web Design series.
Mickael Ruau's insight:

The average amount of JavaScript and CSS on web pages increased 44.7% and 25% respectively in a one year period from November 2010 to November 2011, according to a blog post on Pingdom.

Here is a recent comparison of the average bytes per page by content type for all websites in the Alexa Top 1,000,000 Sites from HTTP Archive. These snapshots were taken on April 1, 2012 and April 1, 2013.

 

(...)

Similar to minification, another practice for increasing script performance is obfuscation, which, unlike minification, actually alters the code through a process called munging.

 

Munged code is typically harder to reverse engineer because function and variable names are converted into smaller strings, making the code more compact (and harder to read by humans). Dojo Compressor’s ShrinkSafe is a tool that can be used to obfuscate scripts.

 

Both minification and obfuscation pertain to external scripts and inline script blocks. So which technique is better? It depends on your needs. According to one of Steve Souders’ post on the Yahoo! Developer Network blog, “In a survey of ten top U.S. web sites, minification achieved a 21% size reduction versus 25% for obfuscation.”

 

Now that you’ve minimized or obfuscated your scripts, you’re well on your way to making your website a little greener. Check out other posts in our sustainable web design series.

 

For information on how minification can also be part of a time-saving front end development framework, see Tai’s blog post “E-Z Bake Websites: Save Development Time by Creating a Front End Framework that Works for You.”

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 11:41 AM
Scoop.it!

Dominique Verrière: LINQ : les requetes SQL generees

Dominique Verrière: LINQ : les requetes SQL generees | EcoConception Logicielle | Scoop.it


Il y a eu beaucoup de générateurs de code SQL dans les outils de développement, mais la qualité du SQL généré laissait parfois à désirer, obligeant le développeur à reprendre tout ou partie du code à la main.
Qu'en est-il de LINQ ?
C'est ce que je vais étudier dans ce post.

Mickael Ruau's insight:

Les développeurs de LINQ ont fait de l'excellent travail : vous pouvez donc utiliser sans crainte LINQ au dessus de SQL Server (mon étude s'est limitée à lui pour le moment).
Il ne faudra bien évidemment pas oublier les bons principes :

Limiter le nombre de colonnes en retourNe jamais (sauf cas rare bien sûr) extraire toutes les lignes des tablesTravailler avec les like (maintenant contains...) avec prudenceetc. ...
No comment yet.
Scooped by Mickael Ruau
October 22, 2013 11:11 AM
Scoop.it!

Developing Amazing Mobile Web Pages | DevWebPro

Developing Amazing Mobile Web Pages | DevWebPro | EcoConception Logicielle | Scoop.it

JavaScript can benefit from many of the same speed-optimization techniques that are used in other languages, like C1,2 and Java. Algorithms and data structures, caching frequently used values, loop unrolling and hoisting, removing tail recursion, and strength-reduction techniques all have a place in your JavaScript optimization toolbox. However, how you interact with the Document Object Model (DOM) in large part determines how efficiently your code executes.

Mickael Ruau's insight:

Here is a summary of the optimization process:

Choose the right algorithm and data structure.

 

Refactor to simplify code.

 

Minimize DOM and I/O interaction.

 

Use local optimizations last.
No comment yet.
Scooped by Mickael Ruau
October 22, 2013 10:55 AM
Scoop.it!

JavaScript Performance Analysis: Sampling, Tracing, and Timing

JavaScript Performance Analysis: Sampling, Tracing, and Timing | EcoConception Logicielle | Scoop.it
Performance optimization of web applications is a hot topic these days. One of the related areas is of course optimizing the application code itself. For client-side application running in the web ...
No comment yet.
Scooped by Mickael Ruau
October 22, 2013 10:35 AM
Scoop.it!

Sequences using JavaScript Array

Sequences using JavaScript Array | EcoConception Logicielle | Scoop.it

Generating a sequence is a common programming task. This is rather easy to achieve using a straightforward loop. With JavaScript however, there exists a more functional variant using the powerful Array object. This permits the generation of all kind of sequences, from A..Z to a list of prime numbers, without any loops at all.

 

 

Mickael Ruau's insight:

Loops are overrated, aren’t they?

Addendum: As a follow-up, see also how you can use the same approach to generate a list of prime numbers, compute the factorial, and produce the Fibonacci series in the new blog post: Prime Numbers, Factorial, and Fibonacci Series with JavaScript Array.

No comment yet.
Scooped by Mickael Ruau
October 22, 2013 9:49 AM
Scoop.it!

Understanding JVM Internals | CUBRID Blog

Understanding JVM Internals | CUBRID Blog | EcoConception Logicielle | Scoop.it

Every developer who uses Java knows that Java bytecode runs in a JRE (Java Runtime Environment). The most important element of the JRE is Java Virtual Machine (JVM), which analyzes and executes Java byte code. Java developers do not need to know how JVM works. So many great applications and libraries have already been developed without developers understanding JVM deeply. However, if you understand JVM, you will understand Java more, and will be able to solve the problems which seem to be so simple but unsolvable.

Thus, in this article I will explain how JVM works, its structure, how it executes Java bytecode, the order of execution, examples of common mistakes and their solutions, as well as the new features in Java SE 7 Edition.

Mickael Ruau's insight:

I don't think that we need to review how Java has been developed to use Java well.

 

So many Java developers develop great applications and libraries without understanding JVM deeply. However, if you understand JVM, you will understand Java more, and it will be helpful to solve the problems like the case we have reviewed here.

Besides the description mentioned here, the JVM has various features and technologies.

 

The JVM specifications provide a flexible specification for JVM vendors to provide more advanced performance so that various technologies can be applied by the vendor. In particular, garbage collection is the technique used by most languages that provides usability similar to that of a VM, the latest and state-of-the-art technique in its performance. However, as this has been discussed in many more prominent studies, I did not explain it deeply in this article.

 

No comment yet.
Rescooped by Mickael Ruau from Algos
October 22, 2013 9:17 AM
Scoop.it!

Windows Timer Resolution: Megawatts Wasted

Windows Timer Resolution: Megawatts Wasted | EcoConception Logicielle | Scoop.it
The default timer resolution on Windows is 15.6 ms – a timer interrupt 64 times a second. When programs increase the timer frequency they increase power consumption and harm battery life.

Via Goulu
No comment yet.
Scooped by Mickael Ruau
October 22, 2013 6:14 AM
Scoop.it!

4 Ways to Make Your WordPress Website More Sustainable with Plugins

4 Ways to Make Your WordPress Website More Sustainable with Plugins | EcoConception Logicielle | Scoop.it
Jeff ran his WordPress site through Ecograder and wasn't happy with the results. Here's his advice on four ways to make your WordPress website more sustainable with the help of plugins.
No comment yet.
Scooped by Mickael Ruau
October 22, 2013 2:36 AM
Scoop.it!

LukeW | Breaking Development: Working with Icon Fonts

LukeW Ideation + Design provides resources for mobile and Web product design and strategy including presentations, workshops, articles, books and more on usability, interaction design and visual design.
Mickael Ruau's insight:
On the Web most icons are displayed as images or SVG files, which are not resolution independent, and difficult to maintain. CSS Sprites have lower overhead but are difficult to create and not resolution independent. SVG images are scalable, style-able, but still have support issues.Pros of using icon fonts: scalable, single file request, styles with CSS, well-supported (but not in Opera Mini).Cons of icon fonts: monochromatic, tricky to make, accessibility issues, can be tricky to control.
No comment yet.
Scooped by Mickael Ruau
October 21, 2013 11:51 AM
Scoop.it!

How to give your Web apps a real speed boost

How to give your Web apps a real speed boost | EcoConception Logicielle | Scoop.it
If your apps take any more than a few seconds to load, you better be ready to kiss your users goodbye. When it comes to page abandonment, there’s no quicker way to lose loyalty than ...
No comment yet.
Scooped by Mickael Ruau
October 21, 2013 7:25 AM
Scoop.it!

Using Google’s New PageSpeed Module for Apache

Using Google’s New PageSpeed Module for Apache | EcoConception Logicielle | Scoop.it
Google's new PageSpeed Apache Module is incredible. I did however hit a few snags in the installation and configuration of the module. Nothing serious, but I thought it was worth pointing them out, in case others run into the same problems.
Mickael Ruau's insight:

If you need to make a quick change to a site that has mod_pagespeed enabled, just append

?ModPagespeed=off

to the URL. This query string parameter will cause mod_pagespeed to disable itself.

No comment yet.
Scooped by Mickael Ruau
October 21, 2013 7:13 AM
Scoop.it!

Des films solaires adaptables sur toutes les surfaces

Des films solaires adaptables sur toutes les surfaces | EcoConception Logicielle | Scoop.it

Il sera peut être possible un jour de recharger des téléphones portables, de décorer des fenêtres, ou d'alimenter de petits appareils électroniques avec une version adhésive des cellules solaires.

 

 

Mickael Ruau's insight:

Il sera peut être possible un jour de recharger des téléphones portables, de décorer des fenêtres, ou d'alimenter de petits appareils électroniques avec une version adhésive des cellules solaires.

Des films autocollants (Peel-and-Stick) ou des procédés de transfert d'impression par eau (WTP) ont déjà été utilisés dans de l'électronique à base de nanofils par l'Université de Stanford.

Un partenariat avec le Laboratoire national sur les énergies renouvelables (NREL) a conduit cette fois à la réalisation d'un dispositif utilisant des films solaires en couches minces "détachables et applicables" sur tous types de support, a indiqué Qi Wang, scientifique au NREL.

No comment yet.