recon easy list writeup

*****recon easy list (Points <=100)

これはCTF Advent Calendar 2016 - Adventarの16日目の記事です.

*Ghost in the Shellcode 2014: one
Category: Recon Points: 1
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/ghost-in-the-shellcode-2014/one/README.md
Description:

What is the marking on the second train? https://www.youtube.com/watch?v=6lutNECOZFw

writeup
:https://www.youtube.com/watch?v=6lutNECOZFw
f:id:sakura818uuu:20161206100155p:plain
:flag

*CSAW QUALS 2015: trivia-2
Category: Trivia Points: 10 Solves: 963
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/csaw-ctf-2015/trivia/trivia-2/README.md
Description:

No More Free __!

writeup
:Google Search {"No More Free" security}
:keyword bugs
:flag

*CSAW QUALS 2015: trivia-3
Category: Trivia Points: 10 Solves: 1021
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/csaw-ctf-2015/trivia/trivia-3/README.md
Description:

This mode on x86 is generally referred to as ring -2.

writeup
:Google Search {mode "ring -2" x86}
:keyword SMM(System Management Mode)
:flag

*CSAW QUALS 2015: trivia-4
Category: Trivia Points: 10 Solves: 1083
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/csaw-ctf-2015/trivia/trivia-4/README.md
Description:

This vulnerability occurs when the incorrect timing/sequence of events may cause a bug.

writeup
:Google Search {"This vulnerability occurs when the incorrect timing/sequence of events may cause a bug."}
:Race condition - Wikipedia
:flag

*CSAW QUALS 2015: trivia-5
Category: Trivia Points: 10 Solves: 1016
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/csaw-ctf-2015/trivia/trivia-5/README.md
Description:

On Windows, loading a library and having it's code run in another process is called _ .

writeup
:Google Search {On Windows, loading a library and having it's code run in another process is called _ .}
:Dynamic-link library - Wikipedia
:Google Search {Dynamic-link library vuln}
:flag

*CSAW QUALS 2015: trivia-6
Category: Trivia Points: 10 Solves: 551
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/csaw-ctf-2015/trivia/trivia-6/README.md
Description:

This Pentesting expert supplied HBO's Silicon Valley with technical advice in season 2. The flag is his twitter handle.

writeup
:Google Search {HBO's Silicon Valley pentest}
:keyword Rob Fuller
:Google Search {Rob Fuller twitter}
:https://twitter.com/mubix
:flag

*CSAW CTF 2016 Quals: Eric_Zhi_Liang
Category: Recon Points: 10
https://github.com/ctfs/write-ups-2016/blob/b60d9fa809f3caa09dae2b8cad3b1435a33f13c4/csaw-ctf-2016-quals/recon/eric-zhi-liang-10/README.md
Description:

We tried very hard to find Eric last year. You're going to have to try just as hard this year, since not even his friends can find him.

We heard Eric has his own subreddit. Can you find Eric for us?

writeup
*Hatena Blog response Bad Request insert reddit URL link. reddit's URL Partial abbreviation.
:Google Search {Eric_Zhi_Liang subreddit}
:reddit.com/user/theRealEricLiang/
:reddit.com/r/creativecoding/comments/51fas9/has_anyone_worked_with_the_intel_edison/
:He participated Hackster Meetup in NYC
:Google Search {Hackster Meetup in NYC}
:https://www.meetup.com/ja-JP/Hackster-NYC/
:menber>member search Eric>Eric Liang>introduction "I love fanfiction and Allen Lau!"
:Google Search {fanfiction and Allen Lau}
:https://www.wattpad.com/user/allenlau
:Change URL username Eric>https://www.wattpad.com/user/ericZhiLiang
:flag

*That Sounds Delicious
Category: Trivia Points: 15
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/sCTF-2015/trivia/That%20Sounds%20Delicious/README.md
Description:

BLcvFJic
highlighting:none
expiration:never
exposure:unlisted

writeup
:Google Search {highlighting none exprination never exposure unlisted}
:keyword pastebin
:http://pastebin.com/ add BLcvFJic
:http://pastebin.com/BLcvFJic
:flag

*ASIS Cyber Security Contest Finals 2014: Fact or Real?
Category: Recon Points: 25
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/asis-ctf-finals-2014/fact-or-real/README.md
Description:

ASIS_md5(motto)

writeup
:Google Search {date;2014-01-01 - 2014-12-31} {asis fact or real"}
:https://twitter.com/factoreal/status/486459604973662208
:picture "NO+$=YES" & calculate MD5

$ echo -n "NO+$=YES" | md5sum
d25b9c2f1c29e49e81e8fdfaf4d16fc6  -

:ASIS_ add calculation result
:flag

*IceCTF-2016 : complacent-40
Category: Recon Points: 40
https://github.com/ctfs/write-ups-2016/blob/274307f43140bb4a52e0729ecf1282628fb22f5b/icectf-2016/recon/complacent-40/readme.md
Description:

These silly bankers have gotten pretty complacent with their self signed SSL certificate. I wonder if there's anything in there.

writeup
:server stop. I could not solve this problem.

*ABCTF 2016 : archive-me-50
Category: Recon Points: 50 Solves: 360
https://github.com/ctfs/write-ups-2016/blob/274307f43140bb4a52e0729ecf1282628fb22f5b/abctf-2016/recon/archive-me-50/README.md
Description:

If you could look at our website from a while ago im sure the flag would be there...

writeup
:our website = http://abctf.xyz
:Use Internet Archive: Wayback Machine
:ABCTF2016 Holding Time Fri, 15 July 2016, 18:23 UTC — Fri, 22 July 2016, 18:23 UTC.
:Internet Archive Wayback Machine Search {http://abctf.xyz}
:Link 10 May
:flag

*ABCTF 2016 : drive-home-50
Category: Recon Points: 50 Solves: 378
https://github.com/ctfs/write-ups-2016/tree/192b20d12c296b810265e4df978d98b8704f211e/abctf-2016/recon/drive-home-50
Description:

We found this link scribbled on a piece of paper: document/1_TxYCrk5vIMlUjiB1OioXmR7b-Uq_a9aPIh9JyYlPNs/edit?usp=sharing. It is broken but we need you to fix it!

writeup
:GoogleDocs URL add String
:https://docs.google.com/document/d/1_TxYCrk5vIMlUjiB1OioXmR7b-Uq_a9aPIh9JyYlPNs/edit
:flag

*ECTF 2014: Meet the Team
Category: Recon Points: 80
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/ectf-2014/meet-the-team/README.md
Description:

Find the URL of the organizing team’s blog.

Hint: Sorry! We didn’t have internet access to upload this clue :(

writeup
:Google Search {ctftime internet access}
:https://ctftime.org/team/8096
:Website http://nia-labs.github.io/
:flag

*ECTF 2014: Eight Cats Hid the Flag
Category: Recon Points: 100
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/ectf-2014/eight-cats-hid-the-flag/README.md
Description:

Find the flag.

Hint: Have you learnt a version control system before? Because one of our team members says he has.

writeup
:Google Search {version control system}
:keyword git
:Google Image Search {version control system cat}
:GitHub character Octo cat
:GitHub Search {No Internet Access} (Connect *ECTF 2014: Meet the Team ??)
:https://github.com/NIA-Labs
:https://github.com/orgs/NIA-Labs/people
:https://github.com/karthiksenthil
:https://github.com/karthiksenthil?tab=repositories
:https://github.com/karthiksenthil/Learn-Git
:https://github.com/karthiksenthil/Learn-Git/commits/master
:Page Search {flag}
:https://github.com/karthiksenthil/Learn-Git/commit/9cd4ecad6f7c545ef5ac31622d503de811191d7b
:flag

*Ghost in the Shellcode 2014: phpcrypto
Category: Recon Points: 100
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/ghost-in-the-shellcode-2014/phpcrypto/README.md
Description

GitS Presents PHPCrypto 0.000001(URL)

writeup
:server stop. I could not solve this problem.

*Ghost in the Shellcode 2014: CTF247
Category: Recon Points: 100
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/ghost-in-the-shellcode-2014/ctf247/README.md
Description:

CTF247 is awesome http://ctf247.2014.ghostintheshellcode.com/

writeup
:server stop. I could not solve this problem.

*RuCTF 2014 Quals: Recon 100 - Favourite book
https://github.com/ctfs/write-ups-2014/tree/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/ructf-2014-quals/recon-100
Description:

Have you ever met Olimpiada Balalaykina? She is a young girl who likes to chat and dreams to meet Pavel Durov. We'd like to know her favorite book.

writeup
:Google Search {Olimpiada Balalaykina}
:https://vk.com/olimpiada_balalaykina
:2 May 2014, articles with images, keyword favorite
:Google Image Search this picture
:https://booklovergifts.com/products/bag-mr-darcy-proposal-pride-prejudice
:flag

*Volga Quals CTF 2014: Recon 100
Category: Recon Points: 100
https://github.com/ctfs/write-ups-2014/tree/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/volga-quals-2014/recon/100
Description:

Good afternoon, recruit! Welcome to Privacy Department. We work closely with all megacorporations and try to help them to save trade secrets. And as you can see… we have a lot of work because some people can’t keep their mouth shut. Could you help to Department and find evidences against targets, that we’ll give to you? That's a bargain! Then here’s your first objective - Elton Badget. These man wants to disclose the name of secret project. Try to find the leak.

writeup
:Google Search {Elton Badget}
:https://ru.linkedin.com/in/elton-badget-0420aa93
:skills = Information Technology, Software Development, Debugging, SEO, Social Media Marketing, Firewalls, Logistics Management, Apache, Graphic Design, IT Management, Servers, Database Design, IT Outsourcing, Computer Security, Technical Writing, ISO, 0-in, Network Security, Analytics, Risk Assessment, Yoga
:firtst letter of word ISDSSFLAGISDICTI0NARY
:flag

*CSAW QUALS 2015: eric-liang-100
Category: Recon Points: 100 Solves: 55
https://github.com/ctfs/write-ups-2015/tree/9b3c290275718ff843c409842d738e6ef3e565fd/csaw-ctf-2015/recon/eric-liang-100
Description:

Eric played ctfs with some friends a while ago.

Hint: I remember playing with them around 2014... err maybe 2013?

Hint: flag is in flag{} format

Hint: The flag can be found on a .edu website

writeup
:Google Search {ctftime Eric Liang}
:https://ctftime.org/team/439
:4 edu link → nothing?
:I could not solve this problem.

*CSAW QUALS 2015: julian-cohen-100
Category: Recon Points: 100 Solves: 883
https://github.com/ctfs/write-ups-2015/tree/9b3c290275718ff843c409842d738e6ef3e565fd/csaw-ctf-2015/recon/julian-cohen-100
Description:

Julian Cohen

writeup
:Google Search {Julian Cohen}
:https://twitter.com/hockeyinjune
:Twitter Search {flag from:HockeyInJune}
:flag

*School CTF Winter 2015: Highly professional
Category: Joy Points: 100
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/school-ctf-winter-2015/joy/highly-professional-100/README.md
Description:

A big computer security company needs a highly qualified recon expert.

Think you're the one? If so you just have to find out a name of the company owner. The name is your interview pass.

Flag format: firstname_lastname, e.g. john_snow

Image(https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/school-ctf-winter-2015/joy/highly-professional-100/image_779ded31b8001fccf8d241461c97d4f9f36242fa.jpg)

writeup
:Google Image Search this picture
:keyword "Mr. Robot","All safe"
:Google Search {mr.robot allsafe}
:wikipedia[https://ja.wikipedia.org/wiki/MR.ROBOT/%E3%83%9F%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%BB%E3%83%AD%E3%83%9C%E3%83%83%E3%83%88]
:ギデオン・ゴダード is Allsafe CEO
:[https://en.wikipedia.org/wiki/Mr.
Robot_(TV_series)]
:Gideon Goddard
:flag

*ABCTF 2016 : always-so-itchy-100
Category: Recon Points: 100 Solves: 218
https://github.com/ctfs/write-ups-2016/blob/274307f43140bb4a52e0729ecf1282628fb22f5b/abctf-2016/recon/always-so-itchy-100/README.md
Description:

Dialga1234 - Johnny Boy

writeup
:Google Search {Dialga1234}
:https://scratch.mit.edu/users/dialga1234/
:https://scratch.mit.edu/projects/108998724/
:Blue Bottun watch inside
:flag

------------------------------I have not solved it yet.------------------------------
*Securinets Quals CTF 2015: Recon1
Category: Recon Points: 80 Solves:
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/securinets-ctf-2015/recon/recon1/README.md

*CSAW CTF 2014: Fuzyll
Category: Recon Points: 100
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/csaw-ctf-2014/fuzyll/README.md

*CSAW CTF 2014: Julian Cohen
Category: Recon Points: 100
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/csaw-ctf-2014/julian-cohen/README.md

*CSAW CTF 2014: Kevin Chung
Category: Recon Points: 100
https://github.com/ctfs/write-ups-2014/blob/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/csaw-ctf-2014/kevin-chung/README.md

*DEFKTHON CTF: Recon 100
https://github.com/ctfs/write-ups-2014/tree/b02bcbb2737907dd0aa39c5d4df1d1e270958f54/defkthon-ctf/recon-100

*CSAW QUALS 2015: alexander-taylor-100
Category: Recon Points: 100 Solves: 424
https://github.com/ctfs/write-ups-2015/tree/9b3c290275718ff843c409842d738e6ef3e565fd/csaw-ctf-2015/recon/alexander-taylor-100

*Haxdump CTF 2015: Amanda Parkside
Category: Recon Points: 100 Solves: 16
https://github.com/ctfs/write-ups-2015/blob/9b3c290275718ff843c409842d738e6ef3e565fd/haxdump-ctf-2015/recon/amanda-parkside/README.md

*UIU CTF 2015: incertia
Category: Recon Points: 100 Solves: 17
https://github.com/ctfs/write-ups-2015/tree/9b3c290275718ff843c409842d738e6ef3e565fd/uiuctf-2015/recon/incertia

シス管系女子 Advent Calendar 2016 15日目

これはシス管系女子 Advent Calendar 2016(http://www.adventar.org/calendars/1692 )の15日目の記事です.

シス管系女子 Advent Calendar 2016 8日目(http://sakura818uuu.hatenadiary.com/entry/2016/12/08/082917)の記事の続きです.
複行レコードのテキストファイルを電話帳のように並びかえてみるという内容です.

8日目にSTEP:1 複数行をひとまとまりとしてみる.
15日目は STEP2アルファベット順かつ年代順に整列させる
STEP3重複を削除する
をやる予定だったのですが結論をいうと解くことが出来ませんでした.

元データはここ(https://gist.github.com/sakura818uuu/f8895404e4bebf3faeb7a4e68f505130)です. 私の環境はUbuntu15.10,x86_64,bash4.3.42です.

作成途中のawkファイル(これは上手くいきません)
このファイルだと明らかに複数回出力してしまう文があったり並び順がちぐはぐなことになってしまいます. sort $1をする前にフィールド番号で配列?等の処理をしてuniqにしたほうがいいのか、もしくは各レコードの内容を比較してsort | uniqのような動作を施したほうがいいのか、考えれば考えるほどよくわからなくなりました.

#edit_recon_list.awk

#! /bin/awk -f

BEGIN { 
    FS="\n"
    RS="" 
    ORS="\n\n"
}

{    printf("%s\n", $1) 
     for (i=1; i<= NF; i++)
         printf("%s\n",$i)
}
sort $1 
    {for (i=2;i<=NF;i++) 
       printf("%s\n",$i)
}
uniq $1 

複行レコードを1行レコードに変換してからsort | uniqするのも手だと思ったのですが、今回は複行レコードで試してみたくその方法をとりませんでした.
参考文献で一番関連があり興味深い情報がのっていたのは
A.V.エイホ/B.W.カーニハン/P.J.ワインバーガー 足立高徳=訳 (1997).プログラミング言語AWK 株式会社トッパン
です.特にawkでの複行レコードでのデータ処理がのっておりとても参考になりました.
Google検索で"awk multiline record sort"や"awk 複行レコード (電話帳)"などの検索結果も(結果的には解けませんでしたが)すごくためになるものが多かったです.
sortのタイミングやフィールド番号を比較する方法はあっていたのか今はわかりません.
また今度挑戦してみます.

I need ngrok version2 Linux64-Bit!!

*My development environment is Ubuntu15.10 and x86_64.

I need ngrok version2 Linux64-Bit!!

Today, I downloaded ngrok and install Linux 64-Bit this page(https://ngrok.com/download). So, I ngrok version checked and I find ngrok version 1.6. But I neet ngrok version2!

I searched how to ngrok version up. Example, once remove ngrok and reinstall ngrok. Example, command "ngrok update". Example, I watched ngrok help command. But I could not solve this problem.

Do you know anything to solve?
I asked for advice on alan who is developing ngrok.

With alan's advice and a little search, I could solve this problem. There were two causes.

First cause, Alan said that "delete ngrok from your system before downloading the new version". I was planning to delete it just by putting it in the trash can. It was completely disappeared by command line($sudo apt-get remove ngrok-client).

Second cause, I downloaded ngrok by command line($sudo apt-get install ngrok-client) on terminal. Ubuntu15.05. Ubuntu seems to be able to download only up to version 1.6(https://www.howtoinstall.co/en/ubuntu/trusty/ngrok-client). Even if I erased it repeatedly, it was only version 1.6($sudo apt-get install ngrok-client & sudo apt-get remove ngrok-client). But manual downloading worked by this page(https://ngrok.com/download), I downloaded version2.1.18.

I was able to solve this problem. Thank you Alan!!!

さくら石狩DC見学&YAPC HOKKAIDO参加記

12月8日に函館から深夜バスで札幌に移動.いすが壊れててリクライニング出来ない, 2時間寝たら起きた.

12月9日午前5時30分に札幌駅到着. 5時30分に札幌駅についてもなにもない.
ネカフェに行って磯部磯兵衛物語を読む.

12月9日にさくらインターネットの石狩データセンターを見学. 麻布駅に集合前に初めて一風堂のラーメン零を食べる

麻布駅に集合後タクシーにのってデータセンターに向かいました.
タクシーでははてなの方と一緒で色んな話がきけて楽しかったです. また関西に行きたい.

データセンターに関する知識は『なれる!SE』で読んだぐらいしかなかったので初めて知ることがたくさんありました.
・石狩の冷気でサーバーを冷やす
・PUE(データセンターの電力使用効率を示す指標のこと.1.00が理想で私が石狩で見たときは1.10でした)
・黒いラックは手元が見えにくいから白いラックのほうがいい
・火災対策が厳重
・石狩だと周りに建物が少ないため騒音にあまり気を使わなくていい
などなど

データセンター見学は楽しかったです.
その後に行われたYAPC HOKKAIDO前夜祭は参加せず.

12月10日はYAPC HOKKAIDOに参加.
Togetterのまとめはここ(http://togetter.com/li/1057838).
一般チケットは3500円しますが学生ということなので無料(ありがたい).
受付をしただけでかわいいバッグ(バッグのメッセージhttps://www.sixapart.jp/pressroom/2016/12/yapc_hokkaido_content_everywhere.html)とかTシャツとかいただきました.

タイムテーブルはこんなかんじ(https://yapcjapan.org/2016hokkaido/timetable.html).

onagataniさんのオープニング(10min)を聞いた後に09:50-10:30に奥 一穂(kazuho)さんのHTTP/2の課題と将来についてを聞きました. Firefoxの優先度制御ツリーのお話が興味深かったです.
発表資料はここです(http://blog.kazuhooku.com/2016/12/http2yapc-hokkaido.html).
裏ではyoku0825さんのMySQL 5.7の次のMySQLは (20min) (発表資料 http://www.slideshare.net/yoku0825/mysql-57mysql )とpine613さんの近年の OSS 開発における CI 選択のベストプラクティス (20min) (発表資料 https://speakerdeck.com/pine613/jin-nian-false-oss-kai-fa-niokeru-ci-xuan-ze-falsebesutopurakuteisu)が行われてました.

10:40-11:20にcharsbarさんの2016年のPerl (Long Version) (40min) を聞きました. UnicodeやROASTのお話でした.ROASTって単語を初めて知りました.
発表資料はここです(http://www.slideshare.net/charsbar/2016perl-long-version).
裏ではpapixさんのAPIPerlで作る時に僕達が考えたこと (20min) (発表資料https://slas.la/papix/yapc2016hokkaido)とxaicronさんのiOS/AndroidアプリにおけるAPIサーバーのいろは (20min) (発表資料http://xaicron.github.io/slide/yapc-hokkaido-2016/)が行われてました.

11:30-11:50にtokuhiromさんのPerl6 と Web 開発と (20min) を聞きました. Perlにも互換性がないことが過去にあったのを初めて知りました. (この前AngularJSでアプリを書いてAngular2に書き直そうと思ったら互換性がなくて散りました.)
発表資料はここです( http://blog.64p.org/entry/2016/12/10/030313).
裏ではVickenty FesunovさんのWriting Perl extensions in Rust (English) (20min) (発表資料はおそらく https://github.com/vickenty/talk-perl-xs-rs )が行われてました.

11:50-12:10にDan KogaiさんのNumber Unlimited(20min)を聞きました. 発表資料はここです(どこ).
裏では谷内 元さんの2017年、飛躍する技術と共に命懸けのダイブ!「普段使い言語環境」更新によるスキルリセットサバイバルガイド (20min) が行われてました.(発表資料はここどこ).

12:20-13:00はランチセッション.
育児のお話が多かったりメモ帳の動画だったりHaskellTシャツ着てる人がいたり面白かったです. お弁当もすごく美味しかったです.

13:10-13:50は長野 雅広(kazeburo)さんのSite::Reliability::Engineering.
発表資料はここです(https://speakerdeck.com/kazeburo/site-reliability-engineering-yapc-hakkaido-2016-sapporo).
裏ではMasaki Nakagawaさんの10年モノ熟成Perlとの付き合い方 (20min) (発表資料 http://www.slideshare.net/masaki/10perl)とHiroki Honda (Cside)さんのAndApp RPGツクールMVの舞台裏とSPAの運用について (20min) (発表資料はここどこ)が行われてました.

14:00-14:50はTatsuro Hisamoriさんの今から始めるMicrosoft Azure - Dive into Azure (40min) .
発表資料はここです(どこ).
裏では照井 将士さんのクラウド環境におけるWebアプリケーションの正しい作り方(for Perl users) (40min) (発表資料 http://www.slideshare.net/marcyterui/webfor-perl-users)が行われてました.

14:50-15:50はAWSの荒木靖宏さん、さくらインターネットの田中邦裕さん、Microsoft Azureの久森達郎さん、Google Cloud Platformの福田潔さん、モデレータ技術評論社の馮富久さんのスペシャルセッション「今さら聞けない、でも聞きたい。クラウドの過去・現在・未来」 (60min) でした. YAPC HOKKAIDOに来た一番の目的はこのセッションを聞くことだったので聞けてよかった‥‥. GCPについてお話されたGoogle合同会社の福田潔さんは天候の都合で会場に来られずネット中継でした. お会いしたかった….
裏では高山裕司さんのCMSAPI の素敵な関係 (20min) (発表資料どこ)と千葉 誠さんのVue.jsによるWebアプリケーション開発 (20min) (発表資料 https://speakerdeck.com/hypermkt/vue-dot-jsniyoruwebapurikesiyonkai-fa)とkarupaneruraさんの頼りがいのあるORM「Aniki」徹底解説! (20min) さんの(発表資料 https://speakerdeck.com/karupanerura/lai-rigaifalsearuorm-aniki-che-di-jie-shuo )が行われてました.

16:00-16:20はmasayoshiさんのはてなのインフラ環境を自宅で再現する (20min) を聞きました. 立ち見がでるほど人気の回でした(私も立ち見で見ました). 技術の学び方についてとても参考になるお話で学びが多かったです.
発表資料はここです( https://speakerdeck.com/masayoshi/hatenafalseinhurahuan-jing-wozi-zhai-dezai-xian-suru).
裏では吉田昌平さんのモジュールメンテナンスを通して感じる最近の Perl (20min) (発表資料https://speakerdeck.com/syohex/yapc-hokkaido-2016)が行われてました.

16:20-16:40はYappoさんのLINE Bot on the Perl (20min) を聞きました. LINEビーコン当選しましたありがとうございます.

発表資料はここです(http://www.slideshare.net/kazuhiroosawa/line-bot-on-the-perl-yapchokkaido-ver).
裏では不破崇行さんのPHPエンジニアが初めてPerlでWebアプリを作った話 (20min) が行われてました(発表資料http://www.slideshare.net/takayukifuwa/yapchokkaido-phpperlweb).

16:50-17:30はTatsuhiko MiyagawaさんのCDNのお話でした.(TLをみるかぎりおそらく.私はLTを作っている真っ最中だったので……. Rebuild.fm聞いてますと心の中で念じてました.)
発表資料はここです(どこです).

17:30-17:40はスポンサーセッションでファームノートさんとダイアモンドヘッドさんの発表でした.

17:40-18:20はLightning Talksでした.
1. risouさん: Perl で書く、さまざまな Hello, world!
2. ar_tamaさん: エンジニアが挑むサービス設計(仮)(発表資料https://speakerdeck.com/ar_tama/enziniagatiao-musabisushe-ji
3. astjさん: Perl6 で Module をつくる(発表資料http://astj.hatenablog.com/entry/2016/12/11/230758)
4. sakura818uuu: シェルスクリプトと人生(発表資料https://docs.google.com/presentation/d/1uH7lKk-_E42bEezjUTOisPxmeC-vxfl0iGm_9S89488/edit?usp=sharing
5. 岩山 浩将さん: 若手エンジニアのUターン転職について
6. malaさん: 5分でわかる Perl & web security(発表資料https://gist.github.com/mala/9bf56420da8841945ba69361dd086878

18:20-18:30はnekokakさんのクロージング (10min) でした.
クロージングではベストLT賞やベストスピーカー賞などの発表, 次に開催されるYAPCの情報やYAPC HOKKAIDOがどのように行われたのかなどの発表がありました.
ベストスピーカー賞は@xaicronさんでした. おめでとうございます
次のYAPC情報は2017年3月4日に大阪で, 2017年7月1日に福岡で, 2018年には東京で開催されるそうです.

私はベストLT賞をいただくことができました. 本当にありがとうございます!!(色々失敗したけど本当にチャレンジしてよかったです…)
名前がま……(LT終わった直後に意識失ってて全然覚えてない あとで調べたらまかまかさんでした, ありがとうございます!)にベストLT賞選んでいただいてBluetoothのイヤホンをもらいました.イヤホン, 最高でも2000円ぐらいのしか買ったことないのでめちゃくちゃ嬉しいです. 高そう.

懇親会はBUDDY BUDDYで行われました.
懇親会のチケットも一般は3500円なのですが学生は無料でした.
YAPCは学生に優しい.
懇親会ではまずピーチフィズを貰ってアーどうしよ話しかけるのムズイヒー人がいっぱい人がいるヤーぼっちか……?と思ってつったっていたら優しい方が話しかけてくれました.
私の英語が拙いながらも会話してくれたビケンティー?(カタカナで聞き取ったので自信がない), 本当にありがとう.
その後にも色々な方が話してくれて貴重なお話がたくさん聞けました. ありがとうございます.

懇親会も含めてYAPC HOKKAIDOは本当に楽しかったです.
スタッフの皆さん, スピーカーの皆さん, 参加者の皆さん, スポンサーのみなさん, その他関係者のみなさん, 本当にありがとうございました.

シス管系女子 Advent Calendar 2016 8日目

これはシス管系女子 Advent Calendar 2016(http://www.adventar.org/calendars/1692 )の8日目の記事です。

私はOSC HOKKAIDO 2016に参加した時に『まんがでわかるLinux シス管系女子』を知りました。公立はこだて未来大学のライブラリーにも全2巻が所蔵されています。まんが形式で読みやすく、とても覚えやすかったです。

ここでは本編に触発されて書いたシェルスクリプト、"問題名が列挙されているのリストのtxtファイル(ファイル名:recon_list.txt)について説明します。

ファイルの中身は以下の画像のようになっており、

  • 1-2行目 ファイルの中身に関する説明
  • 3行目 空行
  • 4行目-最終行
    大会名 + 問題名
    カテゴリ+ ポイント(この行はない場合もあります)
    URL
    空行
    の繰り返しという構成になっています。

f:id:sakura818uuu:20161204215228p:plain

しかし、このファイルは問題名が重複しており、順番もばらばらです。 そこで、このファイルの問題名の重複を解消し、正しい順番に整列させるシェルスクリプトを作成することを目標にしました。

理想は以下の画像のように形式を崩さないまま複数行をひとつのまとまりとみて、大会名のアルファベット順かつ年代順に整列させることです。 f:id:sakura818uuu:20161205063515p:plain

本編p133を参考にまず全体の手順を考えます。
●複数行をひとまとまりとしてみる
●アルファベット順かつ年代順に整列させる
●重複を削除する
(※このファイルでソートせず重複行を削除(http://qiita.com/arcizan/items/9cf19cd982fa65f87546)する$awk '!a[$0]++' recon_list.txtを実行した場合、複数行をひとまりとしてみないためカテゴリ+ポイントの行の重複削除も実行されてしまい、理想の形になりません。)

STEP:1 複数行をひとまとまりとしてみる
ファイルの中身は複数行と空行の繰り返しになっています。そこでawkファイルを作成し、FS(フィールド区切り文字)を"\n"(改行)、RS(レコード区切り文字)を""(空行)と設定します。

#edit_recon_list.awk
BEGIN {
FS="\n"
RS=""
}

本当に複数行をひとまとまりにしてみれているのか確認するために先ほどのawkファイルに追記をします。NRは現在までに読み込んだレコード総数、NFは現在の入力レコードのフィールド数、print $0は現在のレコード全体を出力します。

#edit_recon_list.awk
BEGIN {
FS="\n"
RS="\n\n"
}
{
printf("*NR=%d NF=%d\n",NR,NF)
print $0
}

$ awk -f edit_recon_list.awk recon_list.txt と入力します。 これで複数行をひとまとまりとしてみれていること(複行レコード)が確認できました。

f:id:sakura818uuu:20161205095144p:plain

STEP2アルファベット順かつ年代順に整列させる
STEP3重複を削除する
は来週書きます

コンピュータ将棋 Advent Calendar 2016 7日目

2,3年前にコンピュータ将棋を知りました。ニコニコ動画で将棋電王戦を知り、将棋には全く詳しくなかったのですが、生放送や動画を見てるだけで楽しかったです。趣味として2012年、2013年の将棋電王戦に関連する動画はほとんど視聴した記憶があります。特に豊島七段の第三回電王戦第三局、トヨタ車で将棋をするやつが印象に残っています。コンピュータ将棋がきっかけで将棋を好きになりました。

 

2ヶ月くらい前にまた将棋のことを調べていた時に、どうぶつしょうぎを知りました。どうぶつしょうぎは12ますしかないミニマムな将棋です(コンピュータ将棋 Advent Calendarを読む方なら知ってる方も多いかも知れません)。駒の移動を覚える必要もなく、簡単に遊ぶことが出来ます。詳しい説明はwikipedia(どうぶつしょうぎ - Wikipedia)に掲載されています。

どうぶつしょうぎウォーズというアプリで2ヶ月間プレイして5級になることができました(最初は30級?だったはず)。これからも昇級して、いずれは将棋のほうにも挑戦したいと思っています。