How I met your blog

Aller au contenu | Aller au menu | Aller à la recherche

jeudi 12 janvier 2012

Changing the IOS image of one switch in a 3750 stack

Today I was confronted with the following problem : I was adding 2 switches to an already existing 3750 stack setup.

The way to do that is to connect the new switches to the stack with stack cables and then power them up, the stack sees the new switches and tries to add them to the stack.

The only problem is my 2 new switches had a newer version if the IOS on them and so the stack would refuse to add them. It would try to automatically upgrade the IOS version on the new switches but would fail.

So I then tried to update manually (as explained here) I used the following command :

 archive download-sw /allow-feature-upgrade /destination-system 3 /force-reload /imageonly /overwrite flash1:/c3750-advipservicesk9-mz.122-46.SE.bin

But then the system would complain that the image wasn't a valid IOS image. I ended figuring out that the command was expecting a tar archive and not a bin but it was the only thing I had.

The solution to this problem is to manually upgrade each switch. Here is how you do this, I used this as the basis for this.

  • The first thing I needed to do is making room for the image on the destination switch (here it's switch 3 of the stack)
 delete flash3:/c3750-ipservicesk9-mz.122-55.SE1.bin
  • Then we copy the image to the destination switch
 copy flash1:/c3750-advipservicesk9-mz.122-46.SE.bin flash3:
  • Now we tell switch 3 to boot on this image
 conf t
 boot system switch 3 flash:/c3750-advipservicesk9-mz.122-46.SE.bin
  • Now we need to reboot that particular switch (and not the whole stack as suggested in the previous link)
 reload slot 3
  • When the switch reboots it will be able to join the stack without a problem
  • Now we just need to repeat the operation for switch 4

dimanche 23 octobre 2011

Unpacking a multi-image uImage

In my recent atempt to run Meego on the HP touchpad I needed to see how Cyanogen Mod's installer works.

The way it works is that you make you touchpad boot on a custom uImage they provide. This custom uImage is a multi-image uImage containing both the kernel and an initrd.

What I wanted to do is extract the initrd and customize it to fit me needs.

The thing is that at the moment the source for this initrd (and the script it contains) are not available. So here is how I extracted the thing.

First of all we need information on the layout of the uImage. To do that let's run :

% mkimage -l ACMEInstaller                                                                                                                                                                   
Image Name:   test-multi-image
Created:      Sun Oct 16 21:29:20 2011
Image Type:   ARM Linux Multi-File Image (uncompressed)
Data Size:    9084743 Bytes = 8871.82 kB = 8.66 MB
Load Address: 00000000
Entry Point:  00000000
Contents:
   Image 0: 3808324 Bytes = 3719.07 kB = 3.63 MB
   Image 1: 5276407 Bytes = 5152.74 kB = 5.03 MB

Ok what we get from that is that this image contains image0 and image1 so how do we extract them ?

First off let's have a look at the strcture of an uimage file here

Here's the important part :

"Multi-File Images" start with a list of image sizes, each image size (in bytes) specified by an "uint32_t" in network byte order. This list is terminated by an "(uint32_t)0". Immediately after the terminating 0 follow the images, one by one, all aligned on "uint32_t" boundaries (size rounded up to a multiple of 4 bytes - except for the last file).

The structure is basically this one :

[uImage hdr (64 bytes)][image0 size(4bytes)][image1 size(4 bytes)][(uint32_t)0(4 bytes)]

AS we can see in the file the header is 7x4 + 4 + 32 = 64 bytes We then need to add the 2 image sizes + the ending (uint32_t)0 which make up 12 bytes and we get a grand total of 76 bytes. If we had had 3 images packed in the image it would have been 80 bytes, you get the logic.

So to get only the 2 images without the header we do :

dd if=ACMEInstaller of=ACMEImages ibs=1 skip=76

This gives us a file with the 2 images, how do we separate them now ? That's the easy part : mkimage -l gave us the size of each image so to get to each one :

dd if=ACMEImages of=ACMEzImage ibs=1 count=3808324
dd if=ACMEImages of=ACMEinitrd ibs=1 skip=3808324

Now we have our 2 images but as you can see if you do a

file ACMEinitrd

it is still recognized as an uImage (this might be specific to the acme uImage which is a multi-image file containing a kernel uimage and an initrd uimage). This is because each image in the initial uImage is also a uImage so to get to the raw data we need to strip the header. The normal header of a uImage is 64 bytes long so here we go :

dd if=ACMEinitrd of=ACMEinitrd-real ibs=1 skip=64

To confirm that we have the raw data :

% file ACMEInitrd-real                                                                                                                                                                      
ACMEInitrd-real: Linux rev 0.0 ext2 filesystem data (mounted or unclean), UUID=975370b5-4647-4fb7-bdd2-3d8a9bd2486d

Now we just need to mount it and have fun

vendredi 24 juin 2011

Did we just jump of a not-so-burning platform ?

So here we are ! The N9 and the N950 have finally been announced and they both look awesome (aspecially the N9 of course).

The N9 is the end user device, it's beautifull from the outside and from the inside (the software). I won't go into the details of the hardware specs but it seems to be a great device (if you want to see a detailed review there's one here. When even engadget says good things about a Nokia product it must be good :)

The N950 is pretty much the same device with a hardware keyboard and some other minor differences (the screen for instance). And it's aimed solely at developers (it won't be sold). But it runs the same software (Meego 1.2 Harmattan).

I just recently switched from my N900 to a brand new Motorola Atrix 4G and let me tell you why I already want to replace it with an N9 (or an N950) :

  • Openness

I'll start with what's the most important thing I want in a phone. I want to be able to do whatever I want with it. My N900 is awesome for that : it can triple boot (Maemo, Meego and Nitdroid but I could also run other OSes on it), I can run my own custom kernels, fiddle with the system, etc. And I love that On the other hand the Atrix is locked down. It comes with motoblur which is Motorola's customized Android. I wanted to put a vanilla android on it. Oh wait, no you can't : the bootloader is locked. So you can't change anything significant you're left with customizations or hacking the bootloader or something like that.

  • Great camera

On most phones the camera sucks. I was expecting the same from my N900, well guess what it's the opposite : the camera is great : it takes very good pictures and very good videos. (Photo proof, Video proof) Well when I got the Atrix I thought : "It's the same number of MegaPixels so it must probably be as good". Dead wrong. The pictures I took with it suck and the videos are bad too (Video proof) So yes Nokia knows how to make good cameras and I believe now that the "Carl Zeiss" label isn't just there to impress it is indeed a quality label. And seeing this, this and this the N9 will be no different.

  • Great baseband

When you talk about Nokia phones the other thing that they're known for is the quality of the phone part.
Great reception, great sound quality, no antenna problems :)
After all they've been in this business for about 40 years so they know how to do it.

  • Great toolkit

Last but not least Nokia has, in my point of view, the best mobile toolkit around : Qt/QML ! I've tried my hand at iPhone dev, Android dev and Maemo dev (using GTK and QT) and Qt/QML is by far the best experience I've had. It's easy to learn, easy to do great things with and it has access to most of the Qt mobility framework allowing devs to take full advantage of things such as location services, web services, etc.

So yes I want to go back to a Nokia device.

Now on to the harder part....

Nokia has announced it's new strategy on November 11th as everybody knows. And this strategy is :

  • Meego becomes a future disruption OS (whatever that means)
  • WP7 will become the main OS at Nokia
  • Symbian will be out in a few years

I remember being very frustrated at the time by Elop's decision to drop Meego and I thought to myself : "He must have seen some kind of unpolished version of meego and think : this sucks, we have to drop it" I don't know what he had seen by then but if has seen a prototype of the N9 running a semwhat finished version of Harmattan, how could he drop that ??!!

So now on to the questions :

  • Why is the N9 here ?

It's a legitimate question : I'm very happy that it's here but it doesn't make sense in Nokia's strategy : why would they unveil a device that's based on an OS in which they don't seem to have any more interrest ?

I thought I had found an answer to this question in this blog post. What it says is that the devs had to battle management to get this thing out of the door so my answer was : "People at Nokia battled to get this thing out of the door and it's the first and last Meego device that Nokia will produce"

  • But then why would Nokia invest so much in it ?

Nokia invested much money and effort to promote the N9 and the underlying QT framework :

  • A new webiste
  • A developer device the N950
  • Updated QT SDK to include Harmattan
  • So if it is going to be the last Meego device why bother ?

I don't really know and I think only maybe Stephen Elop (and other people at Nokia) knows. But in the end it's frustrating for everyone.

"Does Nokia have a clear strategy ?" is the question most developers and companies will ask. Why wouls you invest time and effort in a dead platform ?

I want to develop for Meego but if the platform is to disappear in a few years it's not good.

My thoughts at some point were : Nokia is going to keep Meego for the high end devices and replace Symbian on the low en dones with WP7 but I don't think WP7 can run on very limited hardware such as the one in those low end phones.

So did Elop jump off of an almost extinguished platform ? Does he have a plan in mind that will put all the pieces of this puzzle in place ? Is he payed by Microsoft to get Nokia to sink so they can buy it ?

In any case all this uncertainty doesn't help Nokia right now : the people that gravitate around this company want to know in what direction it's headed whether they jump ship or stay then is another question.

mercredi 30 mars 2011

Dual stacking your infrastructure part 2

In the last weeks here's what I have done :

  • Reboot our core routers to use the dual ipv4/ipv6 SDM template
  • Realize that this wasn't enough to support BGP over ipv6
  • Install a test C3750 with a newer IOS and the v4/v6 SDM template
  • Set up a vlans for ipv6
  • Set up BGP to advertise my v6 block

Finally as of yesterday my v6 block is announced to the internet !

Here are the steps in more detail

So as I was saying last time I needed to reboot my core router (a stack of 3750) to change the SDM template in order to support ipv4/ipv6 routing. So I did but after that I realized it wasn't enough to support IPv6 BGP, I had to update the IOS version of my router.

In order to make absolutely sure that it would work in production I did what I should have done form the very beginning : set up a spare 3750 with the new IOS image and see what the pitfalls are.

With my provider we added a vlan just for ipv6 bgp. Once that was done it was just a matter of setting up the bgp session with some ipv6 specifics. Here is the interresting part of the configuration :

router bgp 46720
 bgp router-id x.x.x.x
 bgp always-compare-med
 bgp log-neighbor-changes
 neighbor XX:XX:XX:XX:XX:XX remote-as <stripped>
 neighbor XX:XX:XX:XX:XX:XX description <stripped>
 neighbor XX:XX:XX:XX:XX:XX transport path-mtu-discovery
 neighbor XX:XX:XX:XX:XX:XX password <stripped>
 !
 address-family ipv4
  no neighbor XX:XX:XX:XX:XX:XX activate
  no auto-summary
  no synchronization
 exit-address-family
 !
 address-family ipv6
  neighbor XX:XX:XX:XX:XX:XX activate
  neighbor XX:XX:XX:XX:XX:XX remove-private-as
  neighbor XX:XX:XX:XX:XX:XX prefix-list announcements-v6 out
  neighbor XX:XX:XX:XX:XX:XX route-map ASXXXX-v6-in in
  neighbor XX:XX:XX:XX:XX:XX maximum-prefix 1000 restart 300
  network 2620:61::/48
 exit-address-family

This basically declares a neighbor and instructs the router to only use it for ipv6.

And once the session was up ipv6 was working. I created a vlan on my internal network specifically for ipv6 (I don't really want servers getting ipv6 through slaac so I will add the right vlan interface where I want ipv6 to be enabled).

The next step will be to upgrade the production router to the latest IOS version and then to move the BGP session to the production router. Then we will be able to start testing services over ipv6.

mardi 8 février 2011

Dual-stacking your infrastructure

With the recent assignment of the last ipv4 /8 blocks to RIRs and the IPV6 day coming up now is probably the time to dual-stack your infrastructure.

In the following weeks I will try to document the process we're going through at Ubity to add IPv6 to our infrastructure.

The very first step was to get a block of IPv6 of course. We had two choices to get one :

  • Ask one of our providers to assign us a block. This is pretty easy but means you don't own your block and it can become problematic if you ever decide to change providers
  • Buy a provider-independant IPv6 block through ARIN. This is a better solution but has its requirements.

We decided to go through the second option and here is what is required to get an IPv6 /48 block :

  • Be able to justify a 25% usage of an IPv4 /24 block (that's roughly 64 IPs used)
  • Pay 1250$ for the assignment then 100$ a year

We were able to meet both criterias so we are now the proud owners of 2620:61::/48 !

Now on to actually using this block, here's what I still need to do to get it up and running :

  • Reboot our core router (a stack of 3750) to enable the v4&v6 SDM template
  • Setup new BGP sessions with my providers for ipv6 (I don't want to mix v4 and v6 announcements)
  • Announce my block to my providers
  • Set up test servers with dual-stack
  • Set up our office router to support dual-stack (it's an Asus RT-N16 with tomato firmware, I've read it supports dual stack)
  • Start offering ipv6 services (beginning with the website, hopefully voip will follow)

New articles to come !

jeudi 26 novembre 2009

Avoid packet loss on overloaded internet connection

We ran across a weirdness in one of our customers internet lately. This weirdness is that it had packet loss even though they have 12mbits/sec up and down and we had our tomato router installed with everything set up nicely (this setup works for hundreds of other customers). Except he uses a fiber connection and I ended up being able to pinpoint the problem to this :

His provider pushes traffic at speeds up to 100mbps to the providers switch at the customers facility and that switch then does traffic shaping to 12mbits/sec on the outbound port to the customers equipment thus dropping some of the packets.

What can you do in such a case ? Well I discussed this with a network engineer and ended seeing the following option : police the incoming traffic to a lower bandwidth than the one the customer is supposed to have (say 10mbps/sec) that way the tcp windows will shrink enough not to saturate the 12mbps.

So how do I do that in practice ?

Well I connected through ssh to the tomato router, edited /etc/qos (that's where the qos happens) and changed the ingress rules to :

 $TQA handle ffff: ingress
 $TFA parent ffff: prio 1 protocol ip u32 match ip src 1.2.3.0/24 police rate 11000kbit burst 10kbit drop flowid ffff:1
 $TFA parent ffff: prio 5 protocol ip u32 match ip src 0.0.0.0/0 police rate 10000kbit burst 10kbit drop flowid ffff:5

What does this do ?

It limits incoming traffic to 10mbits/s with a 10k burst and allows everything coming in from 1.2.3.0/24 to use up to 11mbits/s of traffic.

Result ? No more packet loss and a happy customer.

vendredi 16 octobre 2009

Mysql search and replace

Today I needed to update around 50 mysql entries containing emails since my customers domain just changed, here is how I did it :

UPDATE table SET email=REPLACE(email,"olddomain.com","newdomain.ca") WHERE customer="customer1";

vendredi 18 septembre 2009

Removing duplicates from a mysql table

Recently I had a problem where one of my script would insert duplicates in a table in certain situations. So I had to de-depulicate my entries.

I found a post that solved this issue but it didn't quite satisfy me so here's my solution :

Create a new table that is a copy of the original one and add a unique index on whatever cols form something that is indeed unique (for me it wasn't quite as simple as putting a unique index on an id field).

Now the only thing you need to do is insert the content of the old table in the new table while ignoring duplicates. This is achieved with the following line (also I wanted to remove anything older than january first of this year) :

INSERT IGNORE INTO new_table SELECT * from old_table WHERE date >= '2009-01-01 00:00:00';

Now you can either drop the old table or move it out of the way and replace it by the new one by doing a rename.

RENAME TABLE new_table TO old_table;

samedi 7 mars 2009

Ethernet bonding on linux (Debian based)

In my current position as a system / network administrator I needed to get a redundant network architecture so that if a switch fails, a network cable is cut off, a network card fails, etc the service wouldn't be impacted.

To achieve this we chose to go with a stack of 3750 cisco switches (we are starting with 2 switches) each one connected to a different power circuit.

We then attach our servers to both switches using what cisco calls etherchannel with lacp (which is in fact ieee standard 802.3ad) Some documentation

On the cisco side it's only a mater of adding your interface to channel group (it's explained quite well in cisco's documentation under etherchannel using LACP).

On Linux's side etherchannel is called interface bonding.

In order to use bonding you have to load the module with th right options (for LACP you at least have to pass option "mode=4"). Then you will have to create q bond0 interface to which you will attach several (at least 2) ethernet devices.

Here are 2 very interresting articles :

mardi 23 septembre 2008

Le voile se lève un peu plus sur Android

Comme souvent ces derniers temps je vais vour parler d'Android (et de Maemo un peu).

Alors l'évenement du jour était la présentation du HTC Dream (ou T-Mobile G1) qui est le premier téléphone à faire tourner Android (l'OS mobile de Google pour ceux qui n'auraient pas suivi). J'ai donc commencé ma journée en lisant l'article d'ars technica sur la présentation en question qui m'a un peu laissé sur ma fin puisqu'on n'y voit pas plus qu'avant ce qu'Android peut faire.

La journée continue et un nouvel article sur le blog officiel de Google fait aussi part du lancement officiel d'Android sur une vraie plate-forme. Bien mais toujours pas d'images... L'article mentionne que pour avoir plus de détails on peut aller sur le blog de l'équipe mobile de google. Et la enfin une vidéo assez sympa de présentation d'Android.

Ca à l'air bien pensé (ce qui n'est pas vraiment étonnant pour un produit Google). Ce que j'ai bien aimé :

  • Le "screen lock pattern"
  • Le fait que tout soit tout le temps synchro avec le google account (mais que se passe t'il en cas de conectivité limité ?)
  • Les notifications cool
  • Si le street view est aussi fluide que ca ca doit vraiment être sympa (surtout si c'est bien utilisable au doigt)

L'avantage que je vois par rapport au iPhone c'est qu'on est moins bloqué dans la logique mac : si je synchronise mon calendrier sur google via Android je peux ensuite le synchroniser sur Windows, MAC ou Linux (voire même Maemo) indifféremment (du moment qu'il le supporte) et bien sur que tout ceci est open source.

Sinon pour parler plus marketing le T-Mobile G1 sera dispo partout ou T-Mobile est présent (US et certains pays d'europe) à partir du 22 Octobre. Aux US le téléphone coutera 179$ avec un engagement de 2 ans. Pour contrer les atouts de l'iPhone Google à mis en place un partenariat avec amazon pour ce qui est de la musique. Et va lancer son propre Android Appstore.

Bref Android semble vraiment pouvoir être un concurrent de choix pour l'iPhone. Alors quid de Nokia ? Pour l'instant ils ne me semblent pas prêts à lâcher la plate-forme S60 (j'ai vu une vidéo cette semaine des Nokia E72 et E75 qui tourneront sous Symbian) rien ne les empêche d'utiliser Android mais je pense qu'ils vont plutôt essayer de se démarquer.

Et peut être vont-ils le faire en adoptant Maemo comme plate-forme mobile (bien qu'elle ne soit pas encore mature pour cet usage d'après moi). Quelle transition pour vous dire que ce week-end c'était le premier Maemo summit en allemagne. A cette occasion Nokia a dévoilé pas mal de chose sur le futur de ces tablettes et de Maemo.

D'abord la prochaine version de la tablette :

  • Maemo FR annonce un N900 avec les specs que Nokia a donné. Je pense qu'ils vont un peu vite en besogne puisque Nokia n'a pas annoncé le nom du produit pour l'instant ni les specs complètes.

Ce que l'on sait :

  • En terme de hardware : 3G/3G+ (UMTS et HSDPA donc), a priori une webcam haute définition, processeur TI OMAP3 (plus puissant que l'actuel OMAP 2420), possiblement un accélerateur graphique puisqu'OpenGL va être intégré. On en sait pas beaucoup plus pour l'instant
  • En terme de software : Maemo 5 a été annoncé (nom de code Fremantle) et incluera énormement de nouvelles choses parmi lesquelles on peut noter :
  • l'arrivée de tracker, pulseaudio et upstart
  • la contribution de Nokia au support du HSDPA dans le noyau
  • la création d'un driver libre pour le chip Wifi des n800 et n810 (ce qui me laisse penser qu'on va surement bientôt pouvoir faire du monitoring et de l'injection avec les tablettes :))

Et bien d'autres chose qui sont documentées ici

Bref pas mal de bonnes choses à venir et j'ai hâte de voir maemo 5 (et de récupérer ma tablette qu'il a fallu que je renvoie aux états unis parce que l'écran n'est plus tactile grrrr)

Update

Quelques images de plus

mardi 12 août 2008

Effectivement

Le lien suivant apporte de l'eau au moulin de mon dernier post : il semble de moins en moins probable que symbian et android fusionnent.

J'ai l'impression que les analystes ne connaissent pas assez bien leur sujet pour pouvoir faire un analyse raisonnable de ce qui pourrait se passer. Je veux dire qu'il est clair que fusionner une plate-forme en c++ avec une plate-forme java est aussi facile que d'en réecrire une complète.

Par contre QT sur symbian j'y crois un peu plus. J'ai cependant du mal à voir où va Nokia avec tout ca. Jusqu'à récemment je pensais que Nokia investissait dans maemo pour, à terme, s'en servir comme plate-forme pour ses téléphones mais cela semble de moins en moins probable.

Il semblerait que maemo reste cantonné aux Internet Tablets (qui est un marché qui risque de devenir de plus en plus gros, surtout si Nokia rajoute le support de la 3G dans ses tablettes ce qui semble être en bonne voie (du les utilisateurs en veulent)). Peut-être que la stratégie est d'avoir maemo pour les gros smartphones (avec assez de puissance pour faire tourner Linux) et symbian pour les plus petits téléphones.

Comme toujours : wait and see.

vendredi 25 juillet 2008

Google, Nokia, toussa

A l'ordre du jour :

  • Knol le Wikipedia de Google
  • Android, Symbian, OpenMoko et l'iPhone (bien sur)

Alors d'abord Knol, l'encyclopédie colaborative de Google. Je trouve cette initiative affreusement effrayante. Apparemment ca fait pas mal de temps que Google lorgne sur les rofits potentiels que pourrait générer Wikipedia (qui se refuse à inclure de la pub dans ses pages). Vu qu'ils ont pas réussi à corrompre les gens de la wikimedia foundation ben ils ont démarré leur propre encyclopédie en s'éloignant un peu du principe de Wikipedia (et de leur moto "do no evil", enfin selon moi) en effet les auteurs sont rémunérés et plusieurs articles sur le même sujet peuvent cohabiter et c'est l'auteur de chaque article qui décide de l'utilisation ou non des ajouts des autres internautes. Bref certains succombent déjà à la tentation de se faire de la thune en allant plutôt poster sur Knol que sur wikipedia. A ceux la je dis bravo. Si les programmeurs de logiciels libres faisaient pareil Microsoft aurait tout loisir de racheter les meilleurs logiciels libres avec les programmeurs de ceux-ci.

Pour réagir à ca moi je ne pense pas que android et symbian puissent finir par fusionner. Pour avoir essayé les deux c'est bien trop différent dans l'UI autant que dans le concept. Sinon je voulais plutôt donner mon avis sur l'usabilité des interfaces de téléphone :

  • Android : je l'ai un peu testé sur mon n810, c'est plutôt convaincant mais le n810 ne faisant pas téléphone je n'ai pas pu le tester entierement. Le soin apporté à l'ergonomie n'est pas le même que l'iphone mais dans le domaine des systèmes pour téléphone open source je pense que c'est le plus abouti (tant que symbian ne sera pas libre)
  • Symbian : j'ai un n91 qui est donc sous Symbian : ca sert la fonctionnalité correctement : les menus et les applications marchent correctement. Sur mon n91 c'est lent mais c'est plutôt lié au hardware (le même système sur un n95 marche bien mieux). Ca va évoluer vers une interface plus touchscreen friendly , etc. Reste que ca à pris un coup de vieux depuis la sortie de l'iphone.
  • OpenMoko : d'aprés ce que j'ai pu lire l'interface est tout bonnement à chier et mérite d'être revue de fond en comble. Je n'en sais pas plus ne l'ayant pas testée
  • iPhone : pour y avoir touché un peu (comme beaucoup de gens) c'est egonomique, bien pensé, beau, etc.. Sans doute la meilleure ihm qu'on ait vu depuis longtemps. Reste que ca n'est pas libre.

Bref pour moi Android et Symbian (quand il sera libéré) dans le domaine du libre ont de bonne chance de percer si ils font des efforts pour se remettre à niveau par rapport à l'interface de l'iphone. Android est sans doute plus proche de quelque chose de vraiment ergonomique et plaisant à utiliser. Quand symbian sera libéré ca peut devenir très intéressant. Je pense que dans les prochaines années la bataille dans ce domaine risque d'être rude mais donnera à l'utilisateur de quoi régaler ses doigts et ses yeux.

dimanche 20 juillet 2008

Geek

Pour ceux qui se plaindrait que ce blog n'est pas assez Geek, tout d'abord sachez que c'est plus ou moins voulu : ce blog est plutôt pour m'exprimer sur d'autre sujets que l'informatique. D'autre part vous pouvez aller jeter un coup d'oeuil ici. C'est un site qu'on a monté avec quelques amis administrateurs système et qui regroupe quelques docs cools :)

Enjoy.

mercredi 25 juin 2008

L'outil de propagande français est enfin prêt

Hé oui ca y est : Sarkozy vient de réussir à contrôler l'ensemble des chaînes grand publique française :

  • Les chaines privées ? Tous des potes de droite qui vont pas chier sur Sarko parce qu'ils aiment trop le capitalisme.
  • Les chaines publiques ? A partir de janvier prochain c'est le conseil des ministres qui choisira le nouveau président de france télévisions

Bref merci Sarko.

Heureusement à l'étranger on a que le meilleur de la télé française : les emissions de canal+ (zapping, grand journal, etc)

mardi 24 juin 2008

Montreal, la multiculturelle

Ici, à Montréal une des choses qui me plait le plus est le pluralisme culturel (hé ouais).

De base dans la rue on entends anglais et français à dose quasiment égale (un peu plus de français quand même). Mais aussi de l'espagnol, de l'italien, du chinois, de l'allemand, etc. Dans la ville les populations les plus représentées ont chacun leur quartier :

  • Les Italiens ont leur quartier italien au nord
  • Les chinois leur chinatown au sud
  • Les français ont le plateau (la où on habite) qui se situe à peu près à mi-chemin entre les deux.
  • Les portugais ont aussi leur quartier

Bref pas mal de cultures différentes cohabitent ce qui est franchement sympa ne serais-ce que pour la nourriture mais aussi pour les gens qu'on rencontre, etc.

Pour illustrer ca : il y a deux semaines je travaillais pour un client anglophone (dans le quartier anglophone : le centre financier de Montréal) et tout le monde parle donc anglais. Un vendredi je vais faire un 5 à 7 avec les gens avec qui je travaille et en fait je découvre que pas un seul est Québecois. Il y avais : un Russe, un gars du Tadjikistan, un Gutemalteque, un Uruguayen et moi, français.

Ce qui est encore plus marrant quand tu travailles dans une boite anglophone à Montréal c'est que le langue officiel est l'anglais, certes mais les quebecois se parlent en général quand même en francais. Sauf que le truc bizarre c'est que d'un seul coup ils vont se mettre à te parler en anglais, puis repasser en français. C'est assez troublant au départ surtout quand t'es pas habitué : tu t'attends à ce que la prochaine phrase soit en français et en fait non, bam c'est de l'anglais...

Sinon aujourd'hui c'est la saint Jean, la fête nationale Quebecoise. Du coup c'est férié et c'est la fête toute la journée avec drapeaux et chapeaux aux couleurs du Quebec.