TOEICのリスニングが聞き取れない理由の考察

TOEICの勉強しているんですがリスニングがまじで聞き取れないので自分なりにその理由を考察してみた

単語の発音が正確にわからない

これは単純な単語でも起こりうることである。自分が知っている限り多くの学生は単語の発音練習を疎かにする。特に学校で発音練習をする際、ネイティブの発音を真似することが恥ずかしくて、カタカナ英語の発音しかしない。そのため正確な発音がわからず、長文のリスニングなどでは何を喋っているのかわからなくなる。発音練習は大事である。

リンキングがうざい

英語文は前後の単語で発音が変わってきたりする。しかし日本人は前述のように単語すらしっかり発音練習をしていないため英文の練習もカタカナ英語である。そのため発音の変化が分からず聞き取れなくなってしまう。

単語の発音が切れる

気のせいかもしれないがたまに発音が切れるような気がする。日本語では全く聞かないが例えば「山田くんは宿題を忘れた」という文を喋るとき「山田くんは 宿題を 忘れた」と発音をしても、「山田くんは 宿題を わす れた」という単語の途中で発音を切らすような発音を通常しないが「scientific」という単語を「scien tific」と発音している英文を聞いたことがある。こんなことをされれば「scien」と「tific」というそれぞれの単語に聞き分けてしまう。

thatなどをしっかり発音しない

個人的に最大の戦犯だと思う。友人に聞いたのだがネイティブは「a」や「that」、「I」など一部の代名詞や冠詞を他の単語より発音を目立たせない傾向にあるらしい。確かに聞いていてそのようなことはある。これの何が問題かというと、一応発音はしているということ。しかし自分のような英語の初心者はそれがわからないので他の単語にその音がひっつきこれらの単語のあとの単語が違う単語に聞こえてくるのだ。もっとしっかり喋れ、コンプかけるぞ。

興奮するな

スピーカーが興奮しているか知らないけど日本人の会話に比べて非常に早口である。もっと落ち着けよ

以上

Xcode8とswift3でのibeacon(BLE)の使用方法

beaconの信号強度読み込んで表示するだけのApp作りたかったのだけどネットには中々良いサイトがなくて苦労したのでメモ
※この記事はSwiftとiBeaconを使ってお母さんが自分の部屋に近づいて来た事を警告するアプリをつくるさまのコードをXcode8のswift3でコピペで動かすようにする誰得修正記事である
まず上記のリンク中のgithubからサンプルソースをコピペするとXcodeが問題点を適当に吐き出す。まずはそれを全てFixすると最終的に
case .Authorized, .AuthorizedWhenInUse:

if(UIDevice.currentDevice().systemVersion.substringToIndex(1).toInt() >= 8){

self.uuid.text = beacon.proximityUUID.UUIDString の3つのエラーがでるはずだ。この3つのうち一番最初のエラーはこのauthorizedかなんかのライブラリが勝手に使用を変更したせいでエラーがでている。
case .authorizedAlways, .authorizedWhenInUse:こう書き直せば解決するはずである。
次のエラーはsubstringToIndexメソッド(?)に関するエラーだが調べたがよくわからない。しかし丁寧なコメントのお陰でこの条件分岐はiOSのバージョンを確認していることがわかる。
Xcode8で開発対象となる最低のiOSはiOS8なのでそもそもここの条件分岐は必要ない。よって全て消すことでエラーは消える。
そしてここで重要なのがiOS8で初期化を行っているself.manager.requestAlwaysAuthorization()という許可の部分をself.manager.requestWhenInUseAuthorization()と書き換えておくように(理由は後術)
最後のエラーはFixしていくうちにUUIDをuuidに変更してしまっているので、self.uuid.text = beacon.proximityUUID.uuidStringとすればよい。
ここでアプリをデバッグしてみるとラベルの初期値が記述されているだけでありおそらくビーコンを受信できていない。
Swift2でビーコン受信さまの記事を見るとInfo.plistNSLocationWhenInUseUsageDescriptionのキーが必要とあるがXcode8でのInfo.plistのキー一覧を見てみてもそのようなキーはない。
よく探すと分かるのだがこのキー、実はキーの名前が変わっているのである。直接前のキー名を打てばオートコレクトしてくれるので直接打ち込めばOK
これは位置情報を許可するキーらしくこれがないとビーコンの信号を受信できないので忘れず設定するように。また先程self.manager.requestWhenInUseAuthorization()と許可するメソッドを変えたがこのキーの対応メソッドはこいつなのでこいつに変更したのである。Alwaysのほうのキーもあるのでメソッドを変更したくなければキーをAlwaysのほうにすれば恐らく大丈夫だろう。
これでもデータを読み込まなければlocationManagerの引数とかの注意がでているやつをFixすればデータを拾うかもしれない
3日か4日くらい唸っていたけど冷静に対処すればすぐ解決する問題だったなと思いました。

thinkpadのタッチパッドの過剰反応について

X220のタッチパッドが過剰反応して勝手にクリックされる問題に悩まされいたが、ultra navのタップが有効になっていただけだったという話
(ultra nav入っていない人は公式からダウンロードしよう!)
普通に使っていたら勝手にクリックされてめちゃくちゃむかつくんだがこの機能を喜んで使っている人はいるのだろうか・・・

MIPSのジャンプ命令について(jr命令)

MIPSアセンブラを見なくてはならなかったので見ていたら疑問に思うことがあったのでそれをメモ
問題のソースは以下

int return_one(){
  return 1;
}

これをコンパイルして逆アセンブルすると

jr   ra
li   v0, 1

といった結果になった。(機械語などは省略)
コンパイルしたソースは見てわかるように呼び出されたら1を返すだけの関数である。
アセンブルの結果の方はjrがリターンアドレスに戻る命令、liが第一オペランドレジスタ)に第二オペランド(定数)を設定する命令である。
またこの場合v0レジスタというのは戻り値のことである。 これらを把握してからもう一度逆アセンブル結果を見てわかるように先にジャンプ命令が実行されている。
これでは関数の戻り値が設定できないのではと思ったがこれはMIPSの遅延分岐というものの影響であるらしい。
端的にいうと、ジャンプ命令はジャンプ命令の次の命令を実行してから実行するというものらしい。
パイプラインが影響しているらしいがそのへんは熱血アセンブラ入門に詳しく載っている。
こういうこともあるのだなあとまた一つ学びました。

参考:熱血!アセンブラ入門(著:坂井弘亮)

熱血! アセンブラ入門

熱血! アセンブラ入門

Tree of SaviorのDS2のキーコンフィグ

最近はToSばかりやってます。ToSの基本操作はアローキーとキーボードの左側だけど、アローキーで操作するのが非常に疲れるのでDS2でプレイしようとした。
しかしそのまま繋いだらキーがぐちゃぐちゃでわけがわからなかったのでToSのフォルダ内にあるゲームパッドの設定ファイルを直接いじってそれっぽくしたので一応公開しておく。
L1+R1のスキルセットは設定ファイルに書かれていなかったので狂ったままにした。
まあ多分QuickSlotらへんを追記すればいいんだけど特に問題はないので放っておく。

<Category>
    <HotKey ID="MoveUp" Name="위쪽 방향 이동" DownScp="None" UpScp="None" Key="JOY_UP" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="YES" Category="Battle"/>
    <HotKey ID="MoveDown" Name="아래쪽 방향 이동" DownScp="None" UpScp="None" Key="JOY_DOWN" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="YES" Category="Battle"/>
    <HotKey ID="MoveLeft" Name="왼쪽 방향 이동" DownScp="None" UpScp="None" Key="JOY_LEFT" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="YES" Category="Battle"/>
    <HotKey ID="MoveRight" Name="오른쪽 방향 이동" DownScp="None" UpScp="None" Key="JOY_RIGHT" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="YES" Category="Battle"/>
    <HotKey ID="QuickSlotExecute1" Name="퀵슬롯1" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(0)" UpScp="None" Key="JOY_BTN_3" PressedKey="JOY_BTN_5" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute2" Name="퀵슬롯2" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(1)" UpScp="None" Key="JOY_BTN_1" PressedKey="JOY_BTN_5" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute3" Name="퀵슬롯3" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(2)" UpScp="None" Key="JOY_BTN_4" PressedKey="JOY_BTN_5" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute4" Name="퀵슬롯4" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(3)" UpScp="None" Key="JOY_BTN_2" PressedKey="JOY_BTN_5" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute5" Name="퀵슬롯5" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(4)" UpScp="None" Key="JOY_BTN_3" PressedKey="JOY_BTN_6" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute6" Name="퀵슬롯6" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(5)" UpScp="None" Key="JOY_BTN_1" PressedKey="JOY_BTN_6" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute7" Name="퀵슬롯7" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(6)" UpScp="None" Key="JOY_BTN_4" PressedKey="JOY_BTN_6" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute8" Name="퀵슬롯8" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(7)" UpScp="None" Key="JOY_BTN_2" PressedKey="JOY_BTN_6" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute9" Name="퀵슬롯9" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(12)" UpScp="None" Key="JOY_BTN_3" PressedKey="JOY_BTN_7" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute14" Name="퀵슬롯14" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(13)" UpScp="None" Key="JOY_BTN_1" PressedKey="JOY_BTN_7" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute15" Name="퀵슬롯15" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(14)" UpScp="None" Key="JOY_BTN_4" PressedKey="JOY_BTN_7" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute16" Name="퀵슬롯16" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(15)" UpScp="None" Key="JOY_BTN_2" PressedKey="JOY_BTN_7" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute17" Name="퀵슬롯17" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(16)" UpScp="None" Key="JOY_BTN_3" PressedKey="JOY_BTN_8" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute18" Name="퀵슬롯18" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(17)" UpScp="None" Key="JOY_BTN_1" PressedKey="JOY_BTN_8" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute19" Name="퀵슬롯19" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(18)" UpScp="None" Key="JOY_BTN_4" PressedKey="JOY_BTN_8" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="QuickSlotExecute20" Name="퀵슬롯20" DownScp="JOYSTICK_QUICKSLOT_EXECUTE(19)" UpScp="None" Key="JOY_BTN_2" PressedKey="JOY_BTN_8" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="NormalAttack" Name="일반공격" DownScp="None" UpScp="None" Key="JOY_BTN_3" PressedKey="MustNone" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="Jump" Name="점프" DownScp="None" UpScp="None" Key="JOY_BTN_1" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="ToggleMouseMode" Name="마우스모드토글" DownScp="joystick.ToggleMouseMode()" UpScp="None" Key="JOY_BTN_10" PressedKey="JOY_BTN_6" Mode="Both" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="Map" Name="맵" DownScp="UI_TOGGLE_MAP()" UpScp="None" Key="JOY_BTN_9" PressedKey="JOY_BTN_5" Mode="Both" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="Select" Name="선택/스킵" DownScp="None" UpScp="None" Key="JOY_BTN_2" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="QuestItemUse" Name="퀘스트아이템 사용" DownScp="QUESTITEMUSE_EXECUTE()" UpScp="None" Key="JOY_BTN_10" PressedKey="JOY_BTN_5" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="MouseSpeedUP" Name="마우스속도증가" DownScp="joystick.MouseSpeedUp(5)" UpScp="joystick.MouseSpeedUp(-5)" Key="JOY_BTN_1" PressedKey="None" Mode="Mouse" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="Escape" Name="ESC버튼" DownScp="None" UpScp="None" Key="JOY_BTN_10" PressedKey="None" Mode="Both" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="QuickSlotSwap1" Name="퀵슬롯 변경" DownScp="JOYSTICK_QUICKSLOT_SWAP(1)" UpScp="None" Key="JOY_BTN_8" PressedKey="JOY_BTN_6" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="QuickSlotSwap2" Name="퀵슬롯 변경" DownScp="JOYSTICK_QUICKSLOT_SWAP(2)" UpScp="None" Key="JOY_BTN_6" PressedKey="JOY_BTN_8" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="WeaponSwap1" Name="무기 스왑" DownScp="WEAPONSWAP_SWAP_EQUIP()" UpScp="None" Key="JOY_BTN_11" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="TargetFixed" Name="타겟 고정" DownScp="None" UpScp="None" Key="JOY_BTN_12" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="TargetChange" Name="타겟 변경" DownScp="None" UpScp="None" Key="JOY_TARGET_CHANGE" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="WarpQuest" Name="되돌아가기" DownScp="SELECT_QUEST_WARP()" UpScp="None" Key="JOY_BTN_9" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="LHand" Name="보조 무기" DownScp="None" UpScp="None" Key="JOY_BTN_4" PressedKey="None" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="RideOn" Name="탈것 타기" DownScp="ON_RIDING_VEHICLE(1)" UpScp="None" Key="JOY_UP" PressedKey="JOY_L1L2" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="RideOff" Name="탈것 내리기" DownScp="ON_RIDING_VEHICLE(0)" UpScp="None" Key="JOY_DOWN" PressedKey="JOY_L1L2" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Basic"/>
    <HotKey ID="CrossUp" Name="십자키 위" DownScp="None" UpScp="None" Key="JOY_CROSS_UP" PressedKey="None" Mode="Mouse" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="CrossDown" Name="십자키 아래" DownScp="None" UpScp="None" Key="JOY_CROSS_DOWN" PressedKey="None" Mode="Mouse" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="CrossLeft" Name="십자키 왼쪽" DownScp="None" UpScp="None" Key="JOY_CROSS_LEFT" PressedKey="None" Mode="Mouse" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="CrossRight" Name="십자키 오른쪽" DownScp="None" UpScp="None" Key="JOY_CROSS_RIGHT" PressedKey="None" Mode="Mouse" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="ToggleRest" Name="앉기" DownScp="control.RestSit()" UpScp="None" Key="JOY_BTN_7" PressedKey="JOY_BTN_8" Mode="Key" UseAlt="NO" UseCtrl="NO" OnEdit="NO" Category="Battle"/>
    <HotKey ID="ChatType" Name="채팅변경" DownScp="ui.ProcessTabKey()" UpScp="None" Key="TAB" UseShift="NO" UseAlt="NO" UseCtrl="NO" OnEdit="YES" Category="System"/>
</Category>

もちろん自己責任で行ってください。ファイルはreleaseの中にあるhotkey_joystick.xmlです。
ちなみにDS2を繋いだ時のjoykeyの割当は

DS2 joykey
1
2
3
4
L1 5
L2 6
R1 7
R2 8
SELECT 9
START 10
L3 11
R3 12

だった。

追記

コンフィグしたのにL2を押してもR1のスキルセットが画面で光っているってことがあるかもしれないが、それはこの設定ファイルとは違うところで設定されているからだと思う。
もし確認の時にこのような現象が起こってもスキルが発動されるかどうかで確認してもらいたい。

逆アセンブルとかそのへんのめも

4-Dの復習してたとき一々教科書見ながら打ち込んでいたコマンドが2つばかしあったが全然覚えられないので(記憶力悪すぎゎら)メモ
任意セクションの逆アセンブル
objdump -d (-M intel) -j .<セクション> --no <ファイル名>

rp++でのGADGET探索
rp -f <ファイル名> -r <最大数> --unique

  • f:探索対象の指定
  • r:gadgetの最大命令数
  • unique:ダブりを非表示

ちゃんとリファレンス見たわけではないので間違ってたらすいません

2016年セキュリティキャンプ感想

実はキャンプ参加してました。感想というか殆ど反省ですが書きます。
解析ばっか受けました。

一日目

一日目は会場に着くとさっそく定例?の名刺交換を行っていた。とりあえず何人かと交換した。
次にチュートリアル的な話をして終わった。セキュリティベンダーのプロとか結構すごいらしい人がきてた。
最後にグループワークというものをした。4~5人のメンバーで一つの議題に絞って最終日に発表するというものである。
僕のグループはメンバーがいきなり頭よさそうなこと言い出したこととコミュ障と眠さが重なって終始沈黙しかできなかった。

二日目

専門講義が始まった。朝は5時50分くらいにおきて非常に眠かった。朝飯はバイキングなのでダルい。
最初の講義はマルウェアの解析の講義だった。逆アセンブルするソフトでいろんなバイナリを読んで、こういうふうに解析するんだよという基礎を教わった。
これは結構受けたくてとったのだが眠さがやばくて6割くらいしか話が聞けなかった。講師の方本当にすいません・・・
WinAPI全く触ったことが無くて解析がすごい難しいってことが分かった。(小学生並の感想)
次の講義は振る舞い検知に関する講義。アンチマルウェアに検知されるような無害なソフトを作れといわれた。5社のベンダーに検知させるのが手一杯だった。
UPXでパックすると必ずトレンドマイクロが検知してくるんだけど恨みでもあるのかと思った。セキュリティベンダーの仕事は大変なんだと思った。(小学生並の感想)
最後に旗取り合戦をした。わけが分からなかった。サービス問題一問だけ正解できたが自分の情けなさを感じた。

三日目

最初の講義はファジングの講義だった。講義に参加しているメンバーが好きな機材を選択してファジングを行ってた。ゲーム機にやってる人もいたが自分は携帯に対してファジングをしていた。
脆弱性とかは見つけられなかったが存在する機材を使用するということが面白かった。
次の講義は実行ファイルのASLRを突破するという講義。ランダム化されたアドレスをリークさせてシェルを起動させるというものだがわけが分からず泣きたくなった。
情けない自分にも丁寧に教えてくれた講師のれっくすさんの優しさに涙した。
また自分はC言語x86も何も理解していないという悲しさを学んだ。
最後の講義はROPチェーンを組み立てるものだった。一応事前課題では組めていて、その流れでチェーンを組んだらシェルが起動できず泣きたくなった。
夜は企業説明会みたいなのを聞いてた。ほーんってなった。
最後にグループワークだがまた何も出来なかった・・・・

四日目

専門講義最終日、最初の講義はリバエンの自動化するやつでシンボリック実効エンジンみたいなのを使って自動化しようとしたのだがそのエンジンの使い方も分からずPythonも分からず泣きたくなった。
最後の講義は遠隔マルウェアを作ったりするやつ。憧れの凌さんの講義で実際にマルウェアのようなものを作ったりシグネチャを作って検知したりして面白かった。あと凌さんがかっこよかった
また企業説明会があってほーんってなった。
グループワークは・・・・

五日目

グループワークの発表と閉会式をした。表彰されてたところはどこもとても面白い発表だった。YouTuberの発表は個人的に一番好き

キャンプを終えて

自分がキャンプで得られたことは自分の未熟さに対する悔しさだけである。解析の講義は泣きたくなることが多くて自分の未熟さを痛いというほど知った。
あとから教えてもらったのだが、解析の講義は他の講義より難しい傾向にあるらしい。確かに解析の講義は演習が多くて、予習をしっかりしていないと、分からないものが多くあった。
自分は検知と解析しか受けていないが、バイナリという人間では理解しずらいところを扱うため難しいのだと思う。
Pythonとかリファレンス見ながらやれば余裕っしょwとか思っていたけどそんなことでは講義にはついていけなかった。
もし来年のキャンプを受けようと思っていて解析を多く受けるつもりなら参加したもののアドバイスとして以下のスキルを身につけたほうがいいとおもう。

  1. C言語は普通に書ける。
  2. WinAPIが分かる。
  3. Pythonの様々な基本ライブラリを使いこなせる。
  4. x86が読める。
  5. LinuxWindowsを深く理解している。
  6. シェルが使える。

更に講義で使うツールなどは事前課題がなくてもつかるようにしておくことが大切である。これでようやく講義についていけるレベルになると思った。
また自分はTwitterのIDを公開しなったことやコミュ障が重なってまったく参加者との交流ができなかった。
それだけにあらずグループワークも全く参加できずにメンバーへ迷惑もかけてしまった。
もしメンバーの方が見ていたら本当にキャンプの日はすいませんでしたとこの場でお詫びします。
自分はこのようにこのキャンプでは悔しさしか得られなかったのでもし今後参加する方読んでいればキャンプに参加したときは知識や交流などを得られるように頑張ってください。