
Using Mathematica to generate Web 2.0 company names - mqt
http://collison.ie/blog/2009/04/using-mathematica-to-generate-web-20-company-names
======
barrkel
I don't know Mathematica, so I can't quite tell exactly what algorithm is
being used in Patrick's code, but I do know that Markov chains are a useful
way of generating similar names and are easy to program in common languages.
(Patrick may be using Markov chaining - I see a RandomChoice from CharFreqs.)

Basically, analyze a word corpus and create frequencies for letter pairs,
considering word start and end as letters for convenience. Then, starting with
a word start, choose letters randomly based on the frequency of the pairs
where the first letter in the pair is the last letter in your current word.
Continue until a word end is chosen.

Building frequencies using letter triplets rather than letter pairs can get
better results, where pairs may choose unlikely match-ups such as "cth",
taking e.g. a"ct" as common, and "th"e as common. Longer tuples can be chosen
but a slight adjustment of word start and end strategy is needed.

------
abecedarius
I don't know Mathematica either, but here's a Markov-model hack as barrkel
suggested:
[http://github.com/darius/languagetoys/blob/505309d5900ac49c6...](http://github.com/darius/languagetoys/blob/505309d5900ac49c6f10b7edf5218da9fef536b4/companynames.py)

------
chaosmachine
This is a nice idea, but I was hoping for a big text dump of names I could
look at. Maybe you could turn this into a web app.

------
appleJ
iCantThinkOfBetterName

... (iPhone app)

