やぎしんぶろぐ

C#er/プログラミング作法

AtCoder、(重い腰を上げて)始めました。

AtCoder登録はしてて、Beginnerの1問目も解いてたけど、それ以降何もしてなかった・・・。

 

コンテストに出ないとランク(色)が出ないので、これから解いていきたいと思う!

 

 

<悩み事>

ここで、ちょっと困っているというか、どうしようと思っているのが、解いてきた問題の管理。

自分は基本的にはJavaで解いていこうと思っているので、Eclipseで問題解いて行く感じだけど、その時終わったファイルをどこで管理しようかなと・・・。

 

AtCoder民はみんなどうやって管理してるんだろう・・・?GithubのGistとか?

この記事を読んだ方、ぜひ教えて欲しいです!

"大人の時間割"を作りました + α

こんばんは!日付をまたいでしまった・・・・。

 

今日、実は隣に座っていた自社の先輩が、常駐先にいらっしゃるのが最後の日でした。

(私は新人で最初に配属されてからずっと常駐先でお仕事させていただいています。)

で、その先輩に今日の朝にお誘いいただいて、業後に銀座で雲丹食べてきました・・・。最高でした。

最高だったのはそれだけじゃなくて・・・。

 

その先輩の話を少しだけ話します!

その先輩はお酒もたばこもしない、甘いもの好きの甘党イケメンパパなんです。

まぁつまりいわゆる、飲みにケーションタバコミュニケーションもできない人ってことなんですが・・・。

 

私自身お酒を飲みながら話をするのが好きなので、飲みにケーションとかはできるんですけど、そういう機会の前って甘党先輩みたいな方々を差し置いてしまっているところがあるんですよね。

で、今日改めてお話させてもらって感じたんですけど、そういう人達の意見(〇〇にケーション”できない”方)って話せる機会って少ないし、あっても上司とか近い人とかだけなんじゃないかなって。

 

私としては、そういう状況がよろしくないとか「じゃー甘党先輩が自分で発信すれば?」って意見も承知しているんですけど、そういうことじゃなくて、”普段コミュニケーションがとれない人といかにコミュニケーションをとれる環境にするか”ってのは会社もチームも大事だと思ったんです。

ただそれが、今はお酒やたばこが起因してそういう機会が多いってだけなんですよね。

 

わかってることなんですけど、甘党先輩とはパフェなりかき氷なり甘いものを食べてコミュニケーションとれる機会を作れってことなんですけど・・・。なので今日は甘党先輩に感謝しかないです。歩み寄ってくれたので。いろんな話をさせてもらったりお聞きしたりしたので、個人的に&一方的にですけど、とても有意義な時間だったんじゃないかなと思ってます。

 

12月、またお食事会しましょう!って約束したので、それまで話のネタ溜めときたいと思います・・・。いろいろと

 

 

さて、昨日のブログに書いた、時間割を作ってみました。(朝、ちょっと作っておいてよかった)

まぁ別に時間割の名前はどうでもいいんですが、適当に”大人の時間割”ってつけました。なんかダサいですね。

 

時間割

時間割

 

時間割を作ったら、”?”の部分が最低でも”何かに割ける時間”だ、と気づけました。

 

 

で、これの運用方法について。

  • Excelで作成したので、あとでちょっと修正することが可能なので、毎週土曜日に15分でもいいのでふりかえりの時間を設ける!
  • 「完璧にこなす!」っていう心づもりだと自分は続かない性格だと知っているので、「こういう枠組みを意識して過ごす」ってことを念頭におきたいと思います。(意識するっていうのはTryとしてはよろしくない感じではありますが・・・紙印刷して部屋に貼るか?)

 

明日から!やるぞ!!!!

 

やぎしん

”大人の時間割”ってやつを始めます。

皆さん、お久しぶりです。

やぎしんです。

 

最近、自分を変えたい、と漠然に思うものの、なかなか行動に移せていない現状です・・・。

 

ブログ自体も、

「そういえばブログかけてなかったなー。」

って前の記事にも書いたのにこれ書くの約2年ぶり・・・。

継続できない自分ってなんなんだろうと感じてます。

 

考えてみたんですが、まずは意識改革の第一歩として。

”予定を先に組んでしまう”ってことも習慣化へのアプローチの一つとしてあると思うので・・・

 

学校みたいに、時間割作る!!

 

というわけで1週間の”大人の時間割”を作ることにしました。

 

絶賛作成中です!

(いろいろ考えてたら整理できなくなったので作りながら考えてます。)

 

<時間割の目的>

日々の生活を一度ピースにしてみて、1週間にあてはめてみる

ここ最近の生活での”無駄な時間”を把握する

その”無駄な時間”を何かに使えないか検討できる状態にする

 

<期待する成果>

・自分の生活を可視化して、生活リズムを見直す(また、後で見直せるようにする)。

・勉強の時間&本を読む時間をきちんと確保できるようにする。

・プライベートに割ける時間も可視化することで、ONとOFFの切り替えを早くできるようにする。

 

<ルール>

・朝ドラとドラマを見る時間は一気に見れるように土日まで取っておく。

・飲み会の時間のバッファは週2日で(水・金・土)の曜日のいずれかとする。断固たる!!!!!!!!!!さっきも断ってきた!!!!!!!!!!めっちゃ行きたかったけど

・ゲームも好きなので週2日、友達と予定が合えばやる。毎週友達と予定を合わせることとする。

 

明日またブログで時間割公開したいと思います!

 

ブログも週1で更新出来るように・・・しなきゃ!!!!

それでは。

 

やぎしん

「エンジニアはこうなるな!」〜私、やぎしんが思う、エンジニアアンチパターン〜

※前置き:プログラマなので、開発フェーズで仕事するのが主です。運用はあんまり経験値ないです・・・※

 

社会人として現場で仕事をするようになってから2年とちょっと経ちました。

 

いろいろなことを学び、その中でも大事だと感じたことを、新人SE・プログラマにぜひ伝えておきたいなと思ったのでしたためてみます。

 

それは、

”<システムが実際の業務でどのように使用されるのか>を常に考えること”

です。

 

ここで言いたいのは、実装している画面や機能が

・具体的にどのように利用されるのか

・どのようにデータを作成・更新・削除していくのか

・関連するデータはどのデータに影響を及ぼすのか

を理解することが重要であり、それをチームメンバーやユーザーから聞き出すことはもっと重要ですよ!ってこと。

 

「そんなこと当たり前だろ・・・・」

でも実際に仕事をしているとそう簡単にはいかなかったり、実践できている現場って少ないのかなって感じています。だからこそ、これが実践できるエンジニアってこれからも重宝されていくのでは?って思うのです。

 

業務知識を考察・調査できない要因として例えば、

  • プロジェクト特有の言葉が使われていると、理解しようとしない人は”どこ修正したらいいか”を聞いて、そのまま実装に入ってしまう。
  • そもそも業務システムが複雑で、データがどのように扱われるのか理解するのが難しいときがある・・・(スケジュールがカツカツだと尚更)。
  • 開発者個人の考えで開発が進み、実際にそのシステムを使用するエンドユーザーが使いづらい仕様になってしまっている。

 

一番最後の、

”開発者個人の考えで・・・”

は結構現場で見てきましたね・・・・。

 

「これ、実装できないっすよー」

「どうやって実装するのかわからない」

「そんなの聞いてないよ!初耳!」

って具合です。

 

でも実際自分が作成したものをテストしているときに、

「この画面の操作の仕方って本当に操作しやすい?」

「このデータ動かせちゃうけど、結局反映されないんだ・・・じゃ画面上さわれなくすればよくない?」

「画面の更新のタイミング、これで使いづらくないか?」

とかの疑問(※1)を、チームで共有したり、ユーザーに質問できるかどうかは非常に大事だと思ってます。

 

そこで、私が思う、

エンジニアアンチパターン

ってのを表現してみました!笑

① 設計のディレクション時に言われなかったので実装しませんでした奴〜(指示待ち奴)

② 「なるはやで」「いい具合に」「なんとかして」って言われた時にちゃんとその内容を聞き出せない奴〜()

③ 「〇〇だと思った・・・」奴〜(結局設計や実装方針を理解できてなくて出戻り奴)

④ 説明できない奴〜(内容を理解できてないけど、実装したら動いた!でドヤ奴)

⑤ あいさつできない奴〜(チームと馴染もうとしない奴の典型的な例)

※完全に独断と偏見ですし、ちょっと言葉が悪かったら申し訳ありません・・・その時はコメントでご指摘ください※

 

総じて、マジで、

コミュニケーションをとることって大事なんだぜ!!!!

ってことなんですよ。

 

自分もそれができているのかは他の人にしか見えてなかったりするので、できているかどうかを評価してもらう!ってことを個人的に実践していきたいなーと思っています。

 

最後に・・・

大変失礼いたしました。

 

やぎしん

 

 

※1:私が疑問に思ったことを「そもそも疑問に思わなかった」って僕の後輩が言ってました。疑問に思わないとそもそも仕事ができないって感じるところに疑問を感じれなかったことが悪い、ってなると指導の方法がわからないんですよねー。

ここが今困っていることの一つです。

【2017/11/16 (Thu)】(IoT縛りの勉強会 IoTLT vol.33 @ LINE)に参加してきました!

お疲れ様です。やぎしんです。

IoT縛りの勉強会! IoTLT vol.33 @ LINE

に参加してきました!

 

私のIoT事情と言いますと・・・

大学生時代に研究室の先輩方が持ってらして少し興味が湧いたんです。で、

Raspberry Pi 2を買ってみて、

本も買って、

ちょこちょこといじって、

パソコンからsshでアクセスするところまではやってみたりしたんだけど・・・

 

 

俺はそれからあまりRaspberry Pi断念してます。笑

 

 

という具合の私だったんですが・・・

予ねてから気になっておりました、IoT LTに参加して、

あの頃の想い(IoT、やるぞ!的な笑)をもう一度取り戻すぞ!

と、一人意気込んでいた訳です。

 

<概要>

・いろーんな方が

・3分という短い発表時間の中で

・自分が作ってきた・携わってきたIoTに関する情報共有する

 

<登壇者のみなさん>

・学生さん(慶応ボーイ2年生)

・ビジネスに結びつけていきたい!って方

・実はNefry、私が作ったんです。って方

 ・Google Home とか Amazon Echoをもじって、ハックして、家族で使ってみたって方

・六本木のクラブではんだごてしましたって方

・ドローン飛ばすだけで終わってみた方。笑

etc....

 

 

発表する人も発表の仕方も多種多様で聞いていて勉強になることばかりでした。

 

 

みなさん良かったんですけど・・・

その中でも個人的に好きだった発表をピックアップしてみました。

 

<個人的に好きだった発表①(ますきーさん:「あなたのお家に眠るラズパイを救出したい」)>

・ 発表もすごく分かりやすかったし、資料もまとまっていて本当にラズパイ救出マニュアル的なものが作れそうだった。

・というか、ラズパイに関する知見が凄い。どうやって情報収集したのか、その術が知りたいって思った。

・めんどくさい無線LAN設定ができた状態でRaspbianが起動できるようにサポートしてくれるWebページを自作しちゃってるところがすごい。仕組みがわからない。そんなこと簡単にできるもんなの?

・年下だった。すげー。見習います。

 

<個人的に好きだった発表②(ヨシケンさん:「MeshBot Kitとその他色々」)>

・MESHを全て注ぎ込んだロボットを作成されているらしい。

・この人はSonyの人ではないらしいが、MESHをめっちゃ推してた。

・MESHを使った事例ってIoTが興味から外れていたのであんまり聞いたことなかったので、一気にUpdateされた感じがした。←内容が薄い。笑

・家族が絡んだ話やネタにとても弱い自分としては、最高の発表でした。動画で映っていた女の子は娘さん?だったのかな?お父さんが作ったシステムを使って楽しそうに動かしているところはとてもよかった。おうちハックで家族を巻き込めれるのってとても素敵ですね。

・MESHはまだまだ高いけど、これから安くなればいいねーって話とラズパイ用のMESH Kitを開発中らしい?ヨシケンさんは何者なのだろう・・・。

 

<個人的に好きだった発表③(村上@PCN北千住さん:「5秒でLチカ!簡単シンプルコーディングのIchigoJam(イチゴジャム)」)>

・IchigoJamってデバイスは知らなかったけど、本当に5秒でLチカしててすごかった。なんか意外とLED光らせるのって知ってるか知ってないかってだけでやってみたらそんなに難しくないのかも?

・発表内容自体はIchigoJamのデモが大半だったけど、地元で小学生向けの勉強会を開いてあげていて、息子さんもその勉強会でIchigoJamで自作したんですよーって話をしていて凄いって思いました。教えている人がいい指導をすると小さい子でも楽しく作業できるんですね!その話が微笑ましくて最高でした。

 

 

<感じたこと>

・無駄なことってないんだなって思った。

 →IoTって勉強して実践して運用するところまで考えていかなくちゃいけないって凄く難しく考えていたし、それやったところで得られるものって何があるんだろう?ってなんか無駄だって思うことこれまでいっぱいあったけど、発表している人たちでそれを感じる人は一人もいませんでした。みんな凄く楽しんでハックしているし、それを他の人に披露することを楽しく実践していて羨ましかった!

 

・アウトプットの仕方っていろいろあるなって思った。

 →発表の仕方も、話の仕方も人それぞれで、それぞれに良さがあるなーって思った。ドローンだけ飛ばすってのは斬新だなーって思ったけど(笑)、それもそれで伝えたいことが伝わってたらいいなって思った。

 

・IoT技術を勉強するとSIerの人間は得をするって思った。

 →IoTってそのデバイスに対して①何をさせたいか②どうやってそのデバイスと通信させるか③通信のためにどの技術が必要か④実装⑤テスト・・・ってやっていくと思うんですが、そのプロセスってなんかお仕事に似ているなーと。

あと、SIerの人間ってサーバー構築とかで仕事でやれって言われてやるのとちゃんと理解した上で実装するのでは全然違うなーと思うので、”モノ同士を通信させる”とかを実践して勉強するってのはアプローチとしてはいいのかなと思った。

 

 

やっぱり、無駄なことってないのかなー(優先度はあるけど)。

 

 

まぁとりあえず、ますきーさんに教えてもらったラズパイの救出方法をみて救ってみようと思ってます。

 

それでは、また!

Visual Studioでデバッグポイントが飛ぶ!??

今日、後輩ちゃんが、

 

デバッグについて聞きたいんですけど・・・」

 

ってすごいアバウトな質問をしてきた。笑

 

何事かと思って話を聞いてみると、どうやらVisual Studioを使ってデバッグしている途中で別スレッド?の処理が走ってしまっているみたいで、ステップインすると全然関係ない処理をデバッグし始める・・・という現象のようだった。

 

ん?これ、どうやって再現するんだ?ASP.NETだから、デバッグしてるページで別の処理を呼び出せばそうなる?って思ったけど、そもそも呼び出している処理って、並列に走ることがないように実装されているみたい・・・。

(A→B→C→Dって処理が流れるとしたら、AとCがこの現象の対象。で、普通並列に処理が行われるはずはない・・・?)

 

結局、俺もちょっとだけ調べてみてわからなかったし、そのあと再発することがなかったから特に気にせず今日は帰ってきたけど・・・

 

めっっっっっっっっっっちゃもやもやーーーーーーーーーーーー!笑

 

ASP.NETデバッグで同じような現象になったことある方、いれば教えて欲しいです。

 

後輩ちゃんを助けてあげることができなかったのが悔しい、と感じた1日でした。

 

ではでは。

 

(追記)

そんな私ですが、来週後輩ちゃんたちにSQLの勉強会を企画中でございます。(土曜日。笑)

まぁ、私もそんなにSQLを理解しているわけではないですが、ちょっとでも後輩ちゃんの役に立てればと思うし、自分もそれで成長できる!って思うので・・・

勉強会資料作ってみますかね。

なんか、ハンズオンじゃないけど、手を動かしてできればなーって思うんですが、何かいいSQLの練習法とかあれば誰か教えてくださーーい!

【ゆるぼ】”これから更新する○○”を英語で

とあるコードを書いてます。

 

そこで、

 

「これから○○カラムをこの値でDB更新したい」

 

という意味のメソッド引数を加えたいなと思っているんですが、

 

”update○○Value"

 

で伝わります?

 

"targetUpdate○○Value"

 

ってなんか長くないですか?

 

なんか、しっくり来ないなー。

 

○○の部分が結構長めだから、省略しようとも考えたけど、

省略しすぎて後で見たらなんのこっちゃ!ってなりそう・・・。

 

んー・・・。

 

こうやって、ロジックじゃなくて、

「変数やメソッド名をわかりやすくしよう」

としているときがなんか仕事してるなーって感じます。笑

 

なんかアイディアあればコメントお願いいたします!

 

--------------------------------------------------------

あっ、みなさんお久しぶりです。やぎしんです。

ちょいちょい日記みたいにしていければブログ続くかなあ?笑