YouTuberになりました

某氏からThrees!のプレイ動画に需要がある,とのありがたきお言葉を頂いたので, YouTuberになることにした. Channel: Tanaka World Channel Tanaka World とりあえずThrees!をメインにアップしていく. 自分の研究用にキャプチャしていたThrees!動画をメインにアップしていこうと思う. Threes!の現状・6144の壁 最高スコアは 265791 3072も割りと出せるようになってきたので,そろそろ6144が出せそうな気がしている. 「6144」を出したプレイヤーは,現在で388人いるようだ. 全ユーザーで200万人くらいのうち,僕は502位. 6144を出せばかなり順位が上がること間違いない. Threes! AI 最近,AlpherGoが世間を賑わせている. 便乗してAlpherThrees!なるものを作ってやろうと思っていたら,先にやられていた. threes-ai @_tanakaworld ゲームバランス崩壊の危機w — TakahiroPolyHorikawa (@thorikawa) March 26, 2016 このThrees!AIは,6144も出していてかなり高いスコアを出しているようだ. このAI対策をするためにソースコードを読むことによってPython, C, C++もキャッチアップすることができるという,絶好のタイミングである. ※ AIのソースは読むけど絶対に使わない Threes!AI vs TanakaWorld AIに勝てるようにガンバる フ( ゚д゚)乂(゚д゚ )...

YutaroTanaka.com デザインリニューアルしました

本ブログ 「For X Developers」 開設半年を記念して, ドメイン直下のデザインをリニューアルしました. - ** [YutaroTanaka.com](http://yutarotanaka.com/ "YutaroTanaka.com")**...

「プログラミング上達がはやいヤツの特徴10個」を9ヶ月間実践してわかったこと

@HIROCASTER さんの記事 プログラミング上達がはやいヤツの特徴10個 を騙されたと思って試し,9ヶ月経った今の気づきを書いておきます. ① 毎日コードを書く 始めた当初は楽しさがわからず,なかなか辛かったです. しかし入社した時に,5分でもとにかく「毎日」続けようと決めて,PCも常に持ち歩いて続けました. コードを書く 不明点が出て壁にぶつかる 調べる 解決 モノが動く 楽しい コードを書く ... 結論これです. 毎日続けると,様々なものがどんどん積み上がります. コードを書くスピード,品質が上がるのに伴って,コードを通して実現できることが増えます.そして,難しいことにも挑戦してみようと思うようになります. その結果,やっている内にどうしていいかわからないバグなどが発生し,一旦は壁にぶつかります.しかし,ネットで調べたり人に相談したりして解決できると,楽しくて,またさらに新しいことに取り組むようになります. 机の上の勉強も大事だけど,結局かかないと何も始まらないです. ② テストコードも書く 単体テストのコードを書くには,逆にテストできる適切な設計をする必要になります. TDDとかやるようになってからは,自ずと設計も整うようになりました. テストコード書くのは,ただコード書くことの倍,コストが掛かるので当初は面倒くさがって敬遠してました. しかし,サービスが大きくなってきたり,複数人で開発するようになると,テストが無い方が,後々コストがかかって面倒くさいです. リファクタリングしようとすると,莫大なエラーが発生して元にもどせない・コード修正して次の日になったらエラーでサービス落ちてるなど, コード量が増えれば増えるほど自分で監視できなくなって破綻します. 今はテスト書かれてないと不安で仕方が無いという心持ちです. ③ ソフトウェア全体を仕上げるまで書く 「Hello World」と出力するだけのアプリやサービスはあり得ません.クラス同士のデータやり取り,DBへのCRUD,HTTP通信など,必ず何かと何かが組み合わさって完成です. そういう意味で,正しいサービスをつくれるようになるには, 普段から全体を俯瞰するよう心掛ける必要がある考えています. ハードウェアやネットワーク,サーバの仕組みを始め,企画者が考えていることも理解しようとする. これを理解しているのと理解していないのとでは,プログラムをつくる際に,考慮できる範囲が全然違います. さらには,プロダクトオーナーの思いや,一緒のチームで開発するメンバのことまで. ④ コードを公開する Githubに公開しています. 公開するまでは,こんなしょぼいコード公開しても意味無い,とか考えて敬遠してました. しかしそもそも,コードを公開している人なんてたくさんいるので,余程のことがないとアクセスすらされないものだとわかってから,気にせず公開するようになりました. ただ,Webに公開することで人にみられる可能性は少なからずあると思うと,逆にもっと良いコードが書けるようになろうっていう自己啓発にもなります. 本格的な開発をするようになってからは,privateリポジトリも使うようになったので,上記のGithubで閲覧できるものは,現状,大したものは上がってないです. ⑤ ソフトウェアを動作する状態で公開する 上に同じです. ⑥ How to を見たら実践する ①で書いた通り,調べものしてると,いわゆるHow toはたくさん出てきます.何もわからない時は,とりあえず写経したり,関連することはその都度調べたりしてました. ⑦に続く↓ ⑦ How to にアレンジを入れる 続きです. そのうち,How toのプログラムの「ここの書き方美しくないとか」,「俺ならこう書く」といったアレンジができるようになってきます. それぞれの流儀があるので一概には言えませんが,Web上にあるHow toは全部正しいとは限りません. 正しくコードが書ける人も,人に見せるように簡略化して書いていたり,そもそも変な書き方してる人もいて,様々です. 結局最後は,自分自身で理解する必要があります. ⑧ 好きな言語がある 現状,本格的に触ったことがある言語は,Java, C#, JavaScript(言語?)です....

【C#の定数】const と static readonly の使い分け

C#で時々迷う定数定義,const と static readonly の使い分けに関するまとめ. ...

【Grunt + Karma + Jasmine】CoffeeScriptの開発環境を構築する

Grunt + CoffeeScript + Karma + Jasmine での開発をスタートして数ヶ月たった. ある程度ノウハウも溜まってきたので,メモしておく. CoffeeScript関連ライブラリをセットアップ $ npm init $ npm install $ npm install coffee-script --save-dev $ npm install grunt --save-dev $ npm install grunt-contrib-coffee --save-dev $ npm install grunt-contrib-concat --save-dev $ npm install grunt-contrib-uglify --save-dev $ npm install grunt-contrib-watch --save-dev プロダクトコード # src/hello.coffee hello = -> console.log("Hello world!!") # src/main.coffee hello() user = new User("Tanaka", 24) console.log(user.profile()) # src/user.coffee class User # static private param _uid = 987654321 # constructor constructor: (@NAME, @age) -> # public method profile: -> return @NAME + " : " + @age # private method _toAge = -> @age++ Gruntfile....