旧・武蔵国豊島郡上板橋村字小竹。小竹村として独立した扱いをされることもあった。徳川秀忠の庶子保科正之の母お静の方は武州板橋在竹村の大工ともいわれる神尾栄加の娘とされているが、この竹村は小竹村のことと考えられている。1871年（明治4年）11月に浦和県（現埼玉県）から東京府に編入された。1932年（昭和7年）の板橋区成立時に小竹町となり、1947年（昭和22年）の練馬区成立時に江古田町（後の旭ヶ丘、現・旭丘）と共に移管された。1960年（昭和35年）、旭丘に一部を譲って地番整理を行い小竹町一丁目および二丁目となった。1987年（昭和62年）1月1日に住居表示を実施した。小竹町と旭丘の2地域が練馬区に移管されたのは、元々板橋警察署江古田駐在所の管轄だったことに起源がある。江古田駐在所が1937年（昭和12年）の練馬警察署設置時に移管され、1944年（昭和19年）に板橋区役所練馬支所が設置された際にその管轄範囲を警察に合わせた。そして練馬区の独立時にその範囲をそのまま引き継いだためである。
住宅地の地価は、2015年（平成27年）1月1日の公示地価によれば、小竹町2-14-2の地点で45万円/m²となっている。
練馬区の東部に位置する。北部を板橋区小茂根、南部を同区旭丘、東部を板橋区向原、西部を同区羽沢・栄町と接する。利用可能な鉄道駅は、西武池袋線の江古田駅北口と東京メトロ有楽町線、東京メトロ副都心線、西武有楽町線の小竹向原駅が利用できる。小竹向原駅は練馬区小竹町と板橋区向原にまたがっているが小竹町側の改札口出入り口にはほとんど店などはない。スーパーマーケット、ファミリーレストランなどがあるのは向原側である。そのため小竹町の繁華街（小竹通り、日大通り、音大通り商店街）はもっぱら江古田駅側のみになる。しかし、基本的に小竹町二丁目は第一種低層住居専用地域のため3階以上の建物が建てられなかったり、商業活動に規制が厳しいため、ほとんどが住宅地として利用されている。また、小竹町と隣接する旭丘に日本大学藝術学部や羽沢に武蔵野音楽大学などがあるため小竹向原駅や江古田駅北口などは通学経路として利用される。
天保15年（1844年）8月6日、下総国笹川（現在の千葉県香取郡東庄町笹川）の大利根河原で起きた大利根河原の決闘で飯岡助五郎との大利根河原の決闘に笹川繁蔵方の助っ人として参加し、ただ一人闘死した平手造酒を題材とした楽曲である。本楽曲が発売された1959年のテイチクの歌謡曲（流行歌）レコード売上で1位を記録した。NHK紅白歌合戦では、本楽曲が発売された当年は歌唱されなかったものの、紅白20回記念の「名曲紅白」として開催された1969年の「第20回NHK紅白歌合戦」で初めて歌唱され、その後も1973年の「第24回NHK紅白歌合戦」、1984年の「第35回NHK紅白歌合戦」の合計3回歌唱された。
int code = 0;int low = 0;int range = 1;void InitializeDecoder(){        AppendDigit();  // このサンプルコードでは、これらのうちの1つだけが実際に必要となる        AppendDigit();        AppendDigit();        AppendDigit();        AppendDigit();}void AppendDigit(){code = (code % 10000) * 10 + ReadNextDigit();low = (low % 10000) * 10;range *= 10;}void Decode(int start, int size, int total)  // 復号は EmitDigit が Encend と同じで、AppendDigit に置き換えられる{// シンボルの間隔に基づいて範囲を調整するrange /= total;low += start * range;range *= size;// 一番左の数字が範囲全体で同じかどうかを調べるwhile (low / 10000 == (low + range) / 10000)AppendDigit();// 範囲を再調整する - 以下の理由を参照if (range < 1000){AppendDigit();AppendDigit();range = 100000 - low;}}どの確率区間を適用するかを決定するために、復号器は区間 [low, low+range) 内の code の現在の値を調べ、これがどのシンボルを表すかを決定する必要がある
void Run(){int start = 0;int size;int total = 10;AppendDigit();                    // need to get range/total >0while (start < 8)                 // EOM受信時に停止する{int v = GetValue(total);  // 符号がどのシンボルの範囲にあるか?switch (v)                // 値をシンボルに変換する{case 0:case 1:case 2:case 3:case 4:case 5: start=0; size=6; Console.Write("A"); break;case 6:case 7: start=6; size=2; Console.Write("B"); break;default: start=8; size=2; Console.WriteLine("");}Decode(start, size, total);}}int GetValue(int total){        return (code - low) / (range / total);}上記の「AABA<EOM>」の例では、0から9の範囲の値が返される
値0から5はA、6と7はB、8と9は<EOM>を表す