というサイトを友人がリリースしました。何はともあれ、自分で考えてつくったサービスを世に出す気持ちよさを理解する友人が増えたことに乾杯です。
彼はプログラミング歴は短いし本業ではないのですが、仕事のない休日にも嬉々としてプログラム書いちゃう人ならハッカーですよね。
ことの始まりは1年ぐらい前に、飲み会か何かの折に僕が「PHPは簡単だよー、3ヶ月あれば使えるようになる」とけしかけてその気になった彼にちょっと教えることになったのでした。ちなみにサンプル数の少ないアンケートによると、レゴブロックで小さい頃に遊んでいた人はプログラミングも好きになりやすいようです。
最初に出した課題は掛け算の九九表を出力せよ、です。81回printする不届き者もいますので10行で、が条件。結構難しい。PHPの場合、HTMLのtableで出力するのが簡単なので「24」の項を太字にする、を次の課題にすると必要な構文はだいたい使うことになります。今まで何人かに九九表を書いてもらいましたがそれなりにいい課題なのでは、と思ってます。
そんな感じでスタートしてからすでに1年経過していますが、リリースするのとしないのとではまさに0と1の差なので世に出せてよかったなぁ、と思います。これで人から評価される機会を得て、うまくいけば誰かが使ってくれてコメントを寄せてくれたりすればモチベーションが上がって発展していく、ステキなスパイラルに入ればしめたもの。
とまぁ、ちょうど5年前の今頃、PHPに初めて触れた日を思い出すのでした。ちゃんちゃん。

友人がハッカーになるまで:自分のサービスを世に出す快感
11 Comments
»
コメントはお気軽にどうぞ




>最初に出した課題は掛け算の九九表を出力せよ、です。81回printする不届き者もいますので10行で、が条件。結構難しい。PHPの場合、HTMLの tableで出力するのが簡単なので「24」の項を太字にする、を次の課題にすると必要な構文はだいたい使うことになります。今まで何人かに九九表を書いてもらいましたがそれなりにいい課題なのでは、と思ってます。
面白そうなのでちょこっとrubyで書いてみました。
20行も使っちゃいました…。
# 二次元配列→HTMLのテーブル
def darray2table(darray)
tmp = ['']
darray.each do |array|
tmp ‘
array.each {|val| tmp #{yield val}” }
tmp ‘
end
(tmp ‘).join(”\n”)
end
darray = []
(1..9).each do |i|
darray #{v}” : “#{v}” }
Comment by 氏久 — 2006年11月4日 @ 02:19
おっとっと、表示が崩れてしまいました。
ちょこっと置換して再投稿です。
# 二次元配列→HTMLのテーブル
def darray2table(darray)
tmp = ['gt;']
darray.each do |array|
tmp gt;’
array.each {|val| tmp gt;#{yield val}gt;” }
tmp gt;’
end
(tmp gt;’).join(”\n”)
end
darray = []
(1..9).each do |i|
darray gt;#{v}gt;” : “#{v}” }
Comment by 氏久 — 2006年11月4日 @ 02:22
おっとっと、表示が崩れてしまいました。
ちょこっと置換して再投稿です。
# 二次元配列→HTMLのテーブル
def darray2table(darray)
tmp = ['<table>']
darray.each do |array|
tmp << ‘<tr>’
array.each {|val| tmp << “<td>#{yield val}</td>” }
tmp << ‘</tr>’
end
(tmp << ‘</table>’).join(”\n”)
end
darray = []
(1..9).each do |i|
darray << (tmp = [])
(1..9).each do |j|
tmp << i * j
end
end
puts darray2table(darray) {|v| v == 24 ? “<strong>#{v}</strong>” : “#{v}” }
Comment by 氏久 — 2006年11月4日 @ 02:24
PHP歴数ヶ月の自分がやってみました・・・
どうでしょうか?
0 ; $a \n”) , $b = 1 ){
for( $b > 0 ; $b ” .$a .”×” .$b .”=” .$c .”\n” );
}
else{
print( “” .$a .”×” .$b .”=” .$c .”\n” );
}
}
}
?>
Comment by ませう — 2006年11月4日 @ 10:53
のおお。おかしなことに・・・(´・ω・`)スイマセン
Comment by ませう — 2006年11月4日 @ 10:54
コメント&コードありがとうございます。
Rubyはfor文を使わないでも自然に書けるんですね。
ませうさんのはHTMLが含まれていたから変になっているんでしょーか。コメント欄はコード書くのに向いてないです(^^;
Comment by funaki — 2006年11月4日 @ 11:19
コメント欄汚してすんませんデシタ(´・ω・`)
素直に鯖に上げました。添削お願いします・・・。
ソース
http://us-lab.com/99.php.txt
実行結果
http://us-lab.com/99.php
Comment by ませう — 2006年11月4日 @ 12:45
九九表、というのは
こんな感じの表のことですー。
Comment by funaki — 2006年11月4日 @ 22:33
PHP で九九の表を出力する…
最初に出した課題は掛け算の九九表を出力せよ、です。81回printする不届き者も……
Trackback by Blog.okuryu — 2006年11月5日 @ 03:00
<?php
echo(”<table border=\”1\”>\n”);
for($i=1;$i<=9;$i++)
{
echo(”<tr>”);
for($j=1;$j<=9;$j++){echo(”<td>”.($i*$j).”</td>”);}
echo(”</tr>\n”);
}
echo(”</table>\n”);
?>
Comment by めっち — 2007年5月8日 @ 16:50
こんなのは愚解ですかね…。
<?php
echo(”<table border=\”1\”>\n”);
for($i=1;$i<=9;$i++)
{
echo(”<tr>”);
for($j=1;$j<=9;$j++){if($i*$j==24) echo(”<td><strong>”.($i*$j).”</strong></td>”); else echo(”<td>”.($i*$j).”</td>”);}
echo(”</tr>\n”);
}
echo(”</table>\n”);
?>
Comment by めっち — 2007年5月8日 @ 16:55