From: "Brandon J. Van Every" <vanevery@indiegamedesign.com>
To: "caml" <caml-list@inria.fr>
Subject: [Caml-list] Evangelism
Date: Sun, 20 Jun 2004 04:24:04 -0700 [thread overview]
Message-ID: <OOEALCJCKEBJBIJHCNJDMEBEHEAB.vanevery@indiegamedesign.com> (raw)
In-Reply-To: <37662.217.95.201.40.1087676184.squirrel@btn1x1.inf.uni-bayreuth.de>
What's this post of mine about? Really, it's about Evangelism. How do
people make decisions on what language to use? Which languages survive
in industry and which ones die? Herein I discuss general principles.
Extrapolation to OCaml is left as an exercise to the reader.
Wolfgang Müller wrote:
>
> No, for me personally language evangelism is not the point. Language
> evaluation is the point. If it comes out that the best language for
> solving my problems is actually JAVA, I swallow and say "yes,
> thanks for this information"
The problem space is too complex to believe you're swallowing anything
on 'objective merit'. What you're really doing is iterating your
subjective criteria over and over again. You probably have 10 variables
you care about. It takes a lot of time, looking at a lot of options, to
identify which of those 10 variables aren't so important, which ones are
dealbreakers, which ones would subjectively improve your life if only
you had feature X, etc.
If you lay out all the permutations and/or combinations mathematically,
and assign some kind of fungible constant amount of time to each
iteration, i.e. "3 days," you will probably conclude that the decision
gets made when you run out of time. To fully evaluate the problem
always takes more time than you have. So at some point, you close your
eyes and make a leap.
Or else, someone more important than you are tells you what to do.
Companies like Microsoft thrive mainly on the limited amount of time
that most managers are willing to dedicate to these problems.
> Brandon Van Every wrote:
> >
> > Actually I think comparative benchmarking for some goal other than
> > evangelism is kinda pointless.
>
> How do you define "evangelism"?
I define it as "promoting the benefits of a technology in the face of
competition." We have many programming languages we could choose to
use. When we say that OCaml is better than other options for Problem X,
we are *evangelizing* OCaml.
> In any case, I
> would be interested in looking at a set of benchmarks that tells me if
> what I want to achieve can be done easily and efficiently in a given
> language or not, without me having to write too many comparative
> benchmarks myself. One per week is clearly too many for me. Ballpark
> figures are useful already.
My experience over the past year is:
- all compiled languages are within a similar ballpark of performance
- the performance divide is between compiled and interpreted
- small open source projects are useless for production coding
- only the large open source projects are any good
- if someone's language reeks of smallness, skip it
- if it doesn't have a VC++ build it's useless on Windows
- has someone solved *your problems* using the language?
My driving problems are:
- how do I make commercially viable games with less work?
- can I turn around and consult these skills to others?
I think it's important to define one's driving problems, and also
resolve conflicts between them. You say you want language benchmarks.
Well, why? What are they going to help you decide? "Anything you might
want to achieve" is too vague.
Cheers, www.indiegamedesign.com
Brandon Van Every Seattle, WA
"We live in a world of very bright people building
crappy software with total shit for tools and process."
- Ed Mckenzie
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.708 / Virus Database: 464 - Release Date: 6/18/2004
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
next prev parent reply other threads:[~2004-06-20 11:15 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-17 18:05 [Caml-list] Great Programming Language Shootout Revived Brian Hurt
2004-06-18 1:18 ` Yaron Minsky
2004-06-18 9:37 ` Sebastien Ferre
2004-06-18 15:45 ` Brian Hurt
2004-06-18 21:39 ` Eray Ozkural
2004-06-18 6:09 ` Brandon J. Van Every
2004-06-18 7:56 ` Ville-Pertti Keinonen
2004-06-18 8:59 ` skaller
2004-06-18 9:57 ` Ville-Pertti Keinonen
2004-06-18 10:48 ` Implementing DSLs in OCaml/CamlP4 (was: Re: [Caml-list] Great Programming Language Shootout Revived) Richard Jones
2004-06-18 12:32 ` Walid Taha
2004-06-18 15:38 ` [Caml-list] Great Programming Language Shootout Revived Brian Hurt
2004-06-18 17:07 ` David Brown
2004-06-19 0:26 ` Nicolas FRANCOIS
2004-06-19 9:04 ` [Caml-list] Benchmark suggestion (Was: Programming Language Shootout) Wolfgang Müller
2004-06-19 10:54 ` Ville-Pertti Keinonen
2004-06-19 19:38 ` [Caml-list] Benchmark suggestion Brandon J. Van Every
2004-06-19 20:08 ` Brian Hurt
2004-06-19 20:16 ` Wolfgang Müller
2004-06-20 11:24 ` Brandon J. Van Every [this message]
2004-06-19 11:18 ` [Caml-list] Great Programming Language Shootout Revived Ville-Pertti Keinonen
2004-06-19 11:56 ` Nicolas Janin
2004-06-19 12:51 ` Marcin 'Qrczak' Kowalczyk
2004-06-19 19:46 ` Brandon J. Van Every
2004-06-19 20:19 ` Brian Hurt
2004-06-19 12:09 ` Nicolas Janin
2004-06-19 12:48 ` John Hughes
2004-06-19 18:57 ` Brian Hurt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=OOEALCJCKEBJBIJHCNJDMEBEHEAB.vanevery@indiegamedesign.com \
--to=vanevery@indiegamedesign.com \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox