Saturday, December 29, 2012

CodeIgniter internationalization


CodeIgniter is an open-source PHP framework that follows the MVC architecture (Model–View–Controller). Its main advantage is being simpler and lighter (4Mb all wet) than Zend or Symfony, with a fast learning curve. We will detail in this post the internalization by language files in the version 2.1.3 of this framework.

Sunday, December 16, 2012

A transparent screen for Christmas!


In most recent sci-fi movies, transparent screens are widely used: Iron Man 2, Minority Report, Avatar… They all have those future-like interfaces that help us project in a not-so-far future technology paradigm while being relatively close to ours. But why are they so widespread?

Sunday, December 2, 2012

Domain names: the big leap forward


There are now 302 domain name extensions, of which 280 are geographical, and 22 generic. Strengthened by this observation, the ICANN has unilaterally decided the need to drastically increase the number of these extensions by opening an unprecedented process of creation by its order of magnitude.

Sunday, November 25, 2012

Count in Patxohã


The Patxôhã language, also known as Pataxó Hã-Ha-Hãe, Patashó or Pataxi, means tongue of the Pataxó warrior. It is spoken by the Pataxó people in the states of Bahía and Minas Gerais, Brazil. The very harsh history of this people is an illustration of Brazilian colonization, as it is still practiced today.

Sunday, November 18, 2012

Domain names: let's get international


After a brief overview of the history of domain names, both at a technical level and at the level of administration entities, we are going to see in this post how we are moving from an English-speaking Internet to an Internet open to other alphabets and syllabaries.

Saturday, November 3, 2012

History of domain names


Domain names management is an interesting example of scarcity economy, since the resource itself, the fact of linking a domain name to a set of numbers, is virtually unlimited. Why are we still paying for the right to link a domain name to an IP address? This is what we will try to discover through this series of posts about the history of domain names.

Saturday, October 27, 2012

The Spam Zombies and the Captcha Apocalypse

Spam zombies

Most captcha solutions are based on a text rendered hard to read (or to listen to) by adding some noise to it. And most of the time, this text is randomly generated and serves only one purpose: to stop the spam. Too many humans are challenging captchas all over the world at any time to let their brain process useless data.

What can we do to solve that underutilization of brain capacity?

Saturday, October 13, 2012

Live website localization with Pontoon

Pontoon between the beach and the sea of translations

Translating a website via a list of sentences or segments is sometimes quite dry to say the least. The provided files in textual mode, from Excel spreadsheets to Gettext .po, do not allow the translator to see how the translated text will be rendered in its environment: the interface.

How can we know for instance if a shorter wording would be more judicious when the text is displayed within a menu tab? Such sentence would be catchier as a page title, other would gain to be optimized for search engines, or more explanatory for a site map.

There is never only one possible translation, nor a best one that would fit in every situations: each translation must be adapted for an audience, a specific use, an aim, a layout, a context.

Sunday, October 7, 2012

The European cookie law: solutions

Solutions to the European cookies law

In a previous post, we have seen how different countries have implemented the European directive 2009/136/EC, aka the Cookie Directive. To comply with the local laws of each country, your visitors must be provided with a clear information about how cookies are used on your site (even third-party cookies), and an easy way to consent (or not) to them. We will now see what solutions we can implement to comply with these laws.

Sunday, September 30, 2012

The European cookies law

ePrivacy directive and the European cookies law

A “new” online privacy directive is actively being implemented within the European Union since its inception in November 2009. It is aimed at giving the users control over how cookies are used on the websites they visit, giving their consent to their use before they are copied on their device. We will see in this post what this directive says exactly, and how it is implemented in local laws, focusing on United Kingdom, France, Spain and Portugal.

Sunday, September 23, 2012

The world is (not yet) perfect

Give the world

The world is not yet perfect. That's quite an understatement. But we can all do something to make it a better place, and one of them is to donate to organizations working in different fields. Here's a very short selection of them.

Sunday, September 16, 2012

Of content and links

Desire path

The fallow

At the 4th International Conference about Electronic Document (CIDE, Toulouse, 2001), we have presented, Thomas Polacsek and I, the concept of hypartextual fallow (pdf, in French), a new way to create links between documents.

Sunday, September 9, 2012

The .post, a new domain name extension


The .post sponsored top-level domain has been finally delegated on August, 7 2012. It is sponsored by the Universal Postal Union headquartered in Bern, Switzerland. Established in 1874, this specialized agency of the United Nations sets the rules for international mail exchanges and makes recommendations to stimulate growth in mail, parcel and financial services volumes and improve quality of service for customers.

No need to reserve your domain name right away though, as the .post extension is restricted to the use of national and regional postal services and private businesses that provide similar services.

Sunday, September 2, 2012

Types of domain names extensions

Map of internationalized country domain name extensions

Domain names extensions can be classified in a typology based on their use, a priori or not, like for instance geographic extensions or according to the activity they involve.

Monday, August 20, 2012

English numerical idiomatic expressions

The nine lives of the cat

Idiomatic expressions are interesting in the fact they convey a full imagination in a ready-made formula native speakers use without even thinking about it. To memorize them during the early stages of language learning helps lifting the veil on both differences and similarities between languages.

Sunday, August 5, 2012

Christian Guémy, aka C215

C215 in Paris

Christian Guémy, aka C215, is a French street artist renowned all over the world for his colorful stencils representing homeless and fringe people.

Sunday, July 29, 2012

Where is French spoken?

Where is French spoken?

This infographic shows a map of the world that highlights the places where French language is spoken. If French is nowadays mostly spoken in Europe, but also in Canada and Africa, a lot of less known places are spotted on the map.

Sunday, July 8, 2012

Follow-up of javascript libraries

Tool to follow-up javascript libraries upgrade

With the always growing number of javascript libraries and frameworks used in web interfaces, it becomes soon a requisite to keep track of the scripts used, of their version number, and of their dependencies in the ecosystem of internal tools and external websites developped, whether for enterprise or personal projects.
The approach I advice for that is two-fold: a synthetic document and an active watch process.

Sunday, July 1, 2012

Languages families map

Languages families map

This map shows language families distribution around the globe with number of speakers (primary and secondary) for the top ten languages, and dying languages distribution.

Sunday, June 24, 2012

Readability formulas for the Portuguese language

Portuguese Readability formulas

There seems to be no readability formula for the Portuguese language developped in the litterature, as most of them have been developped for the English language. However, these formulas can be used for the Portuguese language to a certain extent, either by using a translated text, or by directly applying them, or even by applying a formula based on a closely-related language.
Let's have a look on these three different approaches.

Sunday, June 17, 2012

Writing for both visitors and search engines

When you write on the web, two audiences with slightly different needs have to be targeted: your site visitors and search engines.

What may look like a mere evidence at first sight, as search engines are supposed to put forward the pages which content is primarily targeted to their visitors, above all since the awakening of the Panda, then the Pinguin (and soon the Zebra too?), meets a real need.

Sunday, June 10, 2012

Who will be the next Google animal star?

Google Zebra filter
After having named its two last filters Panda and Pinguin, what will be the next web actors charming (or despised) animal?

Both share a big sympathy element: the Panda for its slowness and its black-circled eyes that make an adorable cuddy toy, and the Pinguin for… Happy Feet (how a waddling animal could be antipathique?). And both have low-key colors: black and white is the new rainbow.

Who is still competing in the animal kingdom for the next version of the filter?

Sunday, June 3, 2012

Responsive web design

The usage trend tends to be more and more focussed on mobiles and tablets. The web is (and will be) more and more mobile and accessible from anywhere, under largely heterogeneous conditions. We cannot rely anymore on site statistics to know for which specific hardware and software configuration a web site should be aimed, as there is no ideal model user anymore (we can safely say there never was any, though).

If the marketing trend is to focus on sites dedicated to iPhone or iPad due to their penetration rate, it is inconceivable not to be aware of all the other devices, whether present or future, which characteristics differ (or will differ more and more).

Monday, April 23, 2012

jQueryUI Dialogs

jQueryUI is a set of graphical interface libraries that comes on top of jQuery. Developped by the same team, it follows jQuery's evolutions and proposes a set of interface elements (named widgets) such as buttons, accordions, tabs, and what interesses us here CSS popups called dialogs. A dialog can display a text message or an HTML form, and it can be modal, i.e. it stops the user's navigation and waits for an action to go on (the validation of a form, the click of a button…).

Sunday, April 8, 2012

Long and short numeric scales

Long numeric scale and short numeric scale
The concept of long and short numeric scales has been coined by the French mathematician Geneviève Guitel in 1975. In the short scale, every new word greater than a million is one thousand times bigger than the previous term (the digits are grouped by three), whereas in the long scale, every new word greater than a million is one million times bigger than the previous term (the digits are grouped by six).

Sunday, March 25, 2012

Porting Prototype code to jQuery

Javascript frameworks evolve through time, and some give way to others. This is the case for the Prototype framework, supplanted by jQuery since a few years now.

We will see in that example the differences of calling an ajax function to process a minimalist contact form.

Sunday, March 18, 2012

DuckDuckGo, put a duck in your search engine

DuckDuckGo search engine
The search engine DuckDuckGo has been around for a few years already, but it has reached not long ago the million queries per day.

Let's see what makes this Duck an interesting alternative to Google or Bing.

Sunday, March 11, 2012

Advanced jQuery Form validation (5): how to limit the value of an input field to another's

In this example, we will limit the maximal value entered in an input field according to the one entered in another one.
The form has two input fields:
  • The first field is limited between 0 and 100 (limitation defined in the rule range: [0, 100])
  • The second one is limited between 0 and the value entered in the first field.

Wednesday, February 29, 2012

Microsoft Translator Hub, where automatic translation helps endangered languages

Microsoft Translator Hub
Beyond finely-tuned marketing slogans (“Where language meets the world”, “Bridging languages, cultures and technology”) and laudable intentions (“Microsoft Translator Hub is helping smaller languages thrive by putting the power to build machine translation systems in the hands of local communities”), What could be Microsoft's and its new Translator Hub's goals?

Sunday, February 26, 2012

Kurrently, social search engine


social search engine

If the big search engines try to put their hand in the social search cookie jar, it is still quite difficult to keep an eye on what is said and what is done on social networks.

Sunday, February 19, 2012

How to translate idioms

translating idiomatic expression
Translating idioms is an exercise that cannot be improvised. A word-by-word translation is in the best case unsavory, and most of the time a complete nonsense.

For example, how can you translate the idiom to have a frog in one's throat?

Wednesday, February 8, 2012

Meet Volunia, a new search engine

Interface of the Volunia search engine in connected modeLaunched yesterday (on February 7) in its test phase, Volunia, the new search engine which is a true hybrid of social network and search engine, brings some fresh air and innovative concepts in the world of on-line search.
Seet & Meek, or a Power User experience feedback in a connected mode.

Saturday, February 4, 2012

Star Wars languages

Dark Lens, Cédric Delsaux
© Dark Lens, by Cédric Delsaux
The Star Wars linguistic universe counts many languages, either original or pidgins, most of them developed by Ben Burtt, sound designer for the Star Wars movies, from real languages recordings (English, Quechua, Tibetan, Zulu). Thus we find Bocce, Ewokese, Gunganese, Huttese, Jawaese, Neimoidian, and Shyriiwook. Mandalorian, or Mando’a, is an exception as it has a real grammar developed by the author Karen Traviss, as well as a writing system.

Sunday, January 29, 2012

French numerical idiomatic expressions

Idiomatic expressions are locutions specific to a language, often colorful, and sometimes with the value of a popular saying. Most of the time, they cannot be translated word by word, but remain a good way to measure the cultural proximity of two languages. Besides, knowing the most used idiomatics of a language is a funny and interesting stage of its learning, as they tell a lot about its popular culture and its history rooted in a given time and place.

Sunday, January 22, 2012

The evolution of web browsers

The evolution of web browsersThis dynamic visualization shows on the same timeline the apparition of each main web browser and their different versions, highlighting the technologies they support (flash, CSS, ajax…) and the current acceleration of the HTML5 tags support. We can even see how the browsers interfaces looked like in the past.

Saturday, January 14, 2012

Code-switching between English and Spanish

Bilinguals, and multilinguals alike, often tend to switch between languages when the opportunity arises. While sometimes this phenomenon comes from an uneasiness in a specific situation when one language better fits the needs, it is always a sheer pleasure to speak in that intermingling mode with someone else who knows the involved languages. You can directly translate idiomatics which would not make any sense in the word-by-word translation but are a genuine word game you have to decipher in real-time. Most of the time, otherwise, multilinguals have to put strict barriers between each language, thus they kill this way that freedom of speaking in tongues which can be so joyful.

Sunday, January 8, 2012

Advanced jQuery Form validation (4): Display error message for grouped fields

After having discovered conditional triggers and learnt more about where to display error messages, we are going to display an error message for a group of fields.

In that example, two fields are related and at least one of them is required. In other words, each of those two fields is required if the other is empty. These two fields can be of any type, but we'll focus here on an input text and a textarea. Of course, we could have used a radio button to indicate that specific behavior, but we would like to keep it simple on the interface and limit the number of form elements.