Welcome to MSDN Blogs Sign in | Join | Help

Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

I mentioned Terry Zink's Anti-spam blog ("Protecting your mail from the scum of the internet") during one of my quarterly "borg-edition" linkfests. The article about how much money a spammer actually makes was quite interesting. One thing that caught my eye was the insanely low sales rate that was needed in order to make the enterprise lucrative. Only 0.12% of the messages get clicked on, and of those, only 0.5% result in a sale, yet with a sales rate of just 0.0006%, the spammer pulled down an impressive $7690 per week, or over $300,000 per year. (Researchers who infiltrated the Storm botnet have their own estimates. Terry's story is more interesting to me since it comes from an actual (reformed) spammer.)

That reminded me of a story told to me by the person who worked on Microsoft's FORTRAN compiler. (Yes, we had one.) He mentioned that one of their attempts to market the compiler was to include a Microsoft FORTRAN business reply card in a targeted mailing to subscribers to a well-known technical computer magazine.

"Normally, these sort of targetted direct mail efforts generate maybe a 3% or 4% response rate if you do well. We got two."

— Two percent. Well, that's not too bad, considering this is FORTRAN we're talking about.

"No, I didn't say two percent. Just two. As in, we received two postcards."

— Oh.

Published Wednesday, November 12, 2008 7:00 AM by oldnewthing
Filed under:

Comments

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 10:12 AM by Nathan_works

The Mrs has (and uses, I'm pretty sure) the MSFT Fortran compiler.. Don't ask me which version, I've just seen the CDs for it on her desk, and her complaints about the fortran language.. There are a lot of optimizers written on fortran, and "if it ain't broke, don't fix it.." mindset keeps going at her company.. (I find that strange, since engineers usually have the "if it ain't broke, break it while trying to make it better" mindset more often. Surprised they haven't re-written the routines in another language.)

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 10:29 AM by Frank Wilhoit

FORTRAN will outlive COBOL.

Just sayin' .

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 10:47 AM by John

That number is kind of meaningless without knowing how long ago it happened.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 11:21 AM by Yuhong Bao

BTW, the last version of FORTRAN was version 5.1, released in 1990. MS ported FORTRAN to 32-bit and released FORTRAN PowerStation 1.0. After version 4.0, MS stopped developing FORTRAN PowerStation.

BTW, the mention of FORTRAN reminded of off-topic ramblings deleted.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 12:37 PM by atomice

I work on HPC development tools.

Here's some approximate figures from our support tracker:

C support tickets: 10%

C++ support tickets: 4%

Fortran support tickets: 14%

Fortran is alive and well in the HPC sector!

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 12:43 PM by mschaef

I used MS Fortran 5.1 for a brief while back in the early 90's. It had a couple interesting properties: some good, some bad. On the good side, Microsoft shipped it with the 'QuickWin' library that made it possible to make (very) simple Windows programs out of Fortran code. On the bad side, Fortran 5.1 was a 16-bit compiler and therefore subjected users to 64KB limits on many data structures. IIRC, this included array.

At the time, the rationale for FORTRAN (at least in my use) wasn't that it was a great language for use on a PC, bur rather that it was in a mainframe shop with a large FORTRAN code base and having a PC based FORTRAN compiler was occasionally convenient.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 12:51 PM by Marcus

Interesting that Intel was able to maintain their Fortran compiler business and is still actively releaseing new versions.  I wonder how large the market is?

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 1:24 PM by Chris

And Intel is the only one who sells a FORTRAN compiler. NAG and PGI come to mind.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 1:41 PM by Erbo

Most people writing Fortran code these days are doing so for supercomputers and high-performance clusters, two areas of the market that Microsoft doesn't have a strong presence in.  (Yes, I know MS has a Windows version for clusters, but I haven't seen a lot of clusters out there that actually USE it.  Most of them use some variant of Linux, or another freely-available OS like BSD or OpenSolaris.)  So why would they use a Microsoft compiler?  They'll use Intel's compiler, or PGI's, or even the GCC Fortran compiler.

The core of development for Microsoft's environment is in C, C++, and the .NET languages, has been for some time, and is likely to remain so.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 2:04 PM by Josh

@atomice: Are you sure your statistics aren't weighted by the bugginess of your Fortran code? ;-)

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 2:34 PM by Yuhong Bao

"BTW, the mention of FORTRAN reminded of off-topic ramblings deleted."

Okay, I have posted it to off-roading the old new thing.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 3:52 PM by Mark Lacey

The first language tool I ever purchased was Microsoft FORTRAN for the Macintosh.

Yes, for the Macintosh.

I was taking FORTRAN at the time in high school (imagine that) and was perhaps 15 and getting quite tired of using the DECWriter paper termnial to connect to the mainframe to enter and run programs.

I'm feeling old now, so I'll stop there.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 4:24 PM by Kaenneth

I took a COBOL class, at a local technical school while in high school, for fun.

kinda explains a lot about me.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 6:28 PM by Jolyon Smith

FORTRAN may have helped you avoid that factor of 10 Error....  0.5% of 0.12% is 0.000006%, not 0.00006%.

;)

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 6:51 PM by Mark

Plato invented FORTRAN for exactly that reason.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 7:10 PM by Reginald Wellington III

Jolyon Smith:

0.5% = 0.005 and 0.12% = 0.0012.  0.005 * 0.0012 = 0.000006.  0.000006 = 0.0006%.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 8:53 PM by Leif Strand

Yes, indeed, Fortran is very much alive HPC sector.  Computational scientists still use it.

I'm not a scientist, but I work with scientists, and I've been forced to refactor Fortran-90 code for the past two weeks!  Augh!  The pain!  The pain!

Call-by-reference parameters, '&' line continuations... no pointers... just shoot me now.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 9:17 PM by Adam Glasgall

Leif, at least it was F90! At my alma mater, the physics profs are still using F77.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Wednesday, November 12, 2008 9:17 PM by Adam G

Leif, at least it was F90! At my alma mater, the physics profs are still using F77.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 1:00 AM by Anon

I read a paper a long while back that argued that because Fortran doesn't have pointer aliasing it was possible for the compiler to do more optimisations than C. I suspect if people are still using it it's mostly because it would take too long to port the code to C and assembler and tune it up rather than because it is impossible though.

"BTW, the mention of FORTRAN reminded of ... OFF-TOPIC RAMBLINGS DELETED."

Raymond, you crack me up :-)

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 3:27 AM by Chris Nahr

The reason that only two people replied to MS Fortran postcards was not that nobody is using Fortran.  As others have pointed out, Fortran is not primarily used on DOS or Windows, and MS Fortran was simply inferior to competing compilers on these platforms, similar to MS Pascal vs Turbo Pascal.

Fortran itself is hardly obsolete, even now.  The language has well-defined semantics and decent standard libraries for floating-point operations that C++ lacks.

And only a C++ programmer could possibly consider pointers a good thing.  No modern language has C-style pointers as a first-class feature, and for good reason.  Fortran cleverly avoided the whole insanity, so to speak.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 4:01 AM by peetm

imho it's a shame Microsoft dropped both it, and its Pascal compiler too.  I used both, and loved both.

# war of the languages

Thursday, November 13, 2008 5:08 AM by Bikedude

OK... Here is a question for you all:

What language should one use if the end result is supposed to be around for 30-50 years?

Delphi (Object Pascal + extensions) is the most maintainable language I know about. C# comes close.

But they are hardly mainstream. MS have abandoned languages before. Ten years ago, VB supposedly ruled the world, yet caused horrible messes and was severly limited. C# shows promise, but is much too young to be seriously considered IMO.

Java? The Java library for UI that I have seen, SWING, is a mess on top of a garbage heap. I have never seen a snappy Java applet. I remember a colleague of mine who ten years ago proudly exclaimed that we would soon have enough computing power to run Java applets at decent speeds. Several GHz and cores later, not to mention 100 times as much memory, the darn things STILL run slow! :(

In a dark corner of my mind, I then turn to Cobol (and Fortran). Languages that have been around forever and are still being used. Are these dinosaurs going to continue their reign of terror?

Luckily my projects do not have longevity as the main design goal. I am not designing the payroll system for California or anything close to that. (Thank <insert your personally preferable deity here>!)

But what if..?

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 6:47 AM by SuperKoko

> Call-by-reference parameters, '&' line continuations... no pointers... just shoot me now.

Fortran 90 has a (somewhat limited) form of pointers.

> I read a paper a long while back that argued that because Fortran doesn't have pointer aliasing it was possible for the compiler to do more optimisations than C.

Indeed, Fotran pointers/references are equivalent to C99 "restricted" pointers.

@Raymond: I'm curious to know how many people there's on this mailing list.

Is it two responses in thousand? In ten thousand?

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 8:01 AM by Jan Mikkelsen

Gee.  I remember using Microsoft Fortran IV on a TRS-80.  It seems like a very long time ago (which it was) and just yesterday all at the same time.

# re: war of the languages

Thursday, November 13, 2008 8:10 AM by Gareth

Bikedude,

Having had the dubious pleasure of maintaining/porting a few applications from older or less scalable languages (ie. QBASIC, dBase, Pascal) my experience is that well written, well documented code in a long-obsolete language is far easier to work with than poorly written, poorly documented code in any trendy modern language.

If your "Application for the ages" is going to remain on one system for it's lifespan, I'd argue that any well written, well documented code with a decent backup strategy for source code will serve well for many, many years.

For applications which have to be installed by many people over many platforms (some of which may not have been invented yet), I'd pick something with an Internationally-ratified standard behind it - C or C++

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 8:29 AM by Arthur T

the IBM VS Optimizing compiler is the must-study for optimizing compilers. The guys who wrote the Cray fortran compiler used it ( and liscensed it ). Fortran is, again, still very much alive in High Performance Computing. ( Almost all of the top500.org computers run some form ).

Intel makes a great Fortran compiler for Intel, and if you have AMD boxes, you can use Liunx/F90/F95.

The bottom line is that since no one ( 0.00006% ) programs anymore, or really cares about it, MAYBE they are using something else that is so much better, that the product gets ignored. ( I used the Linux F90 package for a rendering project on a bunch of AMD boxes, and it was FREE )

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 12:44 PM by DWalker59

Bikedude: "C# shows promise, but is much too young to be seriously considered IMO".

Too young to be seriously considered for WHAT?  C# is actively used, actively being developed, and shows every sign of being around for a long time.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 1:00 PM by HaggardBlaze

I have seen a few programs in the aerospace industry,  and I found an interesting example.  Years ago we used a FORTRAN program to a lot of advanced mathematical problems.  This was on a 16 bit computer.  Now we have the same program on a 128 bit computer written in C++.  It runs as fast, if not slower than the FORTRAN one.  I think this is due to the fact that FORTRAN code is designed specifically for advanced mathematical computation.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Thursday, November 13, 2008 6:13 PM by Ulric

It's actually easy to convert fortran code back to C, and people do it.  There is a free tool for it as part of unix/bsd,etc :  f2c.

I've had to deal with the code that generates.  not pretty!  

Gnu Fortran seems to be a solution as well.. never had to use it.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Friday, November 14, 2008 2:03 AM by SuperKoko

> What language should one use if the end result is supposed to be around for 30-50 years?

It depends on the software class.

For systems programming, I would say C and C++ are pretty alive and will be for at least 10 or 15 years, maybe more.

For business data base software there're probably more maintainable languages which will last for long.

I would say Java is "the new COBOL", and will last long too.

For web servers: Java or PHP seem to be somewhat safe.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Friday, November 14, 2008 3:12 AM by Igor Levicki

@Nathan_works:

Intel produces optimizing fortran compiler your better half should give it a try.

# re: Doesn't matter what your marketing technique is for your compiler if nobody actually writes code in your language any more

Friday, November 14, 2008 11:56 AM by David Smith

I know at least several scientists (experimental physicists) my age (early boomer, in our 60s) who are still actively using Fortran for new projects...don't know whether younger folks converted to C or Mathematica or something else, but Fortran isn't dead yet.

# Reginald Wellington III....

Sunday, November 16, 2008 6:29 PM by Jolyon Smith

Pick a more natural and intuitive set of numbers to test your math with:

10% x 10% x 100 =    1% x 100 = 0.01

0.1 x 0.1 x 100 = 0.01  x 100 = 0.01

I don't know why you and Raymond both felt the need to adjust the percentage of a percentage, but this wasn't actually the point of the post and verges on nitpickers corner.

;)

New Comments to this post are disabled
 
Page view tracker