Posted by & filed under Mono, Personal. 2,289 views

Old Fashioned isn’t necessarily good

I recently updated my mono/glade tutorial with:

A couple of things have come up since the last version of this tutorial:

  1. Mozilla: because of the way Mozilla is installed in some distributions (I haven’t been able to trace what it exactly is yet), running the application in MonoDevelop causes the following failure: Unhandled Exception: System.NullReferenceException: Object reference not
    set to an instance of an object
    . Running the application from a terminal (the exe is in the project bin/Debug directory) solves that issue. Also make sure MOZILLA_FIVE_HOME is set.
  2. Glade 2.6+: If you are using a very recent version of Glade which by default adds an alignment to a new frame (Glade 2.6 and newer, I believe) you can either remove the alignment from the frame or or add the WebControl to the alignment instead of the frame with something like
    [Widget] Alignment alignment1;

    and later in the code

    //instead of frame1.Add(web);

Being young doesn’t mean that you’re going to live a very long time.

I started watching Ali G, at the insistence of pretty much everybody telling me how great it is. It was pretty good, I thought. We’ll see what I think of the next episode. In the mean time, I saw Shaun of the Dead which was quite funny though not the funniest english flick I ever saw. Which IMHO is Holy Grail. God, I am boring.

Best recent quote I read:

“You were tuning into that damn alien porn channel again and you know it.”

Posted by & filed under Uncategorized. 1,966 views

Thanks to WirelessModem I am now able to use my Treo as a GPRS modem on T-Mobile wherever I go. Which means I won’t be miserable at airports around the continent waiting for planes that are late or companies to get it together and offer (free?) wireless access. Unfortunately it’s $$ for what it is and only available on Windows and MacOS X but the palm software might work as is if your Linux kernel is potent.

So on MacOS X (T-Mobile, Treo 600, USB cable), beyond what’s in the doc, here is the deal:

You need Ross Barkman’s Generic GPRS modem scripts which can be found here

I am using the Generic GPRS CID1, check ‘enable error correction and compression’ and ‘wait for dial tone before dialing’.

In the PPP tab use as your telephone number (I know it’s not a number…), no login, no password, TCP/IP uses PPP, no proxy

From there it just works for me. You might want to add a couple of dns ip numbers from another connection if you have them, it does speed things up.

[Thanks to Jonathan Greene for helping getting it working]

I belong to a club

Intellectually lazy intelligent people who get off by cultural slumming.

How lame. I might as well start voting for Bush while I am at it.

Oh no, wait, I can’t vote! I am allowed to pay taxes though, thankfully.

h3b>I always thought I was a highly functional drunk

Apparently I was wrong.

But I discovered a great new Mono application, GIB. They seem to be coming out at an accelerating pace, which is great.

Indios de Barcelona

Brainshare Europe 2004 (BSE2004) was a lot of fun this year. Beside going out in the town, the sessions were particularly interesting and I think that Nat totally nailed the Collaboration keynote demo on Thursday. Miguel and I did pretty good with our mono Keynote demo but we have to come up with something even more extraordinary for the next big event.

The Mono sessions were well attended and we were able to give away a lot of Edd and Niel’s Mono, a Developer’s Notebook. I gave a session on Migrating Applications from Windows to Linux using Mono (here in OpenOffice presentation format) which was great to write and present.

You’re miserable, edgy, and tired. You’re in the perfect mood for journalism.

In other ‘noteworthy’ news, I now have my camera back (EOS 20D owners, you amuse me), my new G5, a BlueTooth headset that doesn’t work with Skype (username ‘edasque’) and am planning my next scuba-diving vacation.

Well, that’s about all I have to report for now. I look forward to some time at home, in Boston.

Posted by & filed under Uncategorized. 1,879 views

Boys from Brazil

I constantly add movies to my Netflix Queue. Some months ago, someone
told me (I can’t remember who did) about Boys from Brazil, a strange title for a strange movie. I had the DVD with me when I went home to France. It’s a jewel of the 70s, with a crazy-eyed Gregory Peck playing Dr Joseph Mengele as he’s plotting to clone Hitler (the boys) to resuscitate the Third Reich. Laurence Olivier, an aging Nazi hunter battles him in rural Pennsylvania. Quite a treat.

As is having to spell ‘Pennsylvania’.

Joe Shaw Super Star

It seems that our local Joe Shaw is now a teen idol in France. They even have a comic book about him (see scanned image). I heard there is an action figure of him hacking on Utopia while wearing two t-shirts.

Back to the Future

Being on vacation in the south of France left me with much time to
sit, relax and read in the sun. When that got too exciting, I would
jump in the pool or go for a walk in the forest. So I finally had time
to read some, including the very tolerable Codenotes
for .NET
which covers most .NET APIs including SWF, ASP.NET and
ADO.NET. Also, it talks much about what existed before .NET and
contrasts new technologies with their former incarnations (ADO, ASP,
VB6). Reading about ASP.NET and ADO.NET was fascinating especially through the looking glass of my J2EE and SilverStream background.


I have talked to a few people lately about the similarity I found
between technologies and key concepts in ASP.NET/ADO.NET and many of
the older web application servers implementations such as Net
Dynamics, Web Object or SilverStream. About 8 years ago now, a company
called NetDynamics,
which I worked with, had a rudimentary application server (engine in
C++, application development in Java) that implemented a server side
event model for serving dynamic HTML pages. The designer was quite
horrible and suffered many problems. Also then, we didn’t really know
how to build web applications.

SilverStream (then
and now), which I worked for
for many years, implemented a similar event model where their HTML
forms designer was very similar to their Java client-side application
designers except with server side event loops of sorts, server side
objects (pages, session, …) lifetime and things like this. That was
in ’98 or so and is similar in many ways to most of the concepts found
in ASP.NET and how Web.Forms applications are built (with Matrix and
newer incarnation of Visual Studio) in much the same ways Rich Clients
applications are built. It was somewhat clunky and you had to be pretty imaginative to implement some more complex pages but it was very flexible and eventually you could always find ways to do what you wanted to do.

As far as data access goes, SilverStream had the AgData APIs which
provided a data set object with delayed update and manipulations. We
were a few years away from caring about XML and transaction
support. It was very close to the DataWindow‘s
(patented) work done by Kim Sheffield (ex-SilverStream). Also AgData
handled cross tables manipulations and master/slave datasets which
ADO.NET doesn’t seem to support. The Web Service stuff seems so
similar between .NET and the Java world that I didn’t pay much
attention to it.

Servlets were it at first (with JDBC for data access, Java’s
equivalent to JDBC) and then JSPs came along to
counterstrike against Microsoft (HTML with embeded server code was
actually found in many products before – i.e. Coldfusion). EJBs came
along at that time and they prove to be very hard to implement (both
for the software vendor and the application developer). J2EE became a
set of APIs targetted at building complex applications for large
corporation but never really filling the gaping hole for building
simple dynamic HTML pages. Some people seem to think Java Server
Faces (or XFORMS) are it (with ADO and other technologies), but it seems too
too late. I didn’t see it for 6-7 years but J2EE got very
complex and is probably a daunting beast to tame when you first take
a look at it. I didn’t see that because for me (us) the changes were
incremental. For a newcomer, there are a lot of concepts and APIs to
master for most serious developments (Servlets, JSP, EJB, JMS, Struts,
JDBC, JDO, JSF, XML/SOAP, J2EE containers, various applicable

Now what happened is that the entire Java app server world decided
to standardize on J2EE and SilverStream followed. Moving to standards
for Enterprise Java brought a lot of good things however I feel like
many companies had to drop very interesting architectures (such as
SilverStream Pages technologies) in order to be able to follow the
standards and compete in a world where J2EE and app server
technologies were becoming a commodity. At first the
standard provided only very simple APIs such as servlets but it became
increasingly more difficult to provide any added value; I mean, where
do you go from there ? Do you need to be the fastest, more stable
server (ensue the classic, epic and futile Benchmark Wars which I was a part
of), is that your claim to fame ? Or do you have to be the most
(which is very hard to measure, especially when you know
a little about Sun’s J2EE compliance tests).

For a while it seemed
that the only ones innovating were BEA and IBM as they were bullying
the standards bodies and JSRs into adopting the APIs that matched their early
implementations. As a J2EE software vendor, trying to create
applications that could be deployed on all the platform supported by
the two or three major J2EE app server vendors. Throw in Apache’s
Tomcat as a de-facto open source standard, add in some JBoss (and
Geronimo and ‘Red Hat’s’ Application Server) and you got a big java.mess.*

After taking a closer look at ASP.NET and ADO.NET, I
have to say that this J2EE guy likes it. It might not be the
panacea (nothing is) and possibly not the solution for building large
enterprise applications (sans well integrated Asynchronous
Messaging solution, cross database transactions, …) but it’s simple
and a very
nice implementation of technologies found long ago in early Java
application servers.


Red Sox fan

I know it’s hard to understand why, me being French and all, but I am
a big baseball fan. I was raised a Rugby fan in France, love
Volley-ball (played for years) but since I moved to New England became
a baseball fan, or I should say a huge Red Sox fan. I love the
built-in idiosyncrasies of the game, how it really makes no sense at
all and is based on so very little concrete elements. I love sitting
in the sun chatting with people around me on a week-end afternoon,
while sipping a cold one. I love the Fenway franks, I love the
Americana of it, I love the fans heckling players, I love the
celebrations, the intensity, the cries. I love the t-shirts (I saw one
saying ‘I do not much care for the Yankees’ instead of the usual
‘Yankees Suck !’), the paintings, the kids running around in full

On Saturday I went to the game with Jack
. Well, actually I went to the game with Aimee and Jack was
sitting a few rows down from us. Now, I have good seats mind you
(season ticket holder), by Pesky’s pole, a few rows from the field but
I think Jack should call up John Henry at the ‘new’ Red Sox ownership and get some Green Monster seats. If he can hook me up too, that’d be great.

Posted by & filed under Linux, Mono. 1,586 views

Now THAT, my friend, is a shared moment.

Just came back for OSCON. Now that is a good conference ! Many interesting sessions, good crowd, great conversations, insane amount of beer, books, chats, … Good chats with some cool cats from M$, couple of Paco’s friends (PJ and Kevin), some OSS legends and so on and so forth.cover

Banky Edwards: Who should I sign it to?
Little Kid: I don’t want you to sign it. I want the guy who draws Bluntman and Chronic to sign it.

This week was great for Mono as IronPython was announced (Python for Mono/.NET) and Edd and Niel’s Mono book: Mono: a developer notebook’ released. I got a chance to read it cover to cover in the plane and I really like it. It’s very complete and even covers things like autotools, gconf#, ikvm, monobas. Also, the new Notebook format is great, I just miss the animals on the cover (So many primates to choose from for a Mono book).

Posted by & filed under Uncategorized. 1,567 views

The tourists were dismissed for 416 on the third day – 152 runs behind England despite an unbeaten 128 by Chanderpaul.
And at stumps England had advanced to 71-0, 223 runs ahead with two days left to play in the first Test.
Flintoff bowled an inspired spell after tea to claim 3-25 while Ashley Giles took 4-129 in the innings.

Flintoff, who only came into the attack towards the end of the West Indies innings because of an ankle problem, bowled Dwayne Bravo for a 70-ball 45.
The Lancashire all-rounder then dislodged Tino Best’s off-stump for a first-ball duck.

Pedro Collins managed to fend off the next ball to deny Flintoff a hat-trick, but the Windies paceman was blowed by a Flintoff inswinger in his next over.
Spinner Giles also played a huge role for England, taking four wickets, including last-man Fidel Edwards for five.

West Indies started the day on 208-4 and still 160 runs short of the follow-on.
But Chanderpaul and debutant Bravo scored at a reasonable pace, notching up a 125-run partnership – a record fifth-wicket stand by West Indies at Lord’s.

And so on and so forth. It shows you how little we know.

I don’t know what wickets, spell, off-stump, first-ball duck, hat trick, inswinger, next over, last man, follow-on, bowling or notching are (Nor do I want to, Edd). I am not sure this BBC news article was written in english to tell you the truth. But I found it refreshing and soothing like a baby babble as I read it on my phone while waiting at the convenience store.

It turns out that one can have one too many shrimp

Today, Gollum/Godzilla died. I don’t know why. Shows you how little I know.

I am off to OSCON tomorrow and Linux Word Expo the week after

Posted by & filed under Uncategorized. 1,696 views

They’re only monkey-boys. We can crush them here on earth, Lord Whorfin

So I recently installed a SUSE distro on my IBM laptop (eat your own fish pellets kind of mentality; and BTW, it works wonderfully) and ran into the same problems installing mod_mono as someone else did.

Namely, after ‘configure’ and ‘make’, ‘make install’ reports the following error (On SUSE 9.1, let’s say, with Apache 2 installed the SUSE way):

chmod 755 /usr/lib/apache2/
apxs:Error: Config file /etc/apache2/httpd2-prefork.conf not found.
make[1]: *** [install] Error 1

It turns out that Yast removes that file and apxs (apxs2 on SUSE with Apache2) can’t find it and can’t do without it.

Since this is likely to become an FAQ and it keeps appearing here and there, let there be known you can fix it by running:

echo "nLoadModule foo" > /etc/apache2/httpd2-prefork.conf

and then ‘make install’ for mod_mono.

Evil. Pure and simple from the eighth dimension.

So yesterday was Bastille day, which is when France (my country) celebrates the day that brought the Republic (and incidently beheading, a murderous rampage by Robespierre and his cohorts, one more king – Louis XVIII, one that never ruled – Louis XVII, two emperors – Napoleon and Napoleon III and eventually a stable republic of a sovereign state that decided to not be part of the ever diminishing Coalition of the Willing).

I celebrated by playing Poker (I won for the first time), wearing my ‘XV de France’ jersey (Rugby) and generally being my happy self all day. Let there be known I didn’t use my guillotine yesterday though I had many opportunities to

It’s not my goddamn planet. Understand, monkey boy?

A new addition to the fish tanks at Chateau Dasque, Little Godzilla, a yellow and dark red Wart-skin Angler (Frogfish) that can’t swim (no swim bladder) but walks around with hand like fins and jet-propulses itself by blowing water really hard through the gills on his arms. It eats all the shrimps, fishes and sneaky little hobbitses I throw at him (twice a week). I should have called him Gollum. That’s it, he has a new name, Gollum.

Posted by & filed under Uncategorized. 1,584 views

Mono 1.-0 released
Well, that’s it, we shipped 1.0 ! Congratulations to our great developer community.

We can be proud of this release, so proud !

I want to point out a few things that we might not have anticipated half a year ago:

Life is great, I am happy.

Posted by & filed under Uncategorized. 1,751 views

Life is a game. So fight for survival and see if you’re worth it

Did I ever mention how much I dislike NYC ?
I was supposed to go to NYC last week for a meeting with a potential customer. I had planned to take the bus. But it was very early in the morning and I didn’t have all of my brain cells available to me yet so I missed it. I foolishly decided to drive instead of taking the train or booking a flight in a pinch. My convertible top wasn’t working, it was 93F out there. I drove for 6 hours, hit heavy traffic just before I got to the city, got lost in the Bronx, had to stop in a motel parking lot to rest ’cause I was falling asleep, made it to the city one hour late (but the meeting went). I parked by a meter, got a $65 parking ticket (why isn’t it $20-30 like in Boston, I wonder, it’s insane). On the way back, I got lost in the Bronx (again), got stuck in CT traffic, couldn’t find the right highway, was driving towards Buffalo before I caught on and made it back onto the right highway, hit more traffic and made it back home around 10PM. I had left at 6:15 AM and drove for roughly 10-11 hours that day – it’s normally a 3.5 hour drive to NYC. I love Boston.

Wow! I survived thanks to my great bullet-proof vest!

I think you can connect a USB network adapter to the USB port and connect that to the Ethernet port. That will effectively create a loop-back and you will have a home-brew particle accelerator. I will be experimenting with this and get back to you.

Here’s your list of friends in the order they died.

To get MonoDoc to work on MacOS (using GTK#, GTK and other niceties from fink), you have to add this to you %MONOPREFIX%/etc/mono/config :

&#8230; <dllmap dll="libc"> <dllentry target="bindtextdomain" dll="libintl.1.dylib" name="bindtextdomain"/> <dllentry target="bindtextdomain" dll="libintl.1.dylib" name="bind_textdomain_codeset"/> <dllentry target="bindtextdomain" dll="libintl.1.dylib" name="textdomain"/> </dllmap> &#8230;<br />

also, for MonoDevelop on MacOS X (with Beta 3), you now need to build/install gtksourceview 1.0 by hand, for it is not yet available on Fink. I am still running into problems fixing it with:

<br /> Loading error, please reinstall<br /> System.NullReferenceException: Object reference not set to an instance of an object<br /> in <0x000b8> System.Xml.XmlDocument:Load (string) )<br />

Bye bye ?

My rose anemone tried to committ suicide today. It threw itself at an air pump in a post modern version of “Anemone tartare fireworks explosion”. It got sucked in and partly blown out. It might make it, though it probably lost most of its body mass (maybe it’s a new diet technique I hadn’t heard about). It had grown so big and full, it’s a shame (FYI, a rose anemone this size is probably > $100). I won’t put a photo up, it’s just too gory. The clown family is sad.

Posted by & filed under Uncategorized. 1,783 views

I will be in Buenos Aires tomorrow for the first open source conference – USUARIA 2004. I’ll speak at one of the general sessions about J2EE and .NET from an open source perspective. Hopefully, having worked with Java/J2EE for 6-7 years and now .NET technologies gives me a good perspective on those platforms. If you’re in Argentina and want to meet, let me know, I’ll be around for the week-end. It’s my first time in Argentina and South America for that matter.

Whoa, take ‘er easy there, Pilgrim

No comments.

Happiness is a beautiful hat

If you want to stop receiving this blog in your mail, please send a calligraphed letter on gold leaf paper, an autographed copy of the Bible, Orson Welles’s Don Quixotte and $49.95 to your favorite lawyer.

Posted by & filed under Uncategorized. 1,672 views

So I was joking around with Jackson a few weeks ago when we were having GAC difficulties and suggested that he’d rewrite the GAC in FORTH. He said he would if I could find a .NET FORTH compiler. Delta Forth .NET is a shareware FORTH compiler for .NET so I downloaded it and tried it.

Running Mono 1.0 Beta 1 on MacOS X (I am sure it works on Linux too), I can:

  • Run the compiler.exe that’s included without having to recompile anything
  • Launch the FORTH ‘shell’ mode
  • Run any of the compiled samples that I found
  • Compile any of the samples with the FORTH compiler
  • build the compiler from source (mcs *.cs /out:Forth.exe)

I had to install Delta Forth on Windows first and copy the files over, the installer is not a .NET app 🙂

I haven’t tried to call any external DLL from a FORTH application or call forth ‘classes’ (!??!!?) from a C# application, this is left as an exercise for you, reader.

I know that’s really kind of dorky. But FORTH was actually the first programming language I learnt as a kid.

Nobody can eat fifty eggs

But Jackson sure is going to try.