Wednesday, 28 December 2016

Temps Suspendus

In my last visit to Paris right before Christmas I was lucky to come across just by chance with one of the best art exhibitions that I've been able to enjoy in the last years. When walking from Belleville/Menilmontant (I really love that area) to La Villette, I passed by again a beautifult piece of modern architecture of the 70's, a building at Place du Collonel Favian that has always caught my eye but on which I'd never searched for information before. Well, I learnt that day that this building was built by Oscar Niemeyer in the 70's (and appropiately is called "Espace Niemeyer"), and hosts the headquarters of the Parti Communist Francaise. Furthermore, it also hosts art exhibitions (or even fashion shows to allow the party to raise some funds). This time there were some posters of an art exhibition, Temps Suspendus, dedicated to Urban Exploration and abandoned/derelic places.

The exhibition was just amazing. It presents 75 pieces by 3 photographers/explorers: Romain Veillon, Sylvain Margaine and Henk Van Rensbergen. The pics have been taken all over the world, but Belgium, France and Italy are by far the most represented locations (2 of the authors are French nationals, 2 of them live in Belgium...). Belgium is so present that one could think of it as one of the hottest spots for this kind of photography, which makes sense as one can imagine that the economic decline of Wallonia resulting from the lost of importance of coal mining and steel works (being Asturian that quite rings a bell...), has given place to a huge number of abandoned buildings. Notice anyway that one of the most impressive pics corresponds to the Stock Exchange of the wealthy city of Atwerpen.

Other than the content, the container is particularly pleasant. As I've said the external part of this Oscar Niemeyer building is pretty interesting, a nice 70's office building, but what is really outstading is the underground conference center(surrounded by the exhibition space).

The ancient building at this location was the seat of the Antifascist International Comittee where volunteers enrolled in the International Brigades. This plaque set by the Communist Party honoring these heroes is a powerful reminder of how at times of horror Humanity is able to produce dignity and courage, whether in Europe in 1936 or un Rojava in 2016.

Friday, 16 December 2016

Basic SQL Technique

I've never liked SQL too much and I've never been particularly skilled in it, so probably what I'm going to show in this post is pretty obvious, but anyway. This is something that I used like 12 years ago and when last week I faced the same issue it took me some head scratching to come up with the solution, so maybe in other 12 years I'll find useful having done a DumpToBlog here. The technique is using the same table twice in the same query.

Let's say I have 2 tables like this:

And we went to obtain a listing like this:

So we have 2 different columns in the Countries table that point to Cities table. The solution is pretty simple, just use the Cities table in our query twice, using a different alias. I mean:

select countries.Name, C1.Name as Capital, C2.Name as MostPopulated
from countries, cities C1, cities C2
where countries.CapitalCityId = C1.Id
and countries.MostPopulatedCityId=C2.Id 

Hum, probably my shortest post so far.

Wednesday, 14 December 2016

Java Bitness

It's been 5 years since the first time I wrote about 32-64 bits. Last week because of a small Java development at work I became aware of the differences between the Java Platform and .Net in their approach to the 32/64 bits management.

The first and quite noteworthy difference is that in the .Net world when you install the .Net framework in a 64 bits machine you get installed both a 64 and 32 version, while that in the Java Platform you have different downloads/installations for the 32 and 64 JRE's and JDK's. Of course you can install them side by side, but well, at a global level you have to decide which one is the default (I mean by this the one added to the PATH and the JAVAHOME).

As we know a normal .Net (I'm not talking about the kind of ngen scenarios) and JVM applications get compiled to bytecodes for a Virtual Machine. These bytecodes and VM's are high level enough to abstract us from the 32 or 64 bits architecture underneath, so in theory our .Net or Java applications should run the same on a 32 or 64 environment (performance differences aside). This is true unless that we are loading in our process native components (dll's/so's or COM components) via P/Invoke or JNI. In that case, as I explain in my first linked post, our application will have to stick to the bitness of that component, as a process and the dll's it loads have to be of the same bitness. So it seems necessary to be able to indicate to the OS that our application needs to run under a certain bitness or that it does not care.

In .Net when you compile your application you specify in the resulting .exe or .dll (in the PE header) if it needs to run as 32, 64 or as any (the anyCPU setting), and the OS will do accordingly creating a 32 or 64 bits process. So if you don't use native components or you don't have specific performance needs, you'll compile as anyCPU and the application will run as 32 or 64 depending on the OS. In the Java Platform (I'm talking about any language that can be compiled for a JVM: Java, Scala, Groovy...) the .class files generated when compiling your JVM language lack of any 32 or 64 bits flag. This means that it's your responsability to start a JVM with the correct bitness. So if you use a .bat to launch it, you'll have to point there to the Java.exe corresponding to the 32 or 64 JRE.

I prefer the .Net approach, it feels more clear to me to have the bitness indicator directly in the file that contains the compiled code than having it in a launcher .bat that somehow needs to point to the right JRE (which is not so easy, cause as I said above, the java.exe in your PATH could be pointing to the JRE with the wrong bitness.

Saturday, 10 December 2016

Remote Execution

Executing an application on a remote machine without opening a remote terminal or a remote desktop is a pretty powerful feature that probably is not widely known. I had done it in a [from Windows to Windows] scenario many years ago, and I've needed it lately in a [from Windows to Linux] scenario. I'll give an overview of how the thing goes.

Windows to Linux

All you need is SSH. Assuming that you have an ssh server installed on your Linux machine, you can leverage the ssh client software on you local machine to open a connection, run some code and exit in just one go. Using the plink application that comes with putty you just do:

plink.exe -ssh -2 -pw myPassword myUser@myRemoteMachine -m commands.txt

Here I'm passing as parameter a file containing the commands to run (commands, the command line for launching a script/application...). In principle if it's just a command you could directly type it there:

plink.exe -ssh -2 -pw myPassword myUser@myRemoteMachine 'ls -la /tmp'

But I don't know why it is not working on my system.

You'll get the remote standard output on your local machine, so you can imagine how powerful this is. In some scenarios it can save you writing and deploying a server application on the remote machine. You just copy a few scripts/applications there, launch them remotely and get their output. The remote scripts/applications have to be present on the remote machine, plink is not copying them there, just running them. If you have a one shot scenario (run once and that's all, leaving no traces). You could run a squence of:
pscp to copy the code
plink to run it
plink "delete the remote script that I have just coopied"

Windows to Windows

For this you just need the so powerful Sysinternals psexec tool. Maybe you have used this tool to do a sort of advanced "run as" providing the password as parameter, so you can automate stuff not being prompted for typing the password (of course this use of psexec poses risks). The thing is that you can also use it to run a remote application (or to open a remote command line! sort of getting a telnet without having a telnet server installed!). The amazing thing is that you don't need to install anything on the remote machine, but you need to be an admin there, and have the Windows sharing ports opened, so that psexec can do its magic).

What happens when you type: psexec \\target -u adminuser -p passw some_executable is pretty well explained here:

The PSExec utility requires a few things on the remote system: the Server Message Block (SMB) service must be available and reachable (e.g. not blocked by firewall); File and Print Sharing must be enabled; and Simple File Sharing must be disabled.

The Admin$ share must be available and accessible. It is a hidden SMB share that maps to the Windows directory is intended for software deployments. The credentials supplied to the PSExec utility must have permissions to access the Admin$ share.

PSExec has a Windows Service image inside of its executable. It takes this service and deploys it to the Admin$ share on the remote machine. It then uses the DCE/RPC interface over SMB to access the Windows Service Control Manager API. It turns on the PSExec service on the remote machine. The PSExec service then creates a named pipe that can be used to send commands to the system.

and here

psexec connects to \\target and authenticates as adminuser.
If this does not work, psexec will show an error message and exit.
Next psexec copies psexesvc.exe to \\target\Admin$ and launches it as a temporary service.
If this does not work, psexec will show an error message and exit.
psexesvc on \\target launches some_executable.
psexec and psexesvc use pipes to handle keyboard input and screen output.
Once some_executable finishes, psexesvc will terminate, too, and remove itself from the services list.
psexec will exit.

This is rather impressive, at first it sounds a bit like magic, but well, it's not that they are using any hacking techniques, they just use standard windows features, but features that are not so well known to many. In principle, one can think that to install a Windows Service on a remote machine and start it you would have to open a telnet/ssh/RD session, but as you see it's not like that, you can connect remotely to the Service Control Manager, not only to start/stop services, but also to install them, i.e:
sc \\remotecomputer create newservice binpath= C:\Windows\System32\Newserv.exe start= auto obj= DOMAIN\username password= pwd
I guess things like this explain why it's not so common to have a telnet or ssh server installed on a Windows machine. For certain common tasks you can get by without it, and for others you already need a GUI and hence Remote Desktop.

This other site mentions something very interesting:

When you specify a username the remote process will execute in that account, and will have access to that account's network resources.

If you omit username the remote process will run in the same account from which you execute PsExec, but because the remote process is impersonating it will not have access to network resources on the remote system.

This is all related to the double-hop issue. If you pass your current credentials (meaning that you are using the authentication that you have already done on your local machine), the remote machine can not pass those credentials to a third machine. If you pass the user and password, the remote machine will use them to obtain the credentials, and then it will be able to pass those credentials to a third machine.

Notice that you can use this option:
-c Copy the program (command)to the remote system for execution.

so in one go you can install the remote service (psexecsvc), copy a local application there and tell the service to start this freshly copied application. I guess when the application is finished it will get removed (as the psexecsvc service)

Thursday, 8 December 2016

Portraits d'Artistes

Last september during one Saturday away in Bordeaux ("la belle endormie", gorgeous, charming French city) I chanced upon a pretty nice Library/Cafe La Zone du Dehors. It's a rather bobo (I use this calificative with a positive connotation, I don't mix it up with "hipster" stupidity) place located close to St Michel, a very interesting area (typical old neighbourhood that got populated by maghrebian immigration and now also hosts "alternative types" and some very nice cafes, like "La mere Saint Michel", that boasts one of the most stylist toilets I've ever seen!). One could maybe compare it to Arnaud Bernard in Toulouse, but A.B is rather less pleasant (way much more racaille scum...)

They had a pretty good selection of Art books, and among them this one particularly caught my eye (and my credit card...) This second edition of "Street Art, Portraits d'Artistes" is a real must for anyone interested in Street Art. An excellent guide to 50 of the best street artists in the world, portraying some of their works and providing interesting bios.

There are long and interesting sections devoted to icons like Banksy and Shephar Fairy. Blek le Rat (probably the "father of everything") has also a long and very informative section. Obviously Os Gemeos, Blu and ROA could not be absent, and their pages add value to the book. Of course I was delighted by the pages for the French genious of C215 (I would say he's currently my favorite artist, amazing works and one of the best attitudes one could think of)

I also felt lucky to discover the Parisian artist JR and be remembered of the genious of Miss Van (she's originally from Toulouse, and comes back on occasion to gift us with some piece of her art, so well, she has a status in town).

Another amazing French artist that I've discovered through this book is Hopare, really beautiful creations.

And for sure the "Norwegian Banksy", Dolk, has a more than well deserved section.

The only flaw that I find in this book is that the Berlin scene is rather unrepresented. There are only 2 Berliners in the book (one of them, Evol, is pretty amazing with his "plattenbau homeage" works). It's odd not to find entries for Bocho, Alias, Alice or Lake to name just a few. Anyway, these 200 pages are an excellent piece of beauty.

Monday, 28 November 2016

Solidarity with Ebru Firat

Ebru Firat has been condemned to 5 years of prison in Turkey for having joined the Kurdish Freedom Fighters to fight AGAINST Isis/Daech (taking part in the heroic liberation of Kobane). As I explained in this previous post, the Turkish Islamo-Fascist state alleged that she was preparing a suicide attack in Istambul... and detained her when she was about to take a flight back to Toulouse!!! Fucking Turkish bullshit...

She is in prison waiting for a revision of her case. As you can imagine treatement in Turkish prisons to Kurdish prisoners is horrible, she has already lost 15 kgs and we can just hope that se won't have to go through the tortures that many other Kurdish prisoners have undergone. The French consul has repeatedly seen rejected the permission to visit her. Local and regional government in Toulouse/Occitanie are trying to help, having sent a letter to the French minister of Foreign Affairs demanding immediate action. There is a petition in change.org also addressed to him.

It's not easy to help, but the first step is making her case known to everyone and everywhere. You can share this url (as there is quite little information in English), or share these links in French:

You can also do an economic contribution to support her defense here. There are countless Kurdish men and women in her situation in cErdogan's nightmare state (journalists, HDP members, activists...) but she is a French citizen, so if public pressure forces the French government to take the issue seriously she could have some options.

Heroes enjoy freedom in eternity

Sunday, 27 November 2016

Missing

I have to admit with shame that I have hardly followed the strongly social and political filmography of the Greek-French director Costa-Gavras. Last Saturday they were screening Missing in the American Cosmograph (they mainly play recent movies, but they always leave some room to allow people to discover and enjoy some classics), so it seemed like a great plan.

Indeed it was. "Missing" is an excellent movie. A gripping story about the dissappearence of a young USA left activist in Chile during the days following Pinochet's coup d'etat, and the ensuing desperate search conducted by his wife and his father. It's even more passionate when you bear in mind that it's based on painfully true events.

Contrary to the recent Colonia film, where the Chilean horror regime is mainly the backdrop for the story, in "Missing" the story and the depiction of horrendous USA supported regime play an equal part. We are exposed to a clear view of the murdering and torturing perpetrated by the far-right military and we can see how the USA government officials helped with the assasination of the "Chilean dream". Most people only know of one September 11, that fateful day in 2001 when horror unleashed on USA soil, but few know that on that same date in 1973, the USA backed the assasination of the elected Chilean president Salvador Ayllende and the start of a inhuman regime that would end up with the lives of thousands of innocent Chileans (and the selling out of the country powerful economy to USA companies). This film acts then as a powerful and necessary reminder of how the USA have sponsored the most bloody regimes and dictatorships on every corner of the world (but particullarly in South America) for all these decades. When Trump threatens to "Make America great again" one should only expect the worst...

The film also explores the difficult relation between the conservative father and his daughter in law, a human rights activist living the painful wake up from the dream of freedom and equality that Allende's Chile represented. Over time, as the father discovers what his government has done and the cruelty of the regime, he'll end up admiring this corageous woman and the work that she and his son were doing. In a sense, we could say that he has lost a son but gained a daughter.

To sum up, an essential film to rediscover history and understand the present.

One day after the death of Fidel Castro, I can't find a better way to finish this post that putting up this picture of Allende and Castro. One can sense the intelligence and honesty on both faces. Probably Castro did some wrong things and made some mistakes, but he aimed to construct a better society and strove for it until his last breath.

Tuesday, 22 November 2016

Is it a Proxy

ES6 proxies try to be so transparent that they don't offer a way to know if one object is proxied or not. Proxies work in a way that applying the instanceof operator or accessing directly to the constructor property of a Proxy will make you think that it's the original object rather than an Proxy. I mean:

.
class Person{

}
var p1 = new Person();
var proxiedP1 = new Proxy(p1, {/* handler object here */};

console.log("proxiedP1 instanceof Proxy: " + (proxiedP1 instanceof Proxy)); //false
console.log("proxiedP1 instanceof Person: " + (proxiedP1 instanceof Person)); //true
console.log("proxiedP1.constructor: " + (proxiedP1.constructor.name)); //Person

So, what if for some reason you want to know if an object is a proxy or not? And what if you want to obtain the proxied object from your proxy? The simple solution I've come up with is including this functionality in your "get" trap. Write your get trap so that if you ask for a property like for example "_isProxy" or "_proxyTarget" they return the correct value. I mean, something like this.

proxyHandler = {
 get: function(target, propKey, receiver){
  switch (propKey){
    case "_isProxy":
     return true;
     break;
    case "_proxyTarget":
     return target;
     break;
    default:
     //your normal trap code here, for example
     console.log("intercepting...");
     return Reflect.get(target, propKey);
     break;
   }
  
  return Reflect.get(target, propKey);
 }

You should also modify your set trap to prevent _isProxy and _proxyTarget from being set. You can generalize the code to an extendProxyHandler function, like this:

function extendProxyHandler(handler){
 let originalGetTrap = handler.get;
 handler.get = function(target, propKey, receiver){
  switch (propKey){
   case "_isProxy":
    return true;
    break;
   case "_proxyTarget":
    return target;
    break;
   default:
    if (typeof handler.get === "function"){
     return originalGetTrap.call(this, target, propKey, receiver);
    }
    else{
     return Reflect.get(target, propKey);
    }
    break;
  }
 };
 
 let originalSetTrap = handler.set;
 handler.set = function(target, propKey, value, receiver){
  switch (propKey){
   case "_isProxy":
    break;
   case "_proxyTarget":
    break;
   default:
    if (typeof handler.set === "function"){
     return originalSetTrap.call(this, target, propKey, value, receiver);
    }
    else{
     return Reflect.set(target, propKey, value);
    }
    break;
  }
 };
}

I've put this code along with a sample here.

I'll also mention something that is a bit confusing. In the different proxy traps, "this" refers to the proxy. In the get and set traps we also have a "receiver" argument. This receiver is also a proxy, but somehow not the same one!? Let's see:

get: function(target, propKey, receiver){
  console.log("receiver inherits from Proxy: " + (target instanceof Proxy)); //true
  console.log("this inherits from Proxy: " + (this instanceof Proxy)); //true
  console.log("this === receiver: " + (this == receiver)); //false
  //log the method calls
  if (typeof target[propKey] === "function"){
   console.log("intercepting call to method: " + propKey ); 
  }

  return Reflect.get(target, propKey);
 }

Friday, 18 November 2016

Chinese are the New Jews

Well, I guess such a title will have you pretty intrigued, what the fuck is this idiot going to tell us?

Hopefully there's not an ongoing "Chinese Holocaust". Chinese have not violently invaded a foreign land under the excuses of having belonged to their ancestors 2000 years ago (the current Chinese invasion of Africa is quite more pacific and not done on ethnic basis, just on economic ones). Also, the Chinese research and start up ecosystem is not in pair with the one in Israel. So, what is this all about?

Well, it seems that for "la racaille" (that self-victimised bunch of criminals making up a part of the population of certain urban areas in France), at least for the maghrebian and Muslim subsaharian racaille, the Chinese are seen with the same eyes that the Jews were seen by the Nazis. For these criminals the Chinese are wealthy people that make money out of some sort of dark business. They always have cash, and their women are infidels that do not cover their sinny bodies, so let's rob them, harass them and even kill them...

This is not science fiction, this is what is happening in Aubervilliers, one city in the infamous Seine-Saint-Denis department, in the surroundings of Paris. This city is one example of how the nice multiculturalism of 25 years ago has turned into a communitarian hell (thanks in part to the islamo-collaborationist stupidity of the Communist Party that has been in power almost uninterruptedly for 70 years). In the last years the Chinese community in the area has quite grown, which is great news, as Chinese people tend to be normal folks (many of them atheists) that work hard and strain to integrate in the country. One detail that in the past I guess was not a particular concern but in the last years starts to be more important for a percentage of the population, due to the discomfort with that other (religious...) community that does all efforts to not integrate and just keep aside complaining about everything, is that the East Asian community tends to put French names to their kids (quite different from all those third generation Mohammed...) This Chinese population is mainly involved in the textile business, and as I've said, work hard to prosper, so la racaille has been targeting this community in Aubervilliers, with continuous robberies, harassment, and sadly, murders. In the past it happened the same in Belleville, but hopefully either thanks to the police or to the actions of self protection by the Asian community, la racaille was beaten. By the way, Belleville and Menimoltant are 2 particularly interesting areas of Paris Intra-muros. These are 2 popular neighbourhoods where for the most part one can still enjoy the mixing of cultures (without a too notorious presence of that hateful medieval and colonising political religious misinterpretation...)

Other than the fact that these East Asians seem to have some cash with them, there has to be something more that spurs all these attacks, cause they look like fuelled by a profound hate. And yes, I think it's easy to think of a few reasons that put these attacks in the dirty bag of racist and ethnic crimes, rather than "normal criminality".
First, this East Asian community is doing now as the Vietnamese immigrants did in the 60's, they work hard, thrive and assimilate into the French Republic. For sure this causes a profound hate in a part of the Maghrebian and Muslim African criminal community. For people that base part of their identity in that false victimization used to justify their hatred for France and the complete failure in life, it has to be painful to see how a community that did not even speak the language when they got to the country has no problems to move ahead.
It's also important to note that traditionally a good part of the Maghrebian population (mainly those with a low educational level) is deeply racist. Don't be mislead by the fact of seeing "beurs" and blacks together in these criminal bands, as one black friend of mine (married to a Moroccan girl, yes hopefully not all Maghrebians are racists), explained me, if one of the blacks tried to have something with the sister of one of the beurs, probably trouble would happen.
And there is another big point that I can think makes these criminals burn with hate. When you see the pictures of the demonstrations organised by the East-Asian community to demand protection, you see tons of French flags. Yes, they feel like French citicens, they are or want to be part of the French community. Can you think of something more offensive for these criminals that harbor so much hatred inside against France? For la racaille it's not only that these Chinese are "yellow" and not muslims, it's that they feel French!!!

Hopefully one still finds glimpses of hope in the bad neighbourhoods, like for example the collective Femmes sans voile (women withou veil), a group of corageous and freedom loving French-Maghrebian women that rebel against the use of the fucking veil and any other imposition from the Islamist scum. Checking their site I've come across with another even more inspiring place, the site of the Conseil des Ex Musulmans de France. I just can say, BRAVO!!! (and please, don't take me wrong, I have Muslim friends that I really appreciate and I still think that an interpretation of Islam adapted to Europe is possible and compatible with the French Republic, but as an atheist I can not feel but joy when seeing people abandon Islam and embracing freedom)

Also, this cartoon that I found on their site is amazing:

- No man has the right to beat a woman.
- Are you islamophobic?

Wednesday, 9 November 2016

The Passage of Time

Paris is one of those places in which wherever you are you can find an unexpected and impressive piece of architecture that you'll not find mentioned on any main guide (Vienna is another place where I have experienced this on a regular basis).

In my last visit this May I was walking along Boulevard Raspail (for Paris standards this is just one more Boulevard), enjoying the beautiful building facades, when I came across (at number 276) with an amazing depiction of the passage of time at a human scale, a passionate reminder of the joys and pains of our short existences. The shared existence of a couple is summarized in 3 pivotal moments.

First, the young couple is committed to ardent love:

Then the couple enjoys the fruits of their love:

And finally, the pain and sorrow of the moment when this shared existence gets truncated:

I love these reminders of our short lasting nature, all of a sudden they could seem to ruin a pleasant walk, but indeed it prompts me to enjoy its unique character, with the uncertainty of the next steps, with the certainty an end waiting somewhere, an end that can not be avoided but will be less painful the more we do of the path to it.

This beautiful work reminds me of the amazing paintings by Paul J. Gervais in Le Capitole of Toulouse. Again three moments in a lifetime. The author chose a rather less tragic representation, as it does not portray death, but love at 20, at 40 and at 60 years.





Monday, 7 November 2016

Toulouse Music Scene

For a young (100.000 students), arty and vibrant city as it is, the music scene in Toulouse is not as appealing to me as maybe I could expect, but there are several bands that are well worth a post

  • Wellington 1084. This duo plays very intense and emotive post-rock, so even if this style has not been my cup of tea in the last years I pretty enjoy giving them a listen.

  • N3rdistan. half of the band are from the old Midi-Pyrénéés region (now part of the new Occitanie/Pyrénées-Méditerranée region) and the other half comes from Morocco, but they're now set in the region. They play a really interesting blend of electro and oriental music with beautiful and energetic vocals rapping in Arab and darija. Though pretty different, they give me a feeling similar to Serj Tankian or the amazing Asturian band XeraYou have a good bio of the band here.

  • Woodwork. These guys play pretty good 90's poliical hardcore. I knew about them through some concert posters (to which I could not attend), and while writing these notes I've found that they have just released their first Lp, good :-)

  • Krav Boca. Pretty interesting and very active project. Excellent rapped vocals (in French and Greek, not sure if they are Greek immigrants or just have Greek descent) over rock music. Their videos are really professional and pretty amazing, I wonder how they managed to get access to some of the scenarios (and I guess for the opening of Florence they used a drone for filming, wow, things move fast...). I finally saw them live yesterday, and they pretty rock. By the way, now they have 3 MC's rather than 2.

  • Plum MC. I knew about this female political rapper little after coming to Toulouse. After occasionally checking her bandcamp to see if she had released something new (her first work had some promising aspects), last month I came across with good news, she had a new record, and it's pretty good. I particularly like the last 2 songs.

  • La Vermine. More local political Rap (AnarcoRap) (yep, sometimes, like my first visit to Mix'art Myrys, the huge alternative, leftist community in this city makes me think that I'm living in a small Berlin). They are releasing a new record late this year. Their previous works did not particularly impress me in general, but this video is pretty good.

  • Cerna. Political rap again and again... The guy is originally from Paris, but he was living in the region for a while (early this year he was playing in Toulouse pretty often). Not sure about his current whereabouts.

Saturday, 5 November 2016

Some Films 2016

I'll do a short review here of some good films that I've watched lately (or not so lately).

  • Mesrine is a 2 part French film telling the story of probably the most famous French gangster, Jacques Mesrine, played by Vincent Cassel. It's a real must work, and though he killed innocents there are moments of the film where one can not help to feel a certain simpathy for this criminal.

  • Les Lyonnais. Another French gangsters film, partially based on a gang active in the 70's. If you are interested in French films with French subtitles you can get it from this nice web site (don't be put off by its old look, the site is still active and the links work).

  • Eye in the Sky. This is a pretty interesting modern war film revolving around the moral dilemma of collateral damage. For me part of the interest of this film lies on the high tech surveillance material (micro drones) displayed. One wonders how many years far we are from the most advanced material shown here (assuming that it does not already exist in some Israli laboratory). The second half of the film turns a bit too slow for me, but anyway is well worth a view.

  • 100 Anhos de Perdon. Loyal to traditions (I've done so the 2 previous years) I felt I had to go to watch at least one film to the CineEspanha film festival. Choice was easy, an Argentinian-Spanish bank robery story directed by Daniel Calparsoro and screened on Saturday night, looked like a secure bet, and indeed it was. The film is not too impressive, but it's interesting enough to keep you entertained for its complete duration. I particularly like constant references to the effects of the economical crisis and political corruption in Spain. Some of the urban views of the city of Valencia are also particularly noteworthy.

  • Colonia. I have a certain weakness for films by Daniel Bruhl. Not that all his films are particularly good, but from all those that I have watched I can not think of any that is not worth the time. Colonia was quite a surprise to me, as I had not read the reviews nor anything I was expecting it would be focusing mainly in the days surrounding Pinochet's Coup d'Etat, but only the first part of the film revolves around it. Then it tells a fictional story of survival through love, set in a real and sickening product of the bloody dictatorship, Colonia Dignidad.

Saturday, 22 October 2016

Honor to the Harkis

France is an amazing country. I can say this out and loud without risking to be considered a chovinist or something of the sort, as I have not been born here, I have no French nationality and I have a crappy level of French. I've just lived some time here and it has been enough to develop a certain feeling of belonging to it (which is pretty interesting for someone that never got any sort of identification with the coutry in his passport, just with a small "region" hidden between the sea, the clouds and the mountains). For sure this is not a perfect country, there are tons of problems: Islamofascism, la racaille, huge taxes spent in feeding people that don't want to be part of this community... but anyway it's a fascinating country.

The French Revolution, Laicite, an incredible culture, a last stage of the colonization "with a human face", the most amazing architecture in the world, an open, mixed and multicultural society... OK, OK, this post was not supposed to be an exaltation of the French nation, on the contrary it's to talk about a not so known disgraceful episode in its history.

If you are Spanish maybe you'll be thinking about the horrible treatment given to many Republicans seeking refuge when the fascist scum won the Spanish Civil War. I'll talk about an even more shameful episode (as it affected people that had fought for France), the Harkis. I prefer to use the term to refer to any Algerian Muslims fighting/supporting the French side in the Algerian independence war, regardless of whether it was officially integrated in the auxiliar units under that name.

You should read the wikipedia article, as I'm not plannig to resume it. I'll just say that to me what de Gaulle did, abandoning Harkis to death/torture in Algeria (see paragraph below) or interning in concentration camps the few that somehow (many times thansk to the aid of French soldiers disobeying de Gaulle commands) managed to reach France, is absolutely inhuman, an act of pure treason, that along with his decision to get out of Algeria rather than turning it into an overseas territory, places him, regardless whatever he did in the WWII, on the side of the monsters of history.

Hundreds died when put to work clearing the minefields along the Morice Line, or were shot out of hand. Others were tortured atrociously; army veterans were made to dig their own tombs, then swallow their decorations before being killed; they were burned alive, or castrated, or dragged behind trucks, or cut to pieces and their flesh fed to dogs. Many were put to death with their entire families, including young children.

What I find even more shocking of all this is that after the Algerian War the French government would be accepting an enormous amount of Non-Harkis Algerians. So France would open its doors to Algerians that had turned against France and supported the Algerian independence (but now were abandoning their beloved Algerian nation and moving to the "hated colonial empire" for a better future), while those ones that had spilled their blood to remain as a part of France were neglected or treated like beasts ...

In the last decades the French Government has recognized its responsibility in the Harkis tragedy, establishing a Day of National Recognition. I think it's particularly interesting the attitude of the FN, with its support and recognition for the Harkis, directly calling them "compatriots". This is quite interesting, cause while the FN strongly adheres to the disgusting idea of Jus Sanguinis (notice that for me the right to nationality should not be based on Jus Soli either, but in a proof of assimilation and loyalty), they accept a different (and quite beautiful really) condition to deserve the nationality, the blood risked or spilled (Français par le sang risqué et par le sang versé,). Anyone that (like the Harkis) has risked or spilled its blood to defend the French nation, is a French citizen. I really like this concept, and while I would consider it tragic and catastrophic if the FN ever reached power, it comes to show that it's not easy to consider them a real Far-Right party anymore. If they support that you can become a French citizan by your loyalty and your services to the French community, regardless of your DNA... it's quite difficoult to continue to consider them racists.

Friday, 21 October 2016

AsyncEnumerable

This is a topic that has got me confused a few times, and now that I have seen a reference to something similar for a future ES version, I thought of writing a short reference here.

Let's start by a necessary clarification. When we talk about enumerating/iterating/looping in an asynchronous way, there are 2 quite different things:

  • Obtaining the item is not time costly and asynchronous, what is asynchronous is treating the item. This used to be the most common case for me [1] 2. It's what I've usually called async-loops. You would have a list of items and an asynchronous function to run on each of them, and you will pass as callback a function to continue with the iteration. I've written about it a few times. With the advent of async the code is now pretty simple, as the compiler takes care of all the heavy lifting. We now can write code like this (in C#):
    foreach (var item in myEnumerable)
    {
    await treatItemAsynchronously(item);
    }
    
  • The other case is when obtaining the iteration item is time costly and hence implemented asynchronously. Thinking in terms of C# and IEnumerable/IEnumerator, that would mean having a sort of async MoveNext. Then, the treatment of the item could also be asynchronous, so we would have case 1 and case 2 together.

This post is focusing on the second case. It would be nice to be able to write something like this (which is just "fiction syntax":

foreach await (var item in myAsyncEnumerable){}

I've read somewhere of awaiting for a method returning a Task<IEnumerable<T>>. That makes no sense. What we could do is to return an IEnumerable<Task<T>> and use it this way:


class FilesRetriever
{
public IEnumerable<Task<String>>> GetFiles(){...}
...
}

var filesRetriever = new FilesRetriever(new List<string>(){"file1", "file2"});
			foreach (Task<string> fileTask in filesRetriever.GetFiles())
			{
				var fil = await fileTask;
				Console.WriteLine(fil);
			}

That is not so bad, but there is a problem. It works fine for cases where the the stop condition of the Enumerator (MoveNext returning false) is known beforehand, for example:

		private string GetFile(string path)
		{
			Thread.Sleep(1000);
			return "[[[" + path.ToUpper() + "]]]";
		}
		
		
		public IEnumerable<Task<String>> GetFiles()
		{
			foreach (var path in this.paths)
			{
				yield return Task.Run(() => {
				                      	return this.GetFile(path);
				                      });
			}
		}

But if that stop condition is only known depending on the iteration item (stop when the last retrieved file is empty for example), this approach would not be valid.

We could think then of some interface like this:

	public interface IAsyncEnumerable
	{
		async Task<bool> MoveNext();
		
		async Task<T> GetCurrent();
	}

that could be combined with a new foreach async loop construct. The loop would get suspended and the execution flow of the current thread would continue outside this function. Then once the Task.Result of that MoveNext is available another thread would continue (the sort of ContinueWith continuation) with GetCurrent, its treatment and the next iteration of the loop. This feature should come with the possibility of doing yield return await.... I assume combining the compiler magic used for yield and await will not be easy.

I've read that there are some requests for something similar

, and one guy implemented a pretty smart alternative back 5 years in time

In ES land, they got the async/await a bit later, but they are striding to get this async iterators thing in the short term. You can read about the proposal here

Sunday, 16 October 2016

Rotterdam

I had heard on some occasion about how interesting Rotterdam is from a Modern Architecture perspective, but I have to admit that having visited Paris-La Defense, London-Canary Dwarf, Frankfort (Mainzhattan) or Warsaw, I thought that I had already seen the best on offer for that in Europe (of course Istambul is not Europe, and as for Moscow... well, Rusia has little to do with my interpretation of what Europe means) and didn't expect Rotterdam to impress me. Well, I finally made it there a few days ago, and Rotterdam not just impressed me, it hypnotised me.

Of course Modern Architecture is not just high rise buildings, but for sure it's an essential part for me. Rotterdam is quite far from the highest heights in the E.U. (if you look here it does not show up until position 62! but it has such an amount of high rises (for me that means buildings above 80 meters) and scattered all over the city, not just in a specific business area, that I would say it's the most vertical city in Europe.

Most of these high rises are done with really good taste, some of the most impressive overlook on both sides that huge water extension that is the Nieuwe Maas, gifting you with an amazing skyline. Such an amount of high rises means that many of them are not offices, but residential buildings. That's great, because the idea of living in the 30th floor of a beautiful building (with a balcony as many of them have!) overlooking the river and with a view of this middle size metropolis is more than exciting.

For residential buildings, I loved these not so tall ones right next to the impressive new Central Train Station:

and also this 30-something stories dark twins:

Of course I really enjoyed the view of "De Rotterdam", "New Orleans" and "Montevideo":

that is even better when enriched by a "floating high rise" in the passangers terminal of the port:

I've always loved buildings with an upper part standing out of the base of the building. This is an amazing example

And as for the good taste of these constructions, these ones with dark brick facade and those green, steep roofs, along with their proximity to the Maastoren, just verge on perfection.

Not all the city is a continuation of modern buildings. There are many "very Dutch" areas, with 3 of 4 stories buildings in dark brick. Some of them are recent, but others seem to have a certain history behind (you should also note that while the Nazis raided by air the whole city center, other areas of the city were not affected). Furthermore, if you go to Delfshaven you'll find a good, and complementary, dose of traditional Dutch architecture and charm.

Thursday, 29 September 2016

Funny French Situation

I'm not much into talking about personal things in a permanent support, but this is pretty funny and I think it deserves to be published here.

First, I'm deeply ashamed for my lack of French spoken skills. I like this country a lot and I always talk about how immigrants must assimilate, but I'm very bad with languages (you can notice my crappy English just by reading this blog) and French is particularly difficult. Indeed for me it's almost like 2 languages, as the way you pronounce has nothing to do with what you write. Its written form is pretty complex (even more than Spanish), but the spoken form is just like quantum physics to me (its phonetics is so rich, and much more when your native reference is a language with such simple phonetics as Spanish).

The thing is that SNCF (the railways company) owes me 40 euros since 6 months ago, when their payment passarelle crashed just in the middle of purchasing some tickets. I first went to their offices, they asked me to call some number, then I was redirected to a mail address. After 6 months of waiting, and a last angry email, the guy told me that he could not do anything else, that he had created an incident months ago and if I had not received my money I should call another number.

So I called that number (expecting to ask one colleage to translate for me when they answered). It was the typical mess of "press 1 if... press 2 if..." I suddenly heard a nice "press X for English Service", great!

I was welcomed by a female voice (FV), and the conversation went like this:
FV: Bonjour, qu'est ce que je peux faire pour vous? (Hello, what can I do for you?).
Me: Bonjour, eh, do you speak English?
FV: A bit
Me: Ah, OK, mais, c'est le English Speaking Service?
FV: Oui, mais c'est la France!
From that point on the conversation continued in a mix of English and French, but the girl seemed not particularly willing to help.

So the thing is pretty funny and bizzarre. As I've said I'm deeply ashamed for my pitiful French skills and I would accept that after all this time being here some French people were angry with me for this. Indeed I think I really deserve a kick in my lazy ass for it... but well, if I call to the "English Speaking Service" of a huge company I expect to talk to someone that speaks English!!! This reminds me that months ago, when calling the first number that they had given me at that time, I ended up in the "English Speaking Service" talking to a girl that seemed to speak Italian!!!

This said, when I go to buy tickets directly to the station, the guys/girls there are always pretty helpful and nice. They'll smile to my clumsy attempts to speak French and we will end up speaking "Franglais" :-)

I think there are certain misconceptions (at least I had them) regarding the French people and foreign languages. There are more people that can speak English (mainly among younger generations) than I expected (and in Southern France many people can speak some, or even quite good, Spanish) and there is not a general rejection to speaking a foreign language, people will try depending on their knowledge (but yes, unfortunately many people just can't cause they never learnt). I guess the reason for this "never learnt" is a mix of several factors. In the past (as in Spain) the level at school was very minimum, so you should learn on your own (paying an academy, self-learning...). As it used to happen in Spain, if you didn't need it at work, you coud just get by without it. French (like Spanish) has a big enough community of speakers that most films or books you can be interested on will have been translated, and in the past people did not travel abroad so much. I guess for some people the idea of the lost of importance of French before English also caused a certain and reasonable rejection.

The interesting thing is that with the Brexit on one side and my lack of appreciation for the USA, I'm starting to question this idea of "English as the universal language". Unfortunately, I think there is no easy solution to this. What other "lingua franca" should we use in the EU? French, Spanish, German, Italian? So far I'd never seen much sense in using an "artificial language" like Esperanto, but well, maybe this could be the solution for future generations in order to talk a common language that is not "the language of 'the others'".

Wednesday, 28 September 2016

Cyclic Programming Trends

The other day I was taking a look into React.js (shit, I think I like it even less that Angular, I will ever be a "home made MVC + jQuery" nostalgic), and I came across something that seemed somehow familiar:

var App = (
  
);

This thing of mixing javascript with markup, I'd seen it before, way before, it was some sort of Mozilla extension to JavaScript (those times when Mozilla was adding to their JavaScript version some advanced features that still have not made it into ES6, like https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Array_comprehensions. At that time (2005) XML was still all the rage, so it seemed natural to add support for XML into the language (the ES4 version). The "experiment" was called E4X, and yes refreshing a bit my memories, it was basically the same that JSX is now with html, with the difference that while that was fully integrated in the language, this is a sort of preprocessing stuff added to Babel.

I guess one reason for the abandon of E4X was that XML soon lost its relevance, but a second reason was that many people did not fill right to incorporate something so specific as XML into a general purpose language. I agree with this vision. Don't try to compare it to the support for Linq syntax in .Net languages, cause Linq applies to anything that can be queried, and that can be something as generic as a Collection. With JSX the approach of not having it as an integrated part of the language, but as a sort of preprocessing, seems reasonable.

This reminds me again how things in Programming and IT seem to come and go, and how when they return someone will brand them as a revolutionary breakthrough when it's just some varnish on top of an old (maybe good) idea that just did not get enough attention at the time. I can think of some clear cases:

  • Document Stores. Lotus Notes was a horrible technology to work with for different reasons, but it all revolved around a Document Database, something so praised in the last years.
  • HTML+JavaScript+CS applications. We've had that in Windows since a very long time ago, in the shape of HTA. One colleage in the office did a rather elaborated DataBase comparer with HTA rather than Windows Forms (that would have been the normal choice at the time) and it was a really neat tool, the UI was pretty much better looking that in most Windows Forms applications of the time.
  • Using JavaScript for your "shell scripts" via node is now a pretty good option. I've always liked its syntax more than Perl, Python or Ruby, and being prototype based since birth it's always been as powerful as a language (if not more). Using jScript in Windows seemed always a quite reasonable option to me, I could never understand why most Windows Admins would use VBScript (at least before the arrival of PowerShell)

Sunday, 18 September 2016

Liberte Pour Ebru

In the last months I've decided not too follow too closely the events in Kurdistan, cause it infuriates me, depresses me and feeds me with pure hatred to see how the Turkish Islamo-fascist state continues to massacre the Kurdish people, and now not only inside the (fake) Turkish borders, but also in Rojava. But yesterday, the breaking news were just in the Regional newspaper. A French-Kurdish girl from Toulouse has been detained by Erdogan fascist troops under the suspicion of preparing a suicide attack in Istambul. No need to say that this is just bullshit.

I'm not going to translate the articles in the French news, just will give you a summary. A 25 years old Toulousain girl of Kurdish descent, Ebru, decided to quit Toulouse (where she had been a former medicine student) to go to Rojava (Northern Syria) to fight against Daech (Isis). One of the reasons prompting her to take such a corageous decision was seeing how some shitheads of her neighbourhood had gone to Syria to fight in the ranks of the Islamist beasts. This girl is from Bellefontaine, one of the infamous "Quartiers Sensibles" of Toulouse, so this is one more proof that whatever certain media (British media in particular), the idiotic left, the communitarits or just the criminals (that complement their "income" with French social welfare, of course) tell you, you can grow up in a bad neighbourhood and succeed in having a normal life, finish high school, go to University and feeling concerned about the future of Humanity, as this heroic girl did. Because France (at least the France that I know) continues to be an open society, where most people don't care about your origins, skin color or system of beliefs (unless those beliefs go against our civilization).

Last week she intended to take a flight to Toulouse to try to return to a normal life. Indeed she had an interview in Pole Emploi (the employment office) the next day, ah, yes, she wanted to find a job, rather than just asking for social welfare as all those "victims of French society" in her neighbourhood tend to do...) But it seems like the Turkish Islamo-Fascist state received some information about her planning a suicide attack... pure bullshit

Hopefully she is a French citizen, and you can imagine that after all the terror acts on our soil the normal French society is quite sensitive regarding Daech. So, contrary to what happened in Spain, where some volunteers that had gone to Rojava to fight against Daech were received by the Spanish state (and media) with charges of terrorism...
hopefully here the city government (Les Republicains) and the regional government (PS) are joining forces to demand her immediate liberation and return to France.

Ebru showed up in French media last January in a documentary about French citizns fighting against the Islamist beasts in Kurdistan. When she was asked how she had moved from studying medicine to holding a weapon agains Daech, she said "sometimes you save lives in one way, other times it's a diffeent way, you have to take lives to save others". This reminds me of an excellent French/German documentary about the Kurdish female Freedom Fighters. By the way, I've come across this page of a Toulousain collective of support to te Kurdish People.

Friday, 9 September 2016

Asturian Epic Moments

In the last years my understanding of the world, identity and politics has evolved quite a lot, but I still have a certain feeling of being Asturian. So when talking to people here in France I will often talk about Asturies, for the good and for the bad, for the funny and for the depressive... On some occasions I have told them that though we have a cross in our flag and you'll see this cross everywhere, Asturies happens to be one of the less catholic areas of Spain. I explained that celtic pagan traditions had persisted quite longer than in other places, and that this cross is the symbol of the victory of the Astures against Muslims, and that not having been ruled by the Arabs (well, except some villages for a few years) was one of the basis of our identity (unruly, crazy and rebelious Asturians...). A non religious person explaining this to 2 really nice (and devote) Muslims is a quite funny situation.

The other day I wondered what impression would someone get from Asturies if out of curiosity searched on wikipedia for some info about that misterious/exotic place that the freak in the office talks about (once someone at work said to my amused ears "hey, that Asturies thing sounds like pretty exotic, those people you talk about must be almost like aliens"). So, reading some English entries you get quite an epic vision!

From the Battle of Covadonga:

The battle was followed by the creation of an independent Christian principality in the mountains of the northwestern region of the Iberian peninsula that grew into the Kingdom of Asturias and became a bastion of Christian resistance to the expansion of Muslim rule.
...
and soon founded the Kingdom of Asturias, which became a Christian stronghold against further Muslim expansion.

From the Kingdom of Asturies:

The Kingdom of Asturias was, in its infancy, an indigenous reaction of Astures and Cantabri to a foreign invasion. These people had already fought the Romans in the Cantabrian Wars, and initially resisted Romanisation. Although they preserved many characteristics of their pre-Roman culture, their Celtic languages were later lost in favor of Latin.
This kingdom is the birthplace of an influential European medieval architectural style: Asturian pre-Romanesque.

From the Cantabrian and Asturian Wars:

Moreover, there was a tradition among the Cantabri of preferring suicide to slavery. They did this by sword, by fire, or, primarily, by poisoning themselves with potions made for the purpose. According to Silius Italicus they used a concoction made from the seeds of the yew tree, a plant with mythic significance for the Celts. Strabo said that they belittled death and pain, to the point of singing hymns of victory while being crucified.

Note: It talks about the Cantabri, but that applies also to Astures (in the end that difference of Cantabri vs Asturies is rather meaningless

From the Astures:

The Astures were subdued by the Romans but were never fully conquered, and their tribal way of life changed very little.

Those are pretty nice parts. You combine that history with the beautiful landscapes and for sure you get an interesting place. Shame is that when you add to it other facts: one of the most aged societies in the world, the lack of decent public transport, high rate of drugs consumption, the isolation from the rest of the world, the permanent economical crisis having created a totally depressed population (I had to be out for a good while to fully realize that the permanent state of complain, sadness, distrust and self-destructive criticism of good part of the population, me among them when living there, is not at all normal)... the overall picture changes too much...

By the way, it's pretty interesting for someone that calls both places home too read about the possible relation between the battle of Toulouse (quite unknown when compared to Poitiers, but for some historians almost so important) and that of Covadonga.

On July 9, 721, a Muslim force that had crossed the Pyrenees and invaded the Kingdom of the Franks was defeated by them in the Battle of Toulouse, in present-day France. This was the first serious setback in the Muslim campaign in southwestern Europe. Reluctant to return to Cordoba with such unalloyed bad news, the Ummayad wāli, Anbasa ibn Suhaym Al-Kalbi, decided that putting down the rebellion in Asturias on his way home would afford his troops an easy victory and raise their flagging morale.

Saturday, 20 August 2016

La Merde de la Republique

For years the political Left has been a meeting point for some brilliant minds, humanists, idealists, well hearted individuals... but also for a huge amount of persons with very serious mental problems. I think in the last years the proportion of the last ones has grown to the extent of making many Left Wing political organizations a real threat to Humanity. Some of the mental problems of these members can be contagious and you will end up with 2 sickening phenomena that happen over and over in left wing groups: "Left wing" nationalism and "Left wing" islamism.

I know a lot about Left Wing nationalism cause I used to be part of that crap for many years. What starts with a healthy interest in the defense of some aspects of the identity of your birthplace can easily degenerate into chovinism, exacerbation of the idea of "us vs them" and almost xenophobia. You can see this for example in the Catalonian separatist movement.

As for "Left wing islamism", OK, it's not exactly that some left wing idiots convert to salafism and start to rape and stone women in the name of the proletariat and social justice... I'm referring to their total lack of criticism of anything related to Islam and their obsession with branding anyone that does so as "islamophobic". Their obsession with the rights of those "nice and devote" (mentally sick) muslim women that are banned by the French government from wearing a "cool" (disgusting and medieval) full veil is in stark contrast with their total lack of interest for those Arab women that are forced by "the muslim community" to follow the islamic dress code just a few kilometers far from central Paris. The kind of idiots that will support a conference of scum like Tarik Ramadan and that will happily mix in a demonstration againts "l'etat d'urgence" with Islamist groups. These are usually the same brainshits that are so ashamed and obsessed with the colonial past (and will never accept any sort of "not so bad" aspects in at least some moments of the colonial era) that will justify any crime commited by la racaille (from violent robbery to even rape) as long as those members of la racaille have dark skin (hey, given my olive skin color, maybe next time I see one of these idiots I will try to grab his iphone 6 and he will just smile considering it as an anticolonial action). These are the idiots that see the riots of 2005 as something revolutionary, rather than as gangs of criminals releasing all their hate for a society that has been giving them social benefits since birth... Yes, I guess you get an idea of how much I despise them...

For sure the French "Left" is infected by this virus of Islamocollaborationism (aka IslamoGauchisme), colonial shame and fascination with those "abandonné de la Republique" (abandoned by the State) aka scum of the "Quartiers Sensibles" (of course there are normal people living in these neighbourhoods, people that are mainly victims of these criminals living in these neighbourhoods rather than victims of the government). Hopefully there are still smart and honest individuals in the Left that keep a clear mind and radically denounce all this madness, Charlie Hebdo and Marianne are clear examples. With this in mind, I've got used to any sort of stupidity coming from the main "Alternative Left" groups in France (to the point that they seem to me even more dangerous than le FN), but there is a group that goes absolutely beyond any limit, les "Indigènes de la Republique" (I hate them so much that I will not even put a link here).

I first heard about this criminals in one article in Marianne about Islamocollaborationists. I was pretty shocked, but I thought they would be so residual that I did not even search more about them. A few weeks ago, after the Nice attack, I read an interview to a person working in an anti-radicalisation program, where he stated that this organization (along with the scum of the CCIF "collectif contre l'islamophobie en France", that defends all sort of extremists) should be banned. The author of the Nice crimes was radicalised among other things by reading the websites of both groups. After reading another reference to these criminals in Charlie Hebdo, I decided to investigate a bit more. What I found is just hard to believe...

Well, I think these "Indigenes" do not label themselves as "Left", but many of their militants come from the radical left, and while part of the Left openly rejects them, other groups of Left radicals try to create links with them. The main role of the group (that over time has formed a political party, the PIR) is the "anti-colonial struggle" and the defense of the "population of the 'quartiers populaires'" (only if they are not white, and hence can be considered as "indigenes"). They ask for putting an end to the "laicite" to "end with religious discrimination" (so let's allow burqas in schools, crowds cutting off a street to pray, praying areas in the work place, new religious celebrations...), ending with the "structural racism of the French society" (I wonder what the fuck they are talking about), defending communitarism (so replacing the "vivre ensemble" with the "vivre à cote") and so on and so on. You will read texts of some of their "militants" (criminals) that start with "I am an Arab born in France". If you have been born in France (and lived here all your life as I can work out from the rest of the article) you should be a French citizen of Arab descent, or a French-Arab, but if you are still just an Arab, you are just someone that has rejected to integrate and assimilate in the society that has fed you all your life, and you should be expelled of this country because you don't deserve to live here and your place should be taken by someone that wants to contribute to this society rather than destroy it.

The above looks enough to show what an abomination they are, but they go much, much further. On one side they practice a strong anti-white discrimination (not only blaming "whites" for everything, but being very elusive to the question about whether "blancs des quartiers populaires" could join their "movement") and at the same time they attack anti-racist organizations that assume the existence of anti-white racism (and it's totally true that a "white person" is a main target, along with the Asian population as is happening with the Chinese community in Saint Denis lately, for being robbed and molested by la racaille). They say that racism can only exist if exercised by a big structure of power, when exercised by individuals or groups it's not racism... amazing... But they go further. One of their founders and main ideologist (Houria Bouteldja, a fierce defender of Hamas...) goes so far in her communitarism that advocates for "race separation"!!! Blacks should only reproduce with blacks and Arabs with Arabs, saying that mixing with whites is repulsive (all this is said to be done in the name of increasing the number of indigenes and avoiding assimilation!!!) You want even more?, oh yes, they are homophobic, saying that homosexual behaviour is not present in the "quartiers populaires" and basically is a product of the white bourguesy!!! they mix this with some mentions to Arab virility!? and they deeply attack white-western feminism (I assume they defend the right of a woman to "accept" to be oppressed in the name of religion, tradition and identity). Also, they are not anti-sionists, but profoundly anti-jews. Her last book "Les Blancs, les Juifs et Nous (the whites, the jews and us)" is just a constant call to racial and religious segregation and hate... Buff, I think it's been enough...

Pd: Reviewing this post before publishing I've realised that indeed this allegedly "anti-colonial" movement is just the contrary. They defend the existence of a population in our territory that does not want to integrate with the rest of the population and that tries to impose their cultural traditions (some of them totally contrary to the basic principles of Humanism and Western Civilization). With this in mind, one can think that the only reason for this external population to come and stay here is either to take benefit of the economical resources of this territory (either by working, living off social welfare or plainly stealing) and/or expand and impose their "cultural" values. I call this COLONIALISM, arab/islamic (these "indigenes" do not represent at all the Non-Muslim Asian or African communities) colonialism over Europe.

Sunday, 14 August 2016

The Witch

The Witch is an amazing film. In the last years, while I continue to be rather interested in psycological, "not paranormal" horror, I've quite lost my interest in "fantastic" Horror films, all those "spirits in a house" kind of films have made the genre terribly boring to me. With such a title, you would expect "The Witch" to fall in this second category, and it's true, but only in part, there is an important human component in the atmosphere of fear.

After checking the American Cosmograph program for this month it seemed like one of the most interesting (and with subtitles) films to me, so after reading some very good reviews I set about on giving it a try. I will not give you a synopsys, just check wikipedia for it, so I will just tell you that the film is as good as the reviews say. One family in a harsh territory and harsh time (17th centry New England) begins to break apart because of their religious integrism, poverty and supernatural forces. Tensions mount, untrust, blame and punishment make life more and more unbearable and everything explodes. There is an amazing resource that increases even more the spectator's unrest, in 2 occasion the screen will go black for around 5 seconds, giving you the time to think and fear what comes next... and you are right to fear it. I pretty loved this trick.

The scenario is amazing, and the photography is really superb. As the review in the American Cosmograph said, at some moments the composition and lightning of a static scene makes you think to be seeing a work of some Flemish painter. They also mention Goya, but I did not clearly identify any sequence like that.

This film is a real must-see, and if you are lucky to watch it in a cinema with a replica of a beautiful Orientalist painting (sorry, I can't remember the title or author), it's even better!

Friday, 12 August 2016

The Failure of Daesh

Anyone reading this blog knows how much I hate salafism/wahabism or any other fascist and oppresive ideology that tries to destroy our "free" world, so you can imagine how much hate I've felt for the Daesh abomination after the horrendous attacks of the last weeks. I'm not going to talk about the attacks themselves, but about how they demonstrate how absolutely clumsy, stupid and failed Daesh is.

So far, media had sold us Daesh as a bunch of very intelligent monsters. Very intelligent because of their initial military success, their financial success, their successful use of propaganda to terrorize and entice more beasts to their ranks and so on. All this is true, and futhermore they have managed to create something that Al-Quaeda had just dreamed about for the far future, the creation of a (sort of) State (we have to admit that in their territory, that mix of prison and asylum, they have managed to create most of the structures of a state). So, why do I say that they are so clumsy and failed?

Their final aim is to make their distorted and perverted interpretation of Islam dominate the whole world, creating a global caliphate under their sickening sharia law. They can not invade western Europe as they did with Irak and Syria, so they intend to prompt the Muslim population already living here to start a Jihad and conquer these lands for their caliphate. Most European Muslims are in what is called "the grey zone", they are not salafist shit, but unfortunately they are not in the "muslim but almost secular" stage equivalent to that of most Western European Christians. For the population in this grey zone Islam is important, rather important or very important, but is not an ideology pushing them to separate from, hate and confront the infidels. Daesh aims by all means to create a situation where these Muslims will end up in conflict with Non Muslims, starting the so feared ethnic war. This mass of Muslims is not prone to be dragged into salafism by a few internet videos or a Saudi sponsored imam, so the way to turn them against "the infidels" is to put "the infidels" first against them, so that feeling attacked they come together and reply. The first step then is to make the infidels attack the normal Muslims, by blaming the whole Muslim population of the sickening terror attacks done by the salafist minority. Both populations have to fall in the trap of identifying the acts of a some individuals with the will of a whole community, but if the trap succeeds, chaos and horror will happen.

The last wave of attacks if for sure an attempt to drive us into that horror of "Non Muslims" against "Muslims" but indeed I think this strategy will hopefully fail, and second, if it were to unfortunately happen, it would be the most failed action perpetrated by Daesh. Let me explain:

The horrific actions by Daesh won't help to move the "moderate but devote Muslims" dwelling in that grey zone towards more integrist positions. On the contrary, I hope it will help to finally wake them up and put them clearly against the integrists. I've read some comments by normal Muslims that going beyond the classic "Islam is a religion of Peace", stated that all this madness was moving them away from Islam. Also notice that in the Paris and Nice attacks a good percentage of the casualties were normal Muslims, and this was not a collateral damage, indeed for radicals a moderate Muslim (one that enjoys the French National Day or takes a drink in a cafe surrounded by westerns) is even worse than an infidel. I hope normal Muslims are becoming aware of this. In the end, we could have a war between Radical Muslims against all the rest (normal Muslims, Christians, Jews, Atheists). It would be painful, but we would manage to clean up the scum from our continent.

The second main point is that even if we had a Muslims vs Non Muslims conflict on our streets, the winners (though such term is not much appropriate understanding that such a war would be a defeat for our model of muticultural society) would be for sure the latter. It's just a matter of numbers. Even in the cities with the largest number of muslims, their percentage is always smaller than that of Non Muslims, and in the army or the police these percentages are clearly lower. So, if a conflict really happened, there would be millions of victims, but for sure the output would not be "Islam ruling over Europe", but just the contrary "Islam erased from Europe". The most fascinating thing of this failed strategy by Daesh is that without a war, the idea of an Islamized Europe could well be true in maybe 100 years. Again is a matter of numbers, Muslims tend to have quite more kids than Non Muslims (but well, this applies mainly when compared to white Europeans, Europeans of Asian or black African origin still keep a not so low reproductive rate, so maybe it would take 200 years). So bringing up this bloody conflict will end up completely stopping that process of Islamization, a process that until now seemed not to be a big concern for too many Europeans... So Daesh, you've got it pretty wrong...

Wednesday, 3 August 2016

Blocks and Closures

One of the less exciting features added to ES6 are blocks. You can put sections of code between brackets anywhere in your code and the variables declared there with let will be local to that section. I think Perl has something similar, but honestly I don't see much use to it.
Reading the section From IIFEs to blocks in this nice write up has made me see that in the end they can be useful. The sample there is not complete, so I'll drop one here. We use IIFEs many times to create closures, so with blocks we can move from this:

 var printAndCount = function(){
  var counter = 0;
  return function(){
   console.log("execution: " + counter++);
  }
 }();
        printAndCount();

to this

 {
  let counter = 0;
  var printAndCount = function(){
   console.log("execution: " + counter++);
  }
 }
        printAndCount();

The latter is shorter, but the former has much more freak appeal :-)

Friday, 29 July 2016

Getters and Setters not Needed

Since I first learned of property descriptors in JavaScript I've had a certain feeling of guilt. Let me explain. In .C# the good practice is to use Properties for the access to any kind of public data (not only for "processed data": calculated, filtered, logged..., but also for just trivial data fields). We do the same in Java with get/set methods. I mean that in C# we write:


public string Name { get; set; }

//this automatic property is syntax sugar for:

private string name;
public string Name
{
 get{
  return name;
 }

 set{
  this.name = value
 }
}

So one would expect that we would write code in JavaScript like this:


var person = {
    get name() {
        return name;
    },
    set name(newValue) {
        name= newValue;
    }
};

//or like this

Object.defineProperty(person, "city", {
   get : function(){ return city; },  
   set : function(newValue){ city = newValue; },  
   enumerable : true,  
   configurable : true});

but I think nobody does this, so why? are we doing something wrong just out of lazyness?

No, we are not doing anything wrong, it's just that JavaScript is a different beast, and what is necessary in C# or Java is useless in JavaaScript. The reason for using properties even for just data fields is to isolate calling classes of changes in that class. If in the future that data field needs to be calculated or some additional checks need to be done, changing from a data field to a property will break the customer class. If it was in a different assembly, we'll have to compile it again. This is clear in Java, where a getter/setter is just a method, but it's the same in C#, cause a property is transformed by the compiler in one (or two) method. Changing from a data access instruction to a data retrieving or setting method invocation is a breaking change in a static language. So, using properties makes our code resistent to change.

In JavaScript this is not a problem. First, everything gets interpreted/jitted each time the program runs. Second, even if during the execution of one program we decided to replace a data field with a data accessor property the flexibility of the runtime will allow us to do so. Assuming the code accessing that datafield has already been jitted, it will have to be replaced by the jitted version of the new accessor descriptor invokation, which will have some performance impact, but I guess it should not be a problem.

So, feel free and happy to not use data accessors when all we need is a data holder.