Monday, January 04, 2010

Just watched a movie in HD using Amazon Video On Demand through my Tivo

I had some credits with my Amazon account so I decided to “rent” a movie through their Amazon Video On Demand program.  TiVo had offered the Amazon Video on Demand for while, I decided to see what the experience would be with a HD movie.

AmazonVOD2 From what I read on the TiVo site, HD movies from Amazon are only available through a select hardware devices, you can’t order them on through the Amazon site for a PC.  I have a TiVo HD, which is one of the approved hardware devices

I’m not sure why you can’t get HD movies on your PC.  It’s not a hardware limitation, you can download TV shows in HD through Amazon.com.  It must be a studio thing.  It’s not an issue for me, if I’m going to download a movie in HD, I’m going to want to watch it on my HDTV while sitting on my couch.

With Amazon Video on Demand, you can buy a movie outright or you rent it.  If you buy it, it’s downloaded to your device and you can watch it as often as you like.  You can download it to 2 locations (like a TiVo and a Windows PC), plus two portable devices.  The portable devices must be “Play for Sure” compliant, which rules out anything designed at One Infinite Loop.

With a rental, you have up to 30 days to watch the movie once it starts downloading.  Once you start watching, you have 48 hours to watch it.  Within that 48 hours, you can watch it as many times as you want, but then it’s gone.  Which is just as well, a full length HD movie is going to take a chunk out of the available space on a TiVo.

I decided to rent a movie.  I wanted to see Terminator Salvation and the rental price was $2.99.  The purchase price for download was $11.99, but if I wanted to own it, I think I would just get the DVD for $15.99.  I don’t own a Blu-Ray player yet, so the Amazon download would be at a higher resolution than DVD.

TerminatorSalvation

So I selected Terminator Salvation in HD from the Amazon Video on Demand list on my TiVo.  I already synced up my Amazon account with my TiVo so I only needed to enter my 5 digit pass code to complete the purchase.  It then displayed a screen that said that download would start within 30 minutes. It was a pretty easy process.

Sure enough with 15 minutes, the little blue light on my TiVo came on.  That was the signal that the TiVo was downloading content from the Internet.  I gave it a 20 minute head start and then started watching the movie.

I don’t know how it works on other devices, but with Amazon Video on Demand on the TiVo, it’s streaming at a fixed bit rate.  It doesn’t scale the quality based on the bandwidth of the Internet connection.  I have a decent download pipe, 20 Mb/s through Verizon FiOS.  My TiVo has a wired connection to my router, so I don’t have to deal with the general vagueness of 802.11g wireless.  So that means I can start watching while it was still downloading.  If my TiVo was going through a wireless connection, I think I would have waited until the movie had been completely downloaded before starting to watch it.

The quality was very good.  The bitrate was 2800 kbps and the resolution was 1080i.  That beats what I would get from the DVD version.  Amazon Video on Demand to the TiVo only supports stereo sounds, but I don’t have a true 5:1 surround sound setup yet and that loss didn’t really affect me,  The movie was downloading at roughly the same rate I was watching it, with the 20 minute head start, I was able to watch from start to finish with out any hiccups.

The experience was very good.  $2.99 seems like the going rate for movie rentals.  I’m not sure what my cable company charges, but since they have a “$2.99 value section”, I would assume that new HD releases would cost more.  Plus, my TiVo can’t access the cable company’s VOD, so it’s a moot point.

As for the movie itself?  Terminator Salvation was fun.  I think it was better than the reviews that it got.  I thought the ending was a hokey, but I got my money’s worth out of it.  I would do this again with another movie.

Thursday, December 24, 2009

There is no sense of humor on the North Face

I was just read about how the North Face is suing the South Butt. The South Butt is a parody line of clothing started by Jimmy Winkelmann, a college freshman at the University of Missouri.  The South Butt clothing line features a logo that is a clever spoof of the ever present North Face logo.

I’m not a lawyer and nor do I play one on TV, but it sounds the South Butt was a clear and obvious parody and would be protected by the fair use laws.  Parody is a fair use, even when done as a commercial venture.  That has been taken all the way to the Supreme Court.  In Campell v. Acuff-Rose Music, Roy Orbison’s publishers tried to sue 2 Live Crew for their song “Pretty Woman”, which parodied Orbison’s “Oh, Pretty Woman”.  The Supreme court ruled that the 2 Live Crew song was protected by § 107 of the Copyright Act of 1976.

This is just a dumb move on the part of North face.  I don’t know how Winkelmann’s venture crossed the North Face radar, but I’m sure it didn’t much exposure until the North Face lawyers got involved.  That caused a Streisand Effect, generating tons of publicity for the Butt Face.  Now the North Face looks like a bully with no sense of humor.

When you compare the two logos, you can clearly see the difference.

NorthFaceLogo

versus

SouthFaceLogo

The South Butt logo is clearly parodying the North Face logo.  I can see the need for the North Face to protect their logo.  That logo is the identifying marker for their product line.  When someone is wearing a North Face jacket, you are aware of the brand from 30 feet away.  The South Butt does not dilute the North Face brand.  It make fun of it, but that is protected by law.  There is no upside for North Face with this suit.  They will most likely lose their case and will ahve wasted time on and money on a pointless venture.  If by some bizarre luck they actually win, then they will look like bullies.  Either way, lots of bad publicity for them.

My daughters wear North Face jackets.  It’s a status symbol for their age group.  If the North Face continues with this suit, I’ll think twice before I buy anymore.  I may just buy a Butt Face jacket for my own amusement.  I’ve already become a fan of their Facebook page.

Friday, December 18, 2009

Getting the list of databases that a user has rights to from SQL Server

We have a few applications that let the user select the database connection details.  It’s for SQL Server 2005/2008 and they can pick the server protocol, server name, and the database.  Once they select a database server, the user selects the database from a pick list selection.  We filter that list to only show the databases that are applicable for that user and application.

The first thing we do is get the list of databases.  We want to only display the databases that user can access and filter out the system databases.  There are a few ways to get the list of databases from SQL Server.  There is a system stored procedure named sp_helpdb or you can go right to the same tables and views that sp_helpdb uses.  The latter matter is more efficient, but you want to make sure that you are using the system views instead of the system tables.  Microsoft has deprecated access to the system tables and has published a list that maps the system tables to the system views on this MSDN page.

The system view that we want to uses is sys.databases.  This view will give us a list of all (well nearly all and close enough for our purposes) of the mounted databases.  This includes the system databases and databases that the user may not actually have rights to.  We can filter out the system tables by excluding them by name,  We can use the has_dbacesss() function to filter out the tables that we don’t have access to.  The has_dbacess('databasename') function will return 1 for databases that the current connection has access to, or 0 for no access.  That give us the following T-SQL for getting the list of databases:

select Name 
from sys.databases
where (has_dbaccess(name) > 0)
and name not in ('master', 'tempdb', 'model', 'msdb')
order by 1

If your user account has access to different types of databases and you want to filter the list to provide only the databases that your application supports, then you can go one step further.  Find a table or view in your database that is fairly unique.  If all of the table names are pretty generic, just create with unique name and make a use for it later.

The following SQL statement can be executed from an application to get a filtered list of databases in one call to the server.

create table #TempTable(dbname nvarchar(128));
declare @AppDatabase nvarchar(128);
declare cr cursor for select Name from sys.databases where (has_dbaccess(name) > 0)

open cr;

fetch next from cr into @AppDatabase;

WHILE @@FETCH_STATUS = 0 begin;
execute (' insert into #TempTable(dbname) select Table_Catalog from [' + @AppDatabase + '].INFORMATION_SCHEMA.TABLES where TABLE_NAME = ''GeoZoneEdge''');
fetch next from cr into @AppDatabase;
end;

deallocate cr;

select dbname from #TempTable

drop table #TempTable


The use of semicolons makes it easy to send the set of the t-sql commands as one command to the server.  you would replace the string “yourtablenamehere” with the name of the actual table or view you were trying to match.   By sending a set of commands as a single batch, we get the power of a stored procedure with actually having to have a stored procedure.  The blank lines are there for readability, you can run that as a single execute command and get back a result set.

The first few lines create a temp table to store the database names collected from sys.databases.  We use a cursor to iterate through result set from sys.databases so that we can check each database for the existence of a table that we know will be in our application’s database.   For each database name in that result set, we use the INFORMATION_SCHEMA.TABLES view to check for the existence of a specific table in that table.  Since we doing that lookup for each database, we need to construct the SQL statement at runtime, as shown in line 10 in the listing above.  Each select statement the produces a result, logs the database name into the temporary table.  Then we just return the results of the temporary table.

It looks involved, but it executes fast and the calling application only needs to make one call to the SQL Server to collect the data.

Monday, November 09, 2009

This Day in Epic Fail: November 9th, 1876

This Day in FAIL

Lloyd Header of Cleveland Ohio discovered that he needed at least one more lesson in riding his High Wheel bicycle.  The term “taking a header” was named after him.

image courtesy of Do-While.com

Thursday, October 29, 2009

I’m now a MCP

A couple of weeks ago I went away to a “boot camp” to prep for a set of Microsoft certification exams.  After a few years of plugging away at .NET programming, I got budget approval to take a class to prep for the MCTS ASP.NET 3.5 certification.  I’ve always wanted to do it and every now and then we get a RFP that has a line item about having MCP’s on staff.

There are two exams, the first one is 70-536 (Microsoft .NET Framework – Application Development Foundation).  The second one is 70-562 (Microsoft .NET Framework 3.5, ASP.NET Application Development).  When you pass both, you get the MCTS certification.  From there, you can take additional exams for more certifications.

I’ve been doing .NET programming for a few years, but it’s been pretty much self-taught all the way.  One of the goals of getting the MCTS certification was to learn where my strengths and weaknesses are.  About 2 years ago, we bought a self paced training kit for the MCPD exam.  After spending some time with the books and practice exams, I knew I needed some serious prep time and with out any interruptions.

I’m easily distracted by bright shiny objects.  I have the attention span of a mal-adjusted 4 year old.  This exam prep time would not be done at home or in the office.  I needed to get away from here.  After a brief search on the Internets, I found a company that offered “boot camp” courses.  Training Camp offered a 7 day boot camp course for getting the MCTS ASP.NET certification.

They provided a seven day schedule of instructor led review, labs, and self tests. Their package included hotel accommodations, training material, two exam vouchers, plus breakfast and lunch.  The training material included the Microsoft Press self-paced training guides.  The 70-536 guide weighed in at 750+ pages, while 70-562 was a bit bigger at 1000 or so pages. The price was reasonable, compared to sessions offered by other vendors.

I made arrangements to take their course at their PA location.  I planned on renting a car and driving down from Albany.  Accommodations would have been at the fabulous Fernwood Hotel in Bushkill, PA.  The training would have been at the Training Camp facility, not far from the hotel.

After paying for the course, they sent back a list of videos to watch to prepare for the class.  They were not from the TrainingCamp company, but freely available from www.asp.net.  You can find them here.  That felt a little bit cheesy, but on the other hand they didn’t need to reinvent the wheel.

A week before the course was supported to begin, they canceled it.  They didn’t have enough people confirmed for the course.  They did have one in Orlando, starting the following week.  So it was off to Orlando.  Suprisingly, this ended up being a good thing.

The training was in the hotel that I would be staying in, the Marriott Courtyard out at the Orlando airport.  Since this was a remote location for Training Camp, they were using laptop computers.  It’s much easier to ship laptops around than desktop computers.  We were issued the laptops on the first day and we got to hold on to them 24/7.  This meant, we could use the laptops to study the labs and self-tests in our hotel rooms after dinner.  If I had gone to the PA session, I would have use the PC’s in their labs.

The instructor was top notch.  If you ever go for training through Training Camp, ask for the sessions taught buy Bill Chapman.  Just google “Bill Chapman MCT”, he knows the stuff and knows how to teach it to you.  He was a big reason why I passed the exams.  The man has more certifications than I knew even existed.  I think Microsoft makes up imaginary certifications just to trick Bill.  It wont work, he’s that good.

We started at 8am every morning.  After lunch, we would go to around 5pm.  Then we were cut loose to find our supper.  After dinner, We were expected to study the exams and take the practice exams, with lights out at 10pm.  It was very draining. By 10pm on the first few nights, my brain was toast and I went to bed.  No TV, no touristy type of things.  Just studying.

We spent 3 days on the material that would be in the 536 exam.  The fourth day was exam day.  We had 18 people in the class, on the fourth day the first 10 of us trooped in to take the exam.  The exams are scored from 0 to 1000, with 700 being the passing score.  Based on the practice exams, I was running at at 85%-95% correct.  I felt good walking into the exam.

And then I got hammered with the actual exam.  The license agreement that I accepted when I took the exam precludes me from discussing any of the questions, but I can say that the material on the test did not match what we had been prepping for.  There was considerable overlap, but there was a lot of stuff that I had not seen before.  I passed the exam, but it was not pretty.

Apparently, as we found out afterwards, Microsoft had updated the exam the week before.  They do that, not often, but enough to keep the exam current.  They focus the questions more on the newer technologies and start dropping the questions on the older material.  We just had the misfortune of getting a new exam before the study material had caught up.  Only two of us passed that exam.  After the exam, we were handed the second exam study guide with the instructions to start reading it.  That took care of Thursday.  Friday morning, we would tackle ASP.NET.

Most of the people who had failed the exam opted to spend their remaining time studying for that exam and then retake it on the final day, instead of taking the second exam.  We had two exam vouchers, you can retake a failed exam.  According to the instructor,the 536 exam is one of the harder Microsoft exams.  If I had failed it, I think I would opted to retake it and study for 562 on my own time.

We had Friday and Saturday to review the materials for the second exam.  I woke up on Friday with a bad cold.  Headache, runny nose, sore throat, body aches, it was not a good way to start the day.  We ripped through the prep book at high speed.  We had the afternoons and evenings to do the labs and take the practice exams.  I don’t do too much work with ASP.NET, I really needed the study time.  I was so wiped out from the cold, I went to bed right after dinner on those two nights.  On Saturday, I took the practice exam a few times and scored in the 35% to 40% range, well below what I needed to pass.

We had all Sunday morning to prep for the exam.  We had to start the exam by noon at the latest, but you could take it anytime after 8am..  I woke up Sunday morning feeling physically horrible, but mentally fit.  I had the choice of taking the exam now or go home with the test voucher and take it at a later date.  I decided to take the exam now and if I failed it, to find out where my weak points were and retake the exam later.

I went in to take the exam right after breakfast.  I went in with a bag of cough drops, no sense bothering the other people taking their exams with my hacking.  The exam proctor smelled the cough drops and asked for one.  On the way into the hotel, a bug had flown into her mouth and she wanted something drastic to get that taste out of her mouth.  Personally, I would have gone for something a little less toxic tasting, but it worked.

One of the lessons that Bill had drilled into us was if if you think you will fail the exam, you will.  I went in with the attitude that I will pass this exam.  And I did.  It wasn’t my best score on a test, but it was a passing score and that’s what counted.  I had now earned the MCTS certification.  I went back and thanked Bill and then went to airport to get an earlier flight home.

The boot camp wasn’t cheap, but I know I wouldn’t have passed the exams without attending it.  The instructor was excellent and being away from home without any distractions allowed me to study without interruption.  Being able to study in my room was a nice bonus, if I ever do one of these things again, I would try to it in the same way.

 

MCTS(rgb)_1102

When HTML encoding can bite you

I’ve been using TweetDeck to follow Twitter.  It’s a great app, but it has some quirks.  Like it’s ginormous memory usage.   Another is how it renders the text of a tweet. I’ve seen a few tweets go by where the text had HTML escape sequences instead of the text. 

This tweet is an example: http://twitter.com/KristiGustafson/status/5231052312

It should display as:

City shelves happy hour: Many of you will be glad we aren’t this city — they’ve shelved their.. http://bit.ly/10QmUr

In Tweetdeck, it displays as:

City shelves happy hour: Many of you will be glad we aren’t this city — they’ve shelved their.. http://bit.ly/10QmUr

A screenshot of that tweet:

td

If you view the link on Twitter, you’ll see the text the “right” way.  I couldn’t figure out what was wrong.  I posted a message in the TweetDeck support site and they couldn’t replicate the problem.  Then I looked at bottom line of the tweet.  It has been posted to Twitter from TwitterFeed.  I had never heard of TwitterFeed, so I signed up for an account.

TwitterFeed is a free service that can scan your blog’s RSS feed and look for new blog postings.  It can then post the first 100 or so characters from the post to your Twitter and/or Facebook accounts.  And that’s where the problem occurs. 

HTML and XML use escape sequences to define special characters.  What you see rendered in the browser is not literally the same text in the source for that page.  Literal characters like “<” and “>” have special meaning in XML and HTML.  To display those characters on the page, they needed to be encoded as &lt; and &gt; respectively.  It’s all magic that goes on behind the scenes, you usually are never aware of it.

When TwitterFeed gets the latest post from your blog, it’s pulling it from the RSS feed and the text is encoded with the right escape sequences.  They then call the Twitter and/or Facebook API to post that text.  They are sending HTML/XML encoded text to functions that are expecting plain text.  When Twitter displays that new blog posting as a tweet, it’s including the encoded text.  Your browser sees that encoding and decodes it back again.  Facebook on the other hand displays the text encoded.

TweetDeck isn’t a browser, it’s a desktop or mobile application.  It renders the tweets as plain text and assumes that the API call that it suing to get tweets from Twitter is sending back plain text.  So the question is where is it broken.  I’ve only seen this problem with entrties posted by TwitterFeed, I would be the first place I would look.  I think they will need to a HTML decode on the text that they are scraping from the RSS feed and send it as plain text to Twitter and Facebook API’s.

btw:  Kristi Gustafson is worth following, even if her text is getting mangled by TwitterFeed.

Wednesday, October 07, 2009

Fess up when you made a mistake

I was working on a installer project for a new tool that we will be releasing this fall when I hit the most odd error.  Right after the installer started up, it would bomb out with an error message that the some files that it need were missing.  And it only happened when I called a command line app that I wrote from within the installer.  If I commented out the code that executed that app, the installer ran as expected.

Ok, so your first thought would be what is that command line app doing?  It wasn’t my first thought.  It was tested code and it worked just fine in some other installer projects.  That was a rookie mistake and I should have known better.  The app does a few things.  It was designed to cache the settings of an installed app and restore so that if you do an upgrade in place, the settings are migrated from the old version to the new version.  Plus it has code to clean up extra files left around from previous installers.

After beating my head against the wall for day on it, I contacted the technical support for the installer.  They asked for a sample project and I sent one in.  While I was waiting for a response back tech support, I continued to play around with the installer.  This tool (InstallAware) has been rock solid for me since I started using it, it had to be something that I was doing wrong.

I looked at source code for my command line app and sure enough, under the right conditions, it would delete the files that the installer was using to install the actual app.  That wasn’t good.

Actually it was good, the mistake was in my code which meant I could fix it.  Which I did and my installer did what it was supposed to do.  I would rather fix my own bugs than be dependent on another vendor fixing their bugs.  I had switched from Wise For Windows to InstallAware because it forever to get fixes from Wise.  They released a new build about once a year.  if they didn’t fix the bug and you didn’t have a work around, then that bug became a feature.

Meanwhile, I still had an open support case with InstallAware.  I immediately logged into their support site and I closed out the support request.  I added a brief note explaining that this was self-inflicted and explained why my code was turning in on itself.  A short while later I received a brief note from one of their support engineers thanking me for the explanation.

I think the courtesy message to tech support is the right thing to do.  First of all it’s just common courtesy, it’s wrong to waste their time tracking down your bug after you have resolved it on your own.  Plus it’s going to help me if I need support from this company again.  If they had spent time tracking down a problem that was caused by my own carelessness, they would be less likely to help out with a legitimate support request.

Thursday, October 01, 2009

I don’t care who signs a petition, Roman Polanski is a convicted sexual predator who needs to do his time.

I’ve never subscribed to the “Hollywood Elite” theory about radical liberals being in charge of Tinseltown, but I do think more attention is paid to people who lean to the left.  And too much attention is being paid to the people who signed the petition demanding the release of convicted child molester Roman Polanski.  Would they do the same thing if his name was Roman Ray Polan and was a Dade County dish washer?  I don’t think so.

Polanski was arrested by Swiss police when he tried to enter Switzerland because of an outstanding 1978 arrest warrant.  He was to attend the Zurich Film Festival, where he would have been honored with a Lifetime Achievement Award for his film work.  Representing the Zurich Film Festival, Debra Winger made the following comment:

“We hope today this latest (arrest) order will be dropped. It is based on a three-decades-old case that is dead but for minor technicalities. We stand by him and await his release and his next masterpiece.”

I have no idea what if anything, was going through their minds when they signed the petition.  Roman Polanski plea bargained the charges of having given alcohol and drugs to a 13-year old, and then allegedly sexually assaulted her down to being guilty for having sex with a minor.  He then fled the country to avoid sentencing.  Those are the facts, no one has been unjustly accused here.

I have never heard of sexual assault being described as a minor technicality.  He took a 13 year old child, gave her drugs and alcohol and then sexually assaulted her.  It wasn’t statutory rape, the victim had testified that she pleaded with Polanski just to take her home.

I don’t buy the argument that it’s been 30 years and that it’s time to let it go.  Polanski was a fugitive from justice for the last 3 decades, he actively avoided going to locations where he could be expedited from.  He could have done his time and resumed his career decades ago.  He probably would received a one year sentence, would have been paroled long before the year was up.

That worst part of all of this is that the victim has to relive what happened to her all over again.  While Polanski was living openly in a country that refused to extradite him, she had to rebuild her live, knowing that he had got away without paying consequences.  The only good part for her was that he had already plead guilty, she doesn’t have to testify again.

I hope that the authorities in Switzerland ignore these people and honor the US extradition request.  The Swiss do not need to take a position one way or another about Polanski’s fate.  They just need to honor a legal expedition request.

Personally, I’m sad to see some of those names on that petition.  I don’t want to see their movies anymore.

Here’s the list as of the time of this posting:

Abderrahmane Sissako, Alain Corneau, Alain Jessua, Alain Terzian, Albert Gauvin, Alejandro Gonzalez Inarritu, Alexander Astruc, Alexander Payne, Alexandre Arcady, Alexandre Desplat, Alexandre Tylski, Alfonso Cuaron, André Buytaers, André Larquié, Antoine Aronin, Arielle Dombasle, Asia Argento, Barbet Schroeder, Bernard-Henri Lévy, Bertrand Tavernier, Betrand Van Effenterre, Buck Henry, Camille Meyer, Candice Belaisch-Goldchmit, Carine Sarna, Charlotte Silvera, Christian Carion, Christian Gion, Christophe Barratier, Claude Lanzmann, Claude Lelouch, Claude Miller, Corinne Figuet, Costa Gavras, Cécile Telerman, Danis Tanovic, Danièle Thompson, Darren Aronofsky, David Heyman, David Lynch, Davide Homitsu Riboli, Diane Kurys, Diane von Furstenberg, Djamel Bennecib, Dominique Crevecoeur, Elie Chouraqui, Elsa Zylberstein, Emir Kusturica, Etienne Faure, Ettore Scola, Eugenia Varela Navarro, Fanny Ardant, Fatih Akin, François Margolin, Gabriel Auer, Gaelle Lancien, Georges Dybman, Gianluca Farinelli (Cinémathèque de de Bologne), Gilles Behat, Gilles Jacob, Giuseppe Bertolucci , Giuseppe Tornatore, Guillaume Stirn, Gérard Lenne, Harmony Korinne, Henning Carlsen, Isabelle Adjani, Isabelle Huppert, Jacques Bral, Jacques Fansten, Jacques Richard, Jan Kounen, Jean-Charles Tacchella, Jean-Jacques Annaud, Jean-Jacques Beineix, Jean-Loup Hubert, Jean-Marc Ghanassia, Jean-Paul Dayan, Jean-Paul Rappeneau, Jean-Paul Salomé, Jean-PierreMarois, Jean-michel Carre, Jeanne Moreau, Jerry Schatzberg, Jessika Cohen, Johanna Gozlan, John Landis, Jonathan Demme, Joël Farges, Julian Schnabel, Just Jaeckin, Jérôme Cornuau, Katarina De Meulder, Kent Jones (World Cinema Foundation), Ladislas Kijno, Laurence Roulet, Laurent Heynemann, Liria Begeja , Louis Garrel, Luc Barnier , Luc et Jean-Pierre Dardenne, Marc Guidoni, Marc Sandberg, Marco Bellochio, Margaret Walker, Marie Nieves Perez Neël, Mario Martone, Mario Monicelli, Martin Scorsese, Mathieu Celary, Michael Mann, Michel Ferry, Michel Ocelot, Michele Placido, Miguel Courtois, Mike Nichols, Milan Kundera, Monica Bellucci, Morgane Beauverger, Nadine Trintignant, Nathalie Faucheux, Neil Jordan, Nelly Kaplan, Nicolas Mauvernay, Nil Symchowicz, Olivier Assayas, Olivier Soares Barbosa, Paolo Sorrentino, Pascal Bruckner, Pascal Thomas, Patrice Chéreau, Patrice Leconte, Patrick Bouchitey, Patrick Braoudé, Patrick Mimouni, Paul Auster, Paul Boujenah, Pedro Almodovar, Philippe Corbé, Philippe Radault, Pierre Forciniti, Pierre Jolivet, Radovan Tadic, Radu Mihaileanu, Raphael Rebibo, René Gainville, Richard Pena (Directeur Festival de NY), Robert Hossein, Roger Kahane, Rosalinde et Michel Deville, Salman Rushdie, Sam Gabarski, Sam Mendes, Sandra Nicolier, Scott Foundas, Serge Toubiana, Souleymane Cissé, Stephane Allagnon, Stephen Frears, Steven Soderbergh, Taylor Hackford, Terry Gilliam, Thierry Frémaux, Thierry Kamami, Tilda Swinton, Tom Tykwer, Tonie Marshall, Tony Gatlif, Vinciane Lecocq, Walter Salles, Wes Anderson, William Shawcross, Wim Wenders., Wong Kar Waï, Woody Allen, Xavier Beauvois , Yamina Benguigui, Yann Moix, Yasmina Reza, Ysabelle Saura Del Pan