03 Feb, 2011, Havok wrote in the 1st comment:
Votes: 0
I have been playing muds since I was nine. I am now twenty seven, I have a basic question. I am in college and some what up to date on technologies. I have seen hundreds of individuals learn C and play with code base's. I often wondered why the mud community doesn't like any other languages besides C? I find Python a fine candidate even Ruby or Lua to be great competitors against C. I am not opposed to C, but it just feels like the mud community isn't expanding with the rest of computer related industries. I was in shock I stumbled across Evennia Mud. I was shocked to see django mud of all things. I have a soft spot for muds, it's what I stumbled across to get me into the position I am today. I just would like to know everyone's thoughts. Please, I already can feel some of the replies. I understand most code bases are C and I also understand that they've been around the longest. That should stop individuals from creating a mud that is not C related. I can understand if our RAM was still significantly less. Our computer today can handle muds pretty well. Well, this is something I've been pondering for quite some time. :unclesam:

Havok
03 Feb, 2011, Runter wrote in the 2nd comment:
Votes: 0
Hello Havok,

The answer is simply that C is what people know because C is what most popular codebases were written in. Most people learn with those codebases and create their mud in C. The vicious cycle continues, but in most communities C wouldn't be used as monolithically for something C isn't a great for for as it is here. Some of the users have continued the natural progression towards C++. And I agree with you, but there are quite a few people in the mud community writing with Python, Ruby, and Lua. Converting all the C people over just isn't going to happen, though. The best way would be putting more information out and starter code for using these languages with muds. Over time, if the support is as good as in the C codebases, perhaps more people would choose them.
03 Feb, 2011, Havok wrote in the 3rd comment:
Votes: 0
That makes sense, a cycle. I too listen to people say I got a book to learn C and use a codebase. I typically fire back you should think of trying Ruby or Python or Lua. I honestly think now a days that these languages will be best to let new beginners to grasp on to. The thinking behind this is if they become a programmer because of their curiosity and fascination with muds. Why not have an arsenal?

-Havok
03 Feb, 2011, Cratylus wrote in the 4th comment:
Votes: 0
Havok said:
I often wondered why the mud community doesn't like any other languages besides C?


Your basic assumptions are faulty. It is like asking why humans don't like any other languages besides English.

The Dikurivative community seems to like C. There is, however, a wider "community".

-Crat
http://lpmuds.net
03 Feb, 2011, Havok wrote in the 5th comment:
Votes: 0
Quote
Your basic assumptions are faulty. It is like asking why humans don't like any other languages besides English.

I am not sure it has to do with the fact that the C language has been around for 15 or 20 years does it?
The whole point was to get opinions and thoughts why the community is still so one sided? After eighteen years there are still many in this community learning C. I don't see many saying I got a python book today and plan on playing with a codebase.

-Havok
03 Feb, 2011, Runter wrote in the 6th comment:
Votes: 0
Havok said:
Quote
Your basic assumptions are faulty. It is like asking why humans don't like any other languages besides English.

I am not sure it has to do with the fact that the C language has been around for 15 or 20 years does it?
The whole point was to get opinions and thoughts why the community is still so one sided? After eighteen years there are still many in this community learning C. I don't see many saying I got a python book today and plan on playing with a codebase.

-Havok


Well, muds haven't changed much. They're still (for the most part) the same games and the same way to play. I think that has something to do with the underlying technology not changing much either. That old adage, "if you build it they will come"– I really think if you make a product that attracts a lot of players and release a codebase, you'll find a large community being built around your codebase. That's kinda what has happened with the various mud codebases as crat points out. Diku is C and many codebases are either directly up the family tree from it or inspired by it. I think we can agree that talk is cheap, telling people what they should be doing is easy. It's considerably harder to provide the community and resources needed to foster new developers using technologies like Python and Ruby.
03 Feb, 2011, Idealiad wrote in the 7th comment:
Votes: 0
It's not that muds aren't written in other languages – there are 20 or 30 Python muds for example. However a mud is not just its language, it's years and years of content creation, systems and areas.

Muds today are so niche that very few people would even consider taking on the challenge of creating something to rival a canon codebase in terms of features, and when they do, frequently it's only the developers who grew up with muds (learning C/LPC) who are capable enough to tackle such a project.
03 Feb, 2011, Havok wrote in the 8th comment:
Votes: 0
I agree Runter. I think knowing is half the battle. I had no idea that CoralMud even existed. After looking at it my mouth started watering. I was amazed, I saw Mud and Ruby and a code base. That is exciting. I agree I don't mean to be disrespectful in anyway to any mud community. I just don't see why the C is the end all. I always try and encourage new prospects to try a newer technology. I will definitely mention CoralMud as another alternative. I think it might have another aspect that most of these code bases documentation is decent. I think if documentation and a specific mud gets popular. For instance someone takes coralmud and it becomes popular I believe this ignites new comers to look in that direction.

-Havok
03 Feb, 2011, Havok wrote in the 9th comment:
Votes: 0
Quote
However a mud is not just its language, it's years and years of content creation, systems and areas.

In most cases you are right, new individuals want something they can modify then write from scratch. Lately, I've noticed an influx of individuals wanting things more custom. I think this has to do with present technology. Games like WOW, Everquest, Silk Road Online. I think the audience now realises they can't just take a stock mud and call it good. It has to be more special then it was years ago.
03 Feb, 2011, sankoachaea wrote in the 10th comment:
Votes: 0
Havok said:
I just don't see why the C is the end all.

I don't see where anybody has said it is. In fact, I'm wary of any instructor who maintains 'culture bias/prejudice' in regards to programming languages. It's surprising really but a lot of people do. As with any project, the choice of programming language used to engineer the software should be dictated by needs and means. If you need static typing, low level memory functions, extensive library functionality, classes or whatever, then those things would affect your choice.

I think the case with MUDs is a pretty common. You want to build something but you don't want (or know how) to do it all from scratch, so parts of the software you're going to 'borrow' from other similar software. Of the 100 projects you find that are relevant, over 90% are in C or languages you don't know at all. A few of them are in VB, but you need a minimal unix app with quick benchmarks.

Ten years down the line, someone is going to ask you why you chose to write this piece of software in C when there were newer, more modern technologies that will probably be more common. They might even say it like, "I just don't understanding why you old-guys think C is the end-all language to write 'such and such' kind of software in. Don't get too defensive when they do.
03 Feb, 2011, plamzi wrote in the 11th comment:
Votes: 0
Idealiad's point is crucial–the persistence of C in the MUD world has everything to do with deep customization. Because most of the top MUDs are still in C, and because most of the free-floating code bits to help one get started are also in C, "the flock" is slow to adopt newer codebases and languages.

Here's an anecdote. My home (and only) MUD died because someone decided to take it offline temporarily and convert it from C to C++. When the task proved far more challenging than they thought, they also realized they hadn't kept a copy of the (perfectly functional) original. Oops.

For what it's worth, I don't see C as holding back some kind of MUD revival. Believing MUDs are in for some kind of new Golden Age if only they changed the language they're written in is just engaging in wishful thinking. It is delightful to dream such things, on occasion, but one should not overdo it.

In fact, I'm going to play the devil's advocate now and suggest that C is one of the reasons MUDs are still so plentiful in number and continue to inspire developers. As anyone who has mastered an object-oriented language can testify, the beginning is like trying to punch through a concrete wall with a bare fist. Most things are a lot more obvious when written in clunky old C. Many players over the years have gotten into coding because the syntax is initially more welcoming. To be sure, many headaches follow once you dig deeper, but nothing is insurmountable, and your soul is already sold…
03 Feb, 2011, Havok wrote in the 12th comment:
Votes: 0
Plamzi, I completely agree with you on your post. However, my point I was making that it's not very appealing to a computer science major to dabble a mud and have to learn C. Most language taught today are python, Java, and quite possibly Ruby. Appealing to the modern changes of our time might influence the output of muds. Maybe even a well document link page of non standard C codebases. Lua, Python, Java, Ruby codebases would be a start. I am just pause sometimes when the first response is always learn C. I am not saying C is something bad to learn. However, it'd be nice to things fork then stay so focused. An example is like when we had the major oil spill. America heard the problem and it was broadcasting over the world for several weeks. Though there are other things going on besides the oil spill it was focus upon by the media. This example is kind of how my feels are with the C topic. It seems it's focused on it even though there are other alternatives.

-Havok
03 Feb, 2011, plamzi wrote in the 13th comment:
Votes: 0
Havok said:
Plamzi, I completely agree with you on your post. However, my point I was making that it's not very appealing to a computer science major to dabble a mud and have to learn C. Most language taught today are python, Java, and quite possibly Ruby. Appealing to the modern changes of our time might influence the output of muds. Maybe even a well document link page of non standard C codebases. Lua, Python, Java, Ruby codebases would be a start. I am just pause sometimes when the first response is always learn C. I am not saying C is something bad to learn. However, it'd be nice to things fork then stay so focused. An example is like when we had the major oil spill. America heard the problem and it was broadcasting over the world for several weeks. Though there are other things going on besides the oil spill it was focus upon by the media. This example is kind of how my feels are with the C topic. It seems it's focused on it even though there are other alternatives.

-Havok


Whoever gave you the "Learn C" answer may not have been aware of CoffeeMUD (Java), which seems to be a codebase that's becoming increasingly popular. I haven't dabbled myself so I can't point you to any resources but I'm sure others can. It could be that you have to be part of the pool of new talent that makes more CoffeeMUD resources available.

While I agree with you that codebases in more modern languages may attract newer generations of developers, I think that's a separate issue, not necessarily explaining why "the mud community isn't expanding with the rest of computer related industries." If I were to take a stab, here's what I'd list as top factors:

* The novelty is gone. MUDs haven't been new since the early 90's. Young people like new stuff because they tend to conflate new with good. This applies to consumers as well as to potential makers of MUDs. So even if a young developer wants to take a stab at their own MUD, why would they want to target a seemingly shrinking, noticeably older audience when they could just as easily get into more modern, dumbed down alternatives that offer much wider reach?

* Except for a very tiny niche market, MUDs are non-commercial. So even if there was a great fully open MUD codebase available in all major modern languages, why would a young coder pick any of them up rather than a mobile SDK? In 2011, it seems that one can learn Java, or Objective-C, and get paid a bit of cash if they end up with something that can run on a smartphone.

* MUDs appeal to people who enjoy reading, complex systems, and exercising their imagination. In the young days when MUDs were new, they attracted a wider audience simply because there were few other alternatives for online gaming. Now that the folks who played MUDs because there was nothing else to play have moved on to "greener pastures", it appears that the MUD community is shrinking. It would be more accurate to say that the community has found a stable identity and is simply continuing to mature. Probably as many new folks will enter it as will leave. That's what we mean when we say "niche" - niches don't grow and don't shrink.
03 Feb, 2011, Tyche wrote in the 14th comment:
Votes: 0
Havok said:
Plamzi, I completely agree with you on your post. However, my point I was making that it's not very appealing to a computer science major to dabble a mud and have to learn C. Most language taught today are python, Java, and quite possibly Ruby. Appealing to the modern changes of our time might influence the output of muds. Maybe even a well document link page of non standard C codebases. Lua, Python, Java, Ruby codebases would be a start. I am just pause sometimes when the first response is always learn C. I am not saying C is something bad to learn. However, it'd be nice to things fork then stay so focused. An example is like when we had the major oil spill. America heard the problem and it was broadcasting over the world for several weeks. Though there are other things going on besides the oil spill it was focus upon by the media. This example is kind of how my feels are with the C topic. It seems it's focused on it even though there are other alternatives.


Let's pretend there aren't dozens of muds written in Ada, D, C#, Ruby, Java, Python, Lisp, Delphi, Basic, Perl, Lisp, Lua, Javascript, Smalltalk, Ocaml, PHP and other odd languages, and just go write one then.

Or maybe just download one to get started…
ftp://sourcery.dyndns.org/archive/servers/othe...
http://sourcery.dyndns.org/wiki.cgi?MudS...
http://www.andreasen.org/newmud/
03 Feb, 2011, Havok wrote in the 15th comment:
Votes: 0
You make a very valid point. Why program a mud when you can make a little cash on the side. While that makes sense, I've known employee's who programmed muds and used it as experience on a resume. I know this topic can go both ways, but it should show a much broader understanding of larger programs. Unless you want to program small phone games. As an employer I would personally pick the individual that brought me the custom mud then someone who brought me a phone app that does a few cute things.

Quote
Let's pretend there aren't dozens of muds written in Ada, D, C#, Ruby, Java, Python, Lisp, Delphi, Basic, Perl, Lisp, Lua, Javascript, Smalltalk, Ocaml, PHP and other odd languages, and just go write one then.



I am not sure I fully understand this statement. Is it to realise there are more than one codebase out there? I am well aware that they are. I searched three months to find python related mud. The codebases might be there, but ways to find that codebase is exponentially harder. Not to mention some do not want to share there code to the world. Which is completely understandable. Once I've had enough python to suit my fancy which probably will be at least a year. I will probably take a stab at CoralMud.

I learn best doing something I like or love. Doesn't it make sense to learn programming while doing it?
04 Feb, 2011, Cratylus wrote in the 16th comment:
Votes: 0
Havok said:
I am not sure I fully understand this statement. Is it to realise there are more than one codebase out there? I am well aware that they are. I searched three months to find python related mud.


http://www.google.com/search?hl=en&s...

Perhaps my own post was too subtle.

The problem you are describing doesn't exist. There is no shortage of non-C muds and codebases, and your statements do
more to identify you as woefully underexposed than particularly insightful in your observations.

-Crat
http://lpmuds.net
04 Feb, 2011, Ssolvarain wrote in the 17th comment:
Votes: 0
And Crat wins the internets once more!
04 Feb, 2011, Idealiad wrote in the 18th comment:
Votes: 0
Havok said:
I searched three months to find python related mud.


No disrespect, but you didn't search very hard.

http://www.mudbytes.net/index.php?a=arti...

http://posted-stuff.blogspot.com/2010/08...

http://www.google.com/search?num=100&...


edit: Crat == ninja
04 Feb, 2011, sankoachaea wrote in the 19th comment:
Votes: 0
Idealiad said:
Havok said:
I searched three months to find python related mud.


No disrespect, but you didn't search very hard.

http://www.google.com/

edit: Crat == ninja


That's asignment. You don't assign someone as ninja. The correct way is to call the function isNinja() with the argument Cratylus which should return true.
04 Feb, 2011, Idealiad wrote in the 20th comment:
Votes: 0
It's not assignment in C. :D
0.0/275