<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
    <channel>
        <title>Chris.Laponsie's site</title>
        <link>http://www.byond.com/members/ChrisLaponsie</link>
        <description></description>
        <lastBuildDate>Sat, 11 Feb 2012 01:36:31 +0000</lastBuildDate>
        <language>en-us</language>
    
                <item>
            <title>Hosting Service Recommendations</title>
            <link>http://www.byond.com/members/ChrisLaponsie?command=view_post&amp;post=277793</link>
            <guid>http://www.byond.com/members/ChrisLaponsie?command=view_post&amp;post=277793</guid>
            <pubDate>Thu, 27 Mar 2008 01:17:36 +0000</pubDate>
            
            <comments>http://www.byond.com/members/ChrisLaponsie?command=view_comments&amp;post=277793#comments</comments>
            
            <description>I've recently found out that there is a lot of demand for web design in my area. I have several clients lined up who have agreed to letting me host for them. Does anybody have any suggestions for a hosting site? While I'm at it, I'd like to be able to install BYOND on it so I can host my own BYOND games from this server. I'll need PHP, MySQL, and a way to set up clients up with their own email/cPanel. I'd like for the server to more or less pay for itself with 4-5 clients.&lt;br&gt;
&lt;br&gt;
So, any suggestions?</description>
        </item>
                <item>
            <title>Naming Conventions</title>
            <link>http://www.byond.com/members/ChrisLaponsie?command=view_post&amp;post=38503</link>
            <guid>http://www.byond.com/members/ChrisLaponsie?command=view_post&amp;post=38503</guid>
            <pubDate>Thu, 24 Jan 2008 17:02:47 +0000</pubDate>
            
            <comments>http://www.byond.com/members/ChrisLaponsie?command=view_comments&amp;post=38503#comments</comments>
            
            <description>Over the years, I've noticed patterns in the way I write code. For instance, I almost always write variables in lower-case text and procedures in medial caps. I've been working on revamping my old MUDbase libraries, and one thing I've noticed is that my naming conventions aren't always consistent. In fact, sometimes they are outright random. Since these libraries are meant to work in tandem, I decided I need to sit down and figure out a set of naming conventions to use. This document describes a method of creating libraries, or &quot;modules,&quot; with very specific naming conventions.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Modular Programming Standards&lt;/b&gt;&lt;br&gt;
&lt;p&gt;All related code is to be stored in the format of a module datum. The module is completely encapsulated in that private functions and variables are not accessed directly. Public functions are those to be called externally (by something other than the module). Private functions are those used by the module and called internally. The module is only interfaced with its public functions.&lt;br&gt;&lt;/p&gt;
&lt;p&gt;A module has two methods of identification. The first one is its name. The name should be descriptive and unique in order to avoid conflict with other modules. The second is a prefix. The prefix should be two to four characters and is always followed by an underscore. In most cases, it will be an abbreviation of the module name. It is used to name variables and objects defined outside the module itself. The module name will always be lower-case with underscores separating each word. The prefix will also always be lower-case.&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Variables within a module are defined in lower-case, with underscores separating the words. Public variables are those that are allowed to be directly manipulated outside the module, and private variables are those that are not intended to be manipulated directly. Most variables will be private. If the variable is considered private, it will be prefixed by and underscore and never manipulated directly. If a variable is defined outside a module, it is prefixed with an underscore, followed by the module prefix, followed by a second underscore. All variables defined outside the module are considered private, and should not be directly manipulated. Instead, they should interface with functions.&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Public functions are those that are called externally. Private functions are those that are called within the module. All functions are defined in medial caps with no separation between words. Private functions are prefixed with an underscore. All functions defined outside the module are prefixed with the module prefix followed by an underscore. A private function defined outside the module is prefixed with an underscore, followed by the module prefix, followed by another underscore.&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Example module:&lt;br&gt;&lt;/p&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
&lt;span class=&quot;dmcomment&quot;&gt;// BEGIN MODULE //&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span class=&quot;dmcomment&quot;&gt;/*&lt;br&gt;    Communication module&lt;br&gt;&lt;br&gt;Name:   communication&lt;br&gt;Prefix: cmm&lt;br&gt;&lt;br&gt;WARNING:  This code has not beed compiled.  It may contain bugs or be completely nonsense.&lt;br&gt;&lt;br&gt;*/&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/&lt;span class=&quot;dmkeyword&quot;&gt;const&lt;/span&gt;/CMM_IDLE_TIME = 1800&lt;br&gt;&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/communication/communication = &lt;span class=&quot;dmkeyword&quot;&gt;new&lt;/span&gt;()&lt;br&gt;&lt;br&gt;communication&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;&lt;br&gt;        list/_clients = list()&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/ClientList()   &lt;span class=&quot;dmcomment&quot;&gt;// this could be private, but it might be useful outside of this module as well&lt;/span&gt;&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt; _clients&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/AddClient(client/c)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(!(c &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; _clients)) _clients += c&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt; _clients.len&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/RemoveClient(client/c)&lt;br&gt;        _clients -= c&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt; _clients.len&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/SendToAll(m)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/client/c &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; ClientList())&lt;br&gt;            c.cmm_ReceiveMessage(m)&lt;br&gt;&lt;br&gt;client&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;&lt;br&gt;        _cmm_last_activity&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/cmm_Initialize()&lt;br&gt;        communication.AddClient(src)&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/cmm_Denitialize()&lt;br&gt;        communication.RemoveClient(src)&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/cmm_OutputMessage(m)&lt;br&gt;        cmm_Activity()&lt;br&gt;        communication.SendToAll(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[src]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt; says, '&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[m]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;'&amp;quot;&lt;/span&gt;)&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/cmm_ReceiveMessage(m)&lt;br&gt;        src &amp;lt;&amp;lt; &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[time2text(world.realtime)]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;: &lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[m]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/cmm_Activity()&lt;br&gt;        _cmm_last_activity = world.realtime&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/cmm_IdleState()&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt; (_cmm_last_activity + CMM_IDLE_TIME &amp;lt;= world.realtime)&lt;br&gt;&lt;br&gt;&lt;span class=&quot;dmcomment&quot;&gt;// END MODULE //&lt;/span&gt;&lt;br&gt;&lt;br&gt;client/New()&lt;br&gt;    cmm_Initialize()&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt; ..()&lt;br&gt;client/Del()&lt;br&gt;    cmm_Denitialize()&lt;br&gt;    &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt; ..()&lt;br&gt;mob/&lt;span class=&quot;dmkeyword&quot;&gt;verb&lt;/span&gt;&lt;br&gt;    cmm_Say(t &lt;span class=&quot;dmkeyword&quot;&gt;as&lt;/span&gt; text)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;set&lt;/span&gt; name = &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;say&amp;quot;&lt;/span&gt;&lt;br&gt;        client.cmm_OutputMessage(t)&lt;br&gt;    cmm_Who()&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;set&lt;/span&gt; name = &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;who&amp;quot;&lt;/span&gt;&lt;br&gt;        usr &amp;lt;&amp;lt; &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Clients online:&amp;quot;&lt;/span&gt;&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/client/c &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt;  communication.ClientList())&lt;br&gt;            usr &amp;lt;&amp;lt; &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;\t&amp;quot;&lt;/span&gt;+ c.key + (c.cmm_IdleState() ? &lt;span class=&quot;dmstring&quot;&gt;&amp;quot; (idle)&amp;quot;&lt;/span&gt; : &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;)
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;</description>
        </item>
                <item>
            <title>Stylesheet contest:</title>
            <link>http://www.byond.com/members/ChrisLaponsie?command=view_post&amp;post=277745</link>
            <guid>http://www.byond.com/members/ChrisLaponsie?command=view_post&amp;post=277745</guid>
            <pubDate>Wed, 09 Jan 2008 23:55:43 +0000</pubDate>
            
            <comments>http://www.byond.com/members/ChrisLaponsie?command=view_comments&amp;post=277745#comments</comments>
            
            <description>Whoever designed the best stylesheet for this site wins a BYOND membership!&lt;br&gt;
&lt;br&gt;
&lt;a href=&quot;http://members.byond.com/MUDdev&quot;&gt;http://members.byond.com/MUDdev&lt;/a&gt;</description>
        </item>
                <item>
            <title>Hello</title>
            <link>http://www.byond.com/members/ChrisLaponsie?command=view_post&amp;post=277739</link>
            <guid>http://www.byond.com/members/ChrisLaponsie?command=view_post&amp;post=277739</guid>
            <pubDate>Thu, 03 Jan 2008 02:14:14 +0000</pubDate>
            
            <comments>http://www.byond.com/members/ChrisLaponsie?command=view_comments&amp;post=277739#comments</comments>
            
            <description>I'm just stopping in to introduce myself. It's been a long time. I use to post around here under the name, &quot;Ebonshadow.&quot; Just thought I'd check to see how everybody was doing.&lt;br&gt;
&lt;br&gt;
I'm doing really well. I haven't programmed in a long time, but as you might have guessed, I intend to soon.&lt;br&gt;
&lt;br&gt;
I have a nice little recording studio set up now. I still do freelance game music, so let me know if you're interested. My style ranges from synth/techno to heavy metal, and alot in between.&lt;br&gt;
&lt;br&gt;
Expect to hear more from me soon!</description>
        </item>
            
    </channel>
</rss>


