<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated on Tue, 12 May 2026 04:29:46 -0700 -->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <atom:link href="https://steamcommunity.com/groups/pythoncoding" rel="self" type="application/rss+xml" />
    <title>The Python Coding Group RSS Feed</title>
    <link><![CDATA[https://steamcommunity.com/groups/pythoncoding]]></link>
    <description><![CDATA[Events and Announcements for The Python Coding Group]]></description>
    <language>en-us</language>
    <generator>Steam Community RSS</generator>
    <item>
      <title>New PYCG logo!</title>
      <description>Hello. I made a new logo for PYCG. Please tell me your opinion, is it better or worse than the last one, and if you think I should change anything.</description>
      <link><![CDATA[https://steamcommunity.com/groups/pythoncoding/announcements/detail/920047728047308275]]></link>
      <pubDate>Thu, 02 Sep 2010 16:46:08 +0000</pubDate>
      <author>phyce</author>
      <guid isPermaLink="true">https://steamcommunity.com/groups/pythoncoding/announcements/detail/920047728047308275</guid>
    </item>
    <item>
      <title>#===First PYCG Project=== - Jumpbeat, a sound sequencer using Python</title>
      <description>It's official, we're looking to develop a sequencing application with Python, (intention of support on PC and Linux) .&lt;br&gt;&lt;br&gt;We are basically wondering if anyone with Tkinter (and Tix, preferably) knowledge is interested on assisting with the UI.&lt;br&gt;&lt;br&gt;The main control to be constructed is the timeline which will be quite a complex undertaking. Designs are to be confirmed, but it will need support for multiple tracks, dynamic resizing, a playhead and will have to be able to be scrolled.&lt;br&gt;&lt;br&gt;Anyone interested contact an admin, leave a comment or even make your own post.&lt;br&gt;&lt;br&gt;If enough people with wxPython knowledge wish to contribute then we may consider switching technologies.&lt;br&gt;&lt;br&gt;Anyone with sound/wave theory knowledge could help with visualisation.&lt;br&gt;&lt;br&gt;Graphic designers are welcome for help with the splash and icons. (and possibly playhead, depending upon how things play out)</description>
      <link><![CDATA[https://steamcommunity.com/groups/pythoncoding/announcements/detail/91379056154618027]]></link>
      <pubDate>Tue, 29 Jun 2010 18:49:58 +0000</pubDate>
      <author>jsren</author>
      <guid isPermaLink="true">https://steamcommunity.com/groups/pythoncoding/announcements/detail/91379056154618027</guid>
    </item>
    <item>
      <title>What I get up to when I get bored...&quot;Still Alive&quot; done by winsound.Beep - Part 2, the music</title>
      <description>import StillAlive&lt;br&gt;from StillAlive import *&lt;br&gt;&lt;br&gt;&lt;br&gt;Song = [&lt;br&gt;    &lt;br&gt;    [G(),Q_],    #This&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #Was&lt;br&gt;    [E(),Q_],    #A&lt;br&gt;    [E(),Q_],    #Tri-&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #-Umph&lt;br&gt;    [P(),B_],&lt;br&gt;    [P(),C_],&lt;br&gt;    [A(),Q_],    #I'm&lt;br&gt;    [G(),Q_],    #Ma-&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #-king&lt;br&gt;    [E(),Q_],    #A&lt;br&gt;    [E(),dC_],   #Note&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #Here:&lt;br&gt;    [D(),dC_],   #HUGE&lt;br&gt;    [E(),Q_],    #SUC-&lt;br&gt;    [A(),dC_],   #-CESS&lt;br&gt;    [P(),M_],&lt;br&gt;    [P(),Q_],&lt;br&gt;    [A(),C_],    #It's&lt;br&gt;    [E(),C_],    #Hard&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #To&lt;br&gt;    [G(),dC_],   #Ov-&lt;br&gt;    [E(),C_],    #-er&lt;br&gt;    [C(&amp;quot;#&amp;quot;),C_], #State&lt;br&gt;    [D(),Q_],    #My&lt;br&gt;    [E(),dC_],   #Sa-&lt;br&gt;    [A(),Q_],    #-tis-&lt;br&gt;    [A(),dQ_],   #-fac-&lt;br&gt;    [F(&amp;quot;#&amp;quot;),C_], #-tion&lt;br&gt;    [P(),B_],&lt;br&gt;    [G(),Q_],    #A-&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #-per-&lt;br&gt;    [E(),Q_],    #-ture&lt;br&gt;    [E(),Q_],    #Sci-&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #-ence&lt;br&gt;    [P(),B_],&lt;br&gt;    [P(),C_],&lt;br&gt;    [A(),Q_],    #We&lt;br&gt;    [G(),Q_],    #Do&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #What&lt;br&gt;    [E(),Q_],    #We&lt;br&gt;    [E(),dC_],   #Must&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #Be-&lt;br&gt;    [D(),dC_],   #-cause&lt;br&gt;    [E(),Q_],    #We&lt;br&gt;    [A(),dC_],   #Can&lt;br&gt;    [P(),M_],&lt;br&gt;    [P(),Q_],&lt;br&gt;    [E(),C_],    #For&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #The&lt;br&gt;    [G(),dC_],   #Good&lt;br&gt;    [E(),C_],    #Of&lt;br&gt;    [C(&amp;quot;#&amp;quot;),C_], #All&lt;br&gt;    [D(),Q_],    #Of&lt;br&gt;    [E(),dC_],   #Us&lt;br&gt;    [A(),Q_],    #Ex-&lt;br&gt;    [D(),Q_],    #-cept&lt;br&gt;    [E(),Q_],    #The&lt;br&gt;    [F(),Q_],    #Ones&lt;br&gt;    [E(),Q_],    #Who&lt;br&gt;    [D(),Q_],    #Are&lt;br&gt;    [C(),Q_],    #Dead&lt;br&gt;    [P(),C_],&lt;br&gt;    [A(),Q_],    #But&lt;br&gt;    [B(&amp;quot;b&amp;quot;),Q_], #There's&lt;br&gt;    [C(),C_],    #No&lt;br&gt;    [F(),C_],    #Sense&lt;br&gt;    [E(),Q_],    #Cry-&lt;br&gt;    [D(),Q_],    #-ing&lt;br&gt;    [C(),Q_],    #Ov-&lt;br&gt;    [D(),Q_],    #-er&lt;br&gt;    [D(),Q_],    #Ev-&lt;br&gt;    [C(),Q_],    #-ry&lt;br&gt;    [C(),C_],    #Mis-&lt;br&gt;    [C(),C_],    #-take&lt;br&gt;    [A(),Q_],    #You&lt;br&gt;    [B(&amp;quot;b&amp;quot;),Q_], #Just&lt;br&gt;    [C(),C_],    #Keep&lt;br&gt;    [F(),C_],    #On&lt;br&gt;    [G(),Q_],    #Try-&lt;br&gt;    [F(),Q_],    #-ing&lt;br&gt;    [E(),Q_],    #'Till&lt;br&gt;    [D(),Q_],    #We&lt;br&gt;    [D(),Q_],    #Run&lt;br&gt;    [E(),Q_],    #Out&lt;br&gt;    [F(),C_],    #Of&lt;br&gt;    [F(),C_],    #Cake&lt;br&gt;    [G(),Q_],    #And&lt;br&gt;    [A(&amp;quot;&amp;quot;,2),Q_],#The&lt;br&gt;    [B(&amp;quot;b&amp;quot;,2),Q_],#Sci-&lt;br&gt;    [B(&amp;quot;b&amp;quot;,2),Q_],#-ence&lt;br&gt;    [A(&amp;quot;&amp;quot;,2),C_],#Gets&lt;br&gt;    [G(),C_],    #Done&lt;br&gt;    [F(),Q_],    #And&lt;br&gt;    [G(),Q_],    #We&lt;br&gt;    [A(&amp;quot;&amp;quot;,2),Q_],#Make&lt;br&gt;    [A(&amp;quot;&amp;quot;,2),Q_],#A&lt;br&gt;    [G(),Q_],    #Ne-&lt;br&gt;    [F(),Q_],    #-at&lt;br&gt;    [F(),C_],    # Gun&lt;br&gt;    [D(),Q_],    # For&lt;br&gt;    [C(),Q_],    # The&lt;br&gt;    [D(),Q_],    # Peo-&lt;br&gt;    [F(),Q_],    # -Ple&lt;br&gt;    [F(),Q_],    #Who&lt;br&gt;    [E(),C_],    #Are&lt;br&gt;    [E(),Q_],    #Still&lt;br&gt;    [F(&amp;quot;#&amp;quot;),Q_], #A-&lt;br&gt;    [F(&amp;quot;#&amp;quot;),C_], #-live&lt;br&gt;        &lt;br&gt;    ]&lt;br&gt;&lt;br&gt;Speed = 2&lt;br&gt;&lt;br&gt;&lt;br&gt;if __name__ == &amp;quot;__main__&amp;quot;:&lt;br&gt;    StillAlive.Song = Song&lt;br&gt;    StillAlive.PlaySong(Speed)&lt;br&gt;</description>
      <link><![CDATA[https://steamcommunity.com/groups/pythoncoding/announcements/detail/90251156704881842]]></link>
      <pubDate>Sat, 05 Jun 2010 22:21:42 +0000</pubDate>
      <author>jsren</author>
      <guid isPermaLink="true">https://steamcommunity.com/groups/pythoncoding/announcements/detail/90251156704881842</guid>
    </item>
    <item>
      <title>What I get up to when I get bored...&quot;Still Alive&quot; done by winsound.Beep - Part 1, the base Module</title>
      <description>#       Still Alive Program                            #&lt;br&gt;#####################################&lt;br&gt;#Original Code (C) The Admin Jr                #&lt;br&gt;#Music (C) Jonathan Coulton                     #&lt;br&gt;#####################################&lt;br&gt;&lt;br&gt;##Python Setup##&lt;br&gt;from winsound import Beep&lt;br&gt;from time import sleep&lt;br&gt;&lt;br&gt;&lt;br&gt;has_song = False&lt;br&gt;has_lyrics = False&lt;br&gt;has_graphics = False&lt;br&gt;&lt;br&gt;if __name__ == &amp;quot;__main__&amp;quot;:&lt;br&gt;    title = raw_input(&amp;quot;Song Title: &amp;quot;)&lt;br&gt;    if title != &amp;quot;&amp;quot;:&lt;br&gt;        try: exec &amp;quot;import &amp;quot;+title; has_song = True&lt;br&gt;        except: print &amp;quot;Could not locate song: &amp;quot;+title&lt;br&gt;        try: exec &amp;quot;import &amp;quot;+title+&amp;quot;_lyrics&amp;quot;; has_lyrics = True&lt;br&gt;        except: pass&lt;br&gt;        try: &amp;quot;import &amp;quot;+title+&amp;quot;_graphics&amp;quot;; has_graphics = True&lt;br&gt;        except: pass&lt;br&gt;&lt;br&gt;#Note Constants:&lt;br&gt;&lt;br&gt;#Low Ab&lt;br&gt;l_Ab = 205&lt;br&gt;#Low A&lt;br&gt;l_A = 220&lt;br&gt;#Low Bb&lt;br&gt;l_Bb = 232&lt;br&gt;#Low B&lt;br&gt;l_B = 248&lt;br&gt;#Low C&lt;br&gt;l_C = 260&lt;br&gt;#Low C#&lt;br&gt;l_Cs = 275&lt;br&gt;#Low Db&lt;br&gt;l_Db = 275&lt;br&gt;#Low D&lt;br&gt;l_D = 290&lt;br&gt;#Low D#&lt;br&gt;l_Ds = 310&lt;br&gt;#Low Eb&lt;br&gt;l_Eb = 310&lt;br&gt;#Low E&lt;br&gt;l_E = 330&lt;br&gt;#Low F&lt;br&gt;l_F = 355&lt;br&gt;#Low F#&lt;br&gt;l_Fs = 370&lt;br&gt;#Low Gb&lt;br&gt;l_Gb = 370&lt;br&gt;#Low G&lt;br&gt;l_G = 390&lt;br&gt;#Low G#&lt;br&gt;l_Gs = 415&lt;br&gt;#Medium Ab&lt;br&gt;m_Ab = 415&lt;br&gt;#Medium A&lt;br&gt;m_A = 437&lt;br&gt;#Medium A#&lt;br&gt;m_As = 470&lt;br&gt;#Medium Bb&lt;br&gt;m_Bb = 470&lt;br&gt;#Medium B&lt;br&gt;m_B = 490&lt;br&gt;#Medium C&lt;br&gt;#Medium C#&lt;br&gt;#Medium Db&lt;br&gt;#Medium D&lt;br&gt;#Medium D#&lt;br&gt;#Medium Eb&lt;br&gt;#Medium E&lt;br&gt;m_E = 655&lt;br&gt;#Medium F&lt;br&gt;m_F = 715&lt;br&gt;#Medium F#&lt;br&gt;m_Fs = 750&lt;br&gt;#Medium G&lt;br&gt;m_G = 785&lt;br&gt;&lt;br&gt;#####Pauses#####&lt;br&gt;l_P = 0&lt;br&gt;&lt;br&gt;&lt;br&gt;##########Framework############&lt;br&gt;Octaves=(&amp;quot;l&amp;quot;,&amp;quot;m&amp;quot;,&amp;quot;h&amp;quot;)&lt;br&gt;Accidentals={&amp;quot;Sharp&amp;quot;:&amp;quot;s&amp;quot;,&amp;quot;Flat&amp;quot;:&amp;quot;b&amp;quot;,&amp;quot;S&amp;quot;:&amp;quot;s&amp;quot;,&amp;quot;F&amp;quot;:&amp;quot;b&amp;quot;,&amp;quot;B&amp;quot;:&amp;quot;b&amp;quot;,&amp;quot;s&amp;quot;:&amp;quot;s&amp;quot;,&amp;quot;f&amp;quot;:&amp;quot;b&amp;quot;,&amp;quot;b&amp;quot;:&amp;quot;b&amp;quot;,&amp;quot;#&amp;quot;:&amp;quot;s&amp;quot;,&amp;quot;&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;None&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;none&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;N&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;n&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;Natural&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;natural&amp;quot;:&amp;quot;&amp;quot;}&lt;br&gt;Song = []&lt;br&gt;&lt;br&gt;dBreve = 4.0/12&lt;br&gt;Breve = 4.0/8&lt;br&gt;dSemiBreve = 4.0/6&lt;br&gt;SemiBreve = 4.0/4&lt;br&gt;dMinim = 4.0/3&lt;br&gt;Minim = 4.0/2&lt;br&gt;dCrotchet = 4.0/1.5&lt;br&gt;Crotchet = 4.0/1&lt;br&gt;dQuaver = 4.0/0.75&lt;br&gt;Quaver = 4.0/0.5&lt;br&gt;dSemi = 4.0/0.375&lt;br&gt;Semi = 4.0/0.25&lt;br&gt;dDemi = 4.0/0.1875&lt;br&gt;Demi = 4.0/0.125&lt;br&gt;dHemi = 4.0/0.09375&lt;br&gt;Hemi = 4.0/0.0625&lt;br&gt;&lt;br&gt;dBr_ = dBreve&lt;br&gt;Br_ = Breve&lt;br&gt;dB_ = dSemiBreve&lt;br&gt;B_ = SemiBreve&lt;br&gt;dM_ = dMinim&lt;br&gt;M_ = Minim&lt;br&gt;dC_ = dCrotchet&lt;br&gt;C_ = Crotchet&lt;br&gt;dQ_ = dQuaver&lt;br&gt;Q_ = Quaver&lt;br&gt;dS_ = dSemi&lt;br&gt;S_ = Semi&lt;br&gt;dD_ = dDemi&lt;br&gt;D_ = Demi&lt;br&gt;dH_ = dHemi&lt;br&gt;H_ = Hemi&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;class AccidentalError(Exception):&lt;br&gt;    def __init__(self,note,accidental):&lt;br&gt;        self.Note = note; self.Accidental = accidental; self.Message = self.__str__()&lt;br&gt;    def __str__(self):&lt;br&gt;        return &amp;quot;None existant note: &lt;a class=&quot;bb_link&quot; href=&quot;https://steamcommunity.com/linkfilter/?u=http%3A%2F%2F%26quot%3B%2Bself.Note.Name%2B%26quot%3B&quot; target=&quot;_blank&quot; rel=&quot; noopener&quot; &gt;&amp;quot;+self.Note.Name+&amp;quot;&lt;/a&gt; &amp;quot;+self.Accidental&lt;br&gt;&lt;br&gt;class NoteError(Exception):&lt;br&gt;    def __init__(self,note):&lt;br&gt;        self.Note = note&lt;br&gt;    def __str__(self):&lt;br&gt;        return &amp;quot;Error in locating frequency for the note &lt;a class=&quot;bb_link&quot; href=&quot;https://steamcommunity.com/linkfilter/?u=http%3A%2F%2F%26quot%3B%2Bself.Note.Name&quot; target=&quot;_blank&quot; rel=&quot; noopener&quot; &gt;&amp;quot;+self.Note.Name&lt;/a&gt; + &amp;quot; &amp;quot; + self.Note.Accidental + &amp;quot;, octave &amp;quot;+ str(self.Note.Octave)&lt;br&gt;&lt;br&gt;class Note:&lt;br&gt;    def &lt;a class=&quot;bb_link&quot; href=&quot;https://steamcommunity.com/linkfilter/?u=http%3A%2F%2F__init__%28self%2Cname%2Coctave%2Caccidental%29&quot; target=&quot;_blank&quot; rel=&quot; noopener&quot; &gt;__init__(self,name,octave,accidental)&lt;/a&gt;:&lt;br&gt;        &lt;a class=&quot;bb_link&quot; href=&quot;https://steamcommunity.com/linkfilter/?u=http%3A%2F%2Fself.Name&quot; target=&quot;_blank&quot; rel=&quot; noopener&quot; &gt;self.Name&lt;/a&gt; = name&lt;br&gt;        self.Octave = octave&lt;br&gt;        self.Accidental = accidental&lt;br&gt;        try:&lt;br&gt;            exec &amp;quot;self.Frequency = &amp;quot; + Octaves[octave-1] + &amp;quot;_&amp;quot; + name + Accidentals[accidental]&lt;br&gt;        except:&lt;br&gt;            raise NoteError(self)&lt;br&gt;&lt;br&gt;def A(accidental=&amp;quot;n&amp;quot;,octave=1):&lt;br&gt;    return Note(&amp;quot;A&amp;quot;,octave,accidental)&lt;br&gt;def B(accidental=&amp;quot;n&amp;quot;,octave=1):&lt;br&gt;    return Note(&amp;quot;B&amp;quot;,octave,accidental)&lt;br&gt;def C(accidental=&amp;quot;n&amp;quot;,octave=1):&lt;br&gt;    return Note(&amp;quot;C&amp;quot;,octave,accidental)&lt;br&gt;def D(accidental=&amp;quot;n&amp;quot;,octave=1):&lt;br&gt;    return Note(&amp;quot;D&amp;quot;,octave,accidental)&lt;br&gt;def E(accidental=&amp;quot;n&amp;quot;,octave=1):&lt;br&gt;    return Note(&amp;quot;E&amp;quot;,octave,accidental)&lt;br&gt;def F(accidental=&amp;quot;n&amp;quot;,octave=1):&lt;br&gt;    return Note(&amp;quot;F&amp;quot;,octave,accidental)&lt;br&gt;def G(accidental=&amp;quot;n&amp;quot;,octave=1):&lt;br&gt;    return Note(&amp;quot;G&amp;quot;,octave,accidental)&lt;br&gt;def P(accidental=&amp;quot;n&amp;quot;,octave=1):&lt;br&gt;    return Note(&amp;quot;P&amp;quot;,1,&amp;quot;&amp;quot;)&lt;br&gt;&lt;br&gt;&lt;br&gt;def PlaySong(speed=1):&lt;br&gt;    for n in range(len(Song)):&lt;br&gt;        freq = Song[n][0].Frequency&lt;br&gt;        dur = (4000.0 / Song[n][1]) / speed&lt;br&gt;        #print &amp;quot;Freq: &amp;quot;+str(freq) + &amp;quot; Duration: &amp;quot;+ str(dur/1000) + &amp;quot; Seconds&amp;quot;&lt;br&gt;        if freq != 0:&lt;br&gt;            Beep(freq,dur)&lt;br&gt;        else:&lt;br&gt;            sleep(dur/1000)&lt;br&gt;&lt;br&gt;if has_song:&lt;br&gt;    exec &amp;quot;Song = &amp;quot;+title+&amp;quot;.Song&amp;quot;&lt;br&gt;    exec &amp;quot;PlaySong(&amp;quot;+title+&amp;quot;.Speed)&amp;quot;&lt;br&gt;</description>
      <link><![CDATA[https://steamcommunity.com/groups/pythoncoding/announcements/detail/90251156704636025]]></link>
      <pubDate>Sat, 05 Jun 2010 22:19:20 +0000</pubDate>
      <author>jsren</author>
      <guid isPermaLink="true">https://steamcommunity.com/groups/pythoncoding/announcements/detail/90251156704636025</guid>
    </item>
    <item>
      <title>New project! VPK tool.</title>
      <description>Hey guys, I had a nice idea for a program to make, a left 4 dead 2 tool for creating and editing the .vpk files, would be a kinda useful program for l4d2 campaign creators :)&lt;br&gt;If anyone wants to help, just pm me.&amp;quot;&lt;br&gt;&lt;br&gt;&lt;br&gt;By the way, invite coder friends to out steamgroup, so there would be more coders!&lt;br&gt;&lt;br&gt;Kind regards, Murder king.&lt;br&gt;&lt;br&gt;P.S.: I enabled the right  to make announcements for everybody, so you can post your projects on the steamgroup</description>
      <link><![CDATA[https://steamcommunity.com/groups/pythoncoding/announcements/detail/90248716689198791]]></link>
      <pubDate>Mon, 10 May 2010 19:19:42 +0000</pubDate>
      <author>phyce</author>
      <guid isPermaLink="true">https://steamcommunity.com/groups/pythoncoding/announcements/detail/90248716689198791</guid>
    </item>
  </channel>
</rss>