プロダクトに向かって「ゴミだ」って言って炎上させるのはいいけど
ダイオキシンのことも考えろよな。
2014年を迎えて(なお2013年は終わった模様)
あけましておめでとうございます。旧年はお世話になりました。今年もよろしくお願いします。(ここまでが台本です)
KOBA789の2013年まとめ
年のはじめからいろいろあったといえばあったのですが、どれも悪いことではなく、とても良いことのほうが多かったという印象です。振り返ってみると、ここ数年で1番平和で純粋に幸せな年でした。具体的には、ゲヒルンに Join したり、文化祭で無茶言いまくって暴れたり、筑波大に合格したりしました。
2014年とは
2013年の次の年で、2015年の前の年です。まぁ例によっていろいろあると思います。
2014年の目標
2013年がだいぶ平和だったので、2014年はおかしな年になって欲しいなぁという感じです。というわけでして、周囲の皆々様、心の準備をお願いします。
問題解決能力について
問題解決能力とは、筑波大学アドミッションセンターにおいてアドミッションセンター入試に合格するために必要な能力として説明されている能力のことである。この説明だけではわかりづらいため、この能力がどんな時に必要になり、役に立つのか、いくつかの例を用意した。
お借りした布団が5枚中3枚掛け布団、1枚が毛布で1枚がペラペラの何かで、問題解決能力によって寝床を形成する必要があった。感謝。
問題を解決しなければ友達の家で寝ることもままならない。
@yosida95 事故による遅延で終電逃したので迂回してタクシー召喚しようと思ったら、財布がない。
2013-10-30 00:10:04 via twicca to @yosida95
終電逃した時の帰り方、問題解決能力でしょ
終電を逃した場合、往々にして問題解決能力は必要となる。
このように、問題解決能力とは生きるために必要な力であると言える。「終電を逃さないように早めに帰宅しよう」というのは回避であって解決ではないと考えられるので、これに該当しない。つまり、問題解決能力を備えた人物は日頃から終電を逃していると結論づけられる。
また、問題解決能力が発揮されるのは終電を逃した時だけではない。私が筑波大学に願書を提出する際、最も難しかったのは期限であった。そこで、郵便局のシステムを調べ、どこなら遅くまで受け付けてくれるかを調べた。
本店に近いほどバッチの開始は遅いので新宿まで逃げれば締め切りが延びる #問題解決能力
こうして、8月5日必着の資料を8月4日の19:40頃に発送しても間に合わせることができたのである。問題が解決されていることが確認いただけると思う。
以上のような事例からわかるように、問題解決能力を備えた人間は終電に限らず日頃から「ギリギリ」の生活をしていることがわかる。つまり、自分をピンチに追い込むことでこそ、問題解決能力が発揮されるということである。土壇場で焦るのは悪いことであると考えられがちであるが、常に身を危機に晒しておくということは、問題解決能力を高めるために必要なことなのである。
Viewにロジックを書くな
View にロジックを書くな。
繰り返す。
View にロジックを書くな。
現場からは以上です。
@camelmasa さんから、誕生日に HHKB Pro2(墨)が届きました
KOBA789です。先日18歳になりました。
誕生日にアマゾンのほしい物リストを SNS に放流してました。そうしたら、@camelmasa さんからリプライが。
@KOBA789 こばくんに投資した。(wishlist的な意味で)
2013-08-09 11:05:20 via web to @KOBA789
@camelmasa マジすか! ありがとうございます!!!!
2013-08-09 11:07:24 via twicca to @camelmasa
@KOBA789 誕生日おめでとうございます :D
2013-08-09 11:08:18 via web to @KOBA789
そしてほしいものリストを確認する俺。HHKB Pro2 が消えている……!?
@camelmasa て、え、もしやものすごく高価なものを……なんか申し訳ないです。でも、ありがとうございます!!
2013-08-09 11:08:42 via twicca to @camelmasa
結構焦りました。
そして今日。
届きました! @camelmasa さん、ありがとうございます!
これで大学入試のための自己推薦資料を書こうと思います。また機会があればちゃんとお返しもしようと思います。何度も繰り返して恐縮ですが、@camelmasa さん、本当にありがとうございます!!
ATmega328Pを内部発振でArduino化して便利に使う
最近 AVR(ATmega328P)でいろいろ作ってたので、そのときに学んだことをまとめておきます。
ATmega328Pを内部発振で動かせば水晶発振子は必要はありませんし、Arduino化すれば、Arduino IDE やそのライブラリが使えるのでとっても便利です。
ひつようなもの
準備
1
ATmega328P を基盤なりブレッドボードなりに実装。ISP 端子も実装しましょう。んで電源を接続する。(後述する AVR ISPmkII は 5V を供給してくれない)
2
AVR ISP mkII を接続。このとき、USB から 5V 取れると便利。
3
avrdude コマンドでヒューズビットを書き込む。コマンドはこんな感じで。
avrdude -p m328p -c avrispmkII -b 115200 -P usb -U lfuse:w:0xE2:m -U hfuse:w:0xDA:m -U efuse:w:0x05:m
ここまでで、ハードウェアの方の準備はおわり。このあとはソフトウェア側の準備。
4
Arduino のプロファイル(?)を書き換える。Mac なら /Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/boards.txt を書き換える(他の OS は知らない)。以下の行を良い感じの場所に挿入。
############################################################## avr_int8.name=Arduino Internal 8MHz avr_int8.upload.protocol=arduino avr_int8.upload.maximum_size=32256 avr_int8.upload.speed=57600 avr_int8.bootloader.low_fuses=0xe2 avr_int8.bootloader.high_fuses=0xde avr_int8.bootloader.extended_fuses=0x05 avr_int8.bootloader.path=optiboot avr_int8.bootloader.file=optiboot_atmega328.hex avr_int8.bootloader.unlock_bits=0x3F avr_int8.bootloader.lock_bits=0x0F avr_int8.build.mcu=atmega328p avr_int8.build.f_cpu=8000000L avr_int8.build.core=arduino avr_int8.build.variant=int_8
5
ピンのマッピングを書き換える。内部発振にすることでクリスタル用のピンも I/O に使えるようになるので、使えるようにする。
/Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/variants/standard をコピーして /Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/variants/int_8 とし、その中にある pins_arduino.h を書き換える。132行目からをこんな感じに置き換える。
const uint8_t PROGMEM digital_pin_to_port_PGM[] = { PD, /* 0 */ PD, PD, PD, PD, PD, PD, PD, PB, /* 8 */ PB, PB, PB, PB, PB, PC, /* 14 */ PC, PC, PC, PC, PC, PB, /* 20 - PB6*/ PB, /* 21 - PB7*/ }; const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = { _BV(0), /* 0, port D */ _BV(1), _BV(2), _BV(3), _BV(4), _BV(5), _BV(6), _BV(7), _BV(0), /* 8, port B */ _BV(1), _BV(2), _BV(3), _BV(4), _BV(5), _BV(0), /* 14, port C */ _BV(1), _BV(2), _BV(3), _BV(4), _BV(5), _BV(6), /* 20 - PB6 */ _BV(7), /* 21 - PB7 */ };
これでデジタルピンに20と21が増えました。
プログラムを流し込む
あとはプログラムを流しこむだけです。適当に Blink とかを examples から開いて書き込みましょう。AVR ISP mkII を通して書き込むので、書き込みボタンを押すときは Shift を押しながらです。すると AVR ISP mkII を使って書き込めます。このように書込装置を使う場合、ブートローダは必要ありません。
まとめ
内部発振では動作速度は 8MHz となりますが、delay などが遅くなったりということはありません。boards.txt でクロックを指定しているので分周設定をうまいことやってるんだと思います。あと、内部発振は精度が悪いので通信とか厳しいかなと思ったのですが、I2C や 9600bps のシリアル通信は問題なく動きました。内部発振は CR 発振なので動作温度に依るところがありそうですが、常温だとひとまず平気っぽいです。
これで高いカネ払ってボード買わなくても Arduino の開発環境が使えますし、ライブラリも豊富なので、非常に便利ですね!