読者です 読者をやめる 読者になる 読者になる

LM35DZが発熱した

Arduinoで温度センサのサンプルを動作させようとしたんだけど、正しい温度が計測できない。 何の気無しに素子を触ってみたら、熱くなりすぎてやけどしてしまった。 どうやらGNDとVS+を逆につなげたいたらしい。 正しい状態でやってみるも、常に0度が表示されるようになってしまい、壊れた。 一度上記の結線をすると壊れるようだ。 温度センサは1つしかないので悲しい。今度買いに行こう。

MacでArduinoをはじめた

Arduinoを購入したのでMacで動かしてみました

購入

買ったのは、サインスマートのUNO R3互換のボードです。 ブレッドボードやLEDなど基本的なパーツが揃ったセットになっているものです。

起動

今朝届いたので早速接続してみると、基盤のLEDが光りました! 動かすためのIDEArduinoのサイトからダウンロードしました。 HelloWorldをシリアル出力するサンプルコードを打ち込んで起動してみましたが、動かない。。 以下のエラーが出力されていました。

avrdude: ser_open(): can't open device "/dev/cu.usbmodem1411": No such file or directory
マイコンボードに書き込もうとしましたが、エラーが発生しました。
このページを参考にしてください。
http://www.arduino.cc/en/Guide/Troubleshooting#upload
対応

ネットで調べてみるとシリアルポートを選択する必要があるようです。 メニューのツール→シリアルポートから接続に使用するポートを選択して再度実行すると無事成功しました。 シリアルモニタを開いて Hello World!と出力することを確認できました。

H28 ネットワークスペシャリスト試験 合格しました

ブログの更新が三日坊主になっていました。

10月のネットワークスペシャリスト、合格していました!

ネットワークスペシャリスト受験してきました&解答速報まとめ

今日はネットワークスペシャリストを受験してきました。

私は午前Ⅰが免除になっているので、午前Ⅱが始まる10時30分頃に到着すればOKでした。試験会場が電車で1時間かかる場所だったので非常にありがたいです。 

 

さて、これから2ヶ月間は合格発表まで悶々とした日々を送ることになるのですが、資格の予備校が発表する解答速報を見てある程度合格/不合格を確認することができます。

 解答速報の確認

資格の学校TAC

リンク先に記載の公開予定日を目処に解答がPDFで掲載されます。

情報処理|解答速報| 資格の学校TAC[タック]

iTec

こちらもリンク先記載の公開予定日に公開されます。

情報処理試験の解答速報・自動採点サービス | 株式会社アイテック

 

時間があれば、私の解答も晒します!

 

【Bootstrap】ヘッダ固定時の地味に嫌な問題に対応する

Bootstrapでヘッダ固定した場合、navbarの高さ分bodyの開始位置を下げる必要があります。 ヘッダの高さが予めわかっている場合は、固定値でbodyに対してpaddingすれば対応できますが ウィンドウサイズ変更などでヘッダ内改行が発生する場合、bodyがヘッダに隠れてしまいます。

今回はその対応を備忘録として記載します。

・・・その前に、忙しい方のために結論ですが、javascriptで以下の処理を追加します。

$(window).on('load resize', function(){
    // navbarの高さを取得する
    var height = $('.navbar').height();
    // bodyのpaddingにnavbarの高さを設定する
    $('body').css('padding-top',height); 
});

前提

  • Boostrap3 v3.3.7
  • jQuery 1.1.11

現象の整理

問題を再現させるため以下のページを用意します。

<nav class="navbar navbar-default navbar-fixed-top">
  <div class="container-fluid">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="#">Brand</a>
    </div>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li>
        <li><a href="#">Link</a></li>
        <li><a href="#">Link</a></li>
        <li><a href="#">Link</a></li>
        <li><a href="#">Link</a></li>
        <li><a href="#">Action</a></li>
        <li><a href="#">Another action</a></li>
        <li><a href="#">Something else here</a></li>
        <li role="separator" class="divider"></li>
        <li><a href="#">Separated link</a></li>
        <li role="separator" class="divider"></li>
        <li><a href="#">One more separated link</a></li>
      </ul>
    </div><!-- /.navbar-collapse -->
  </div><!-- /.container-fluid -->
</nav>
<h1>あいうえおきかけこたちつてとあああああああああああああ</h1>
</body>

以下のような表示になります。

①ヘッダ内改行なし(横幅最大)

f:id:sawarasawara:20161015232532p:plain:w500

②ヘッダ内改行あり(横幅中くらい)

f:id:sawarasawara:20161015231511p:plain:w500

③ヘッダ内改行なし(横幅最小)

f:id:sawarasawara:20161015232655p:plain:w500

文字が隠れてしまっていますね。

一般的な対応

単純に、スタイルシートに以下の記載を追加して、bodyの開始をずらします。

body { padding-top: 70px; }

しかしこれでは「②ヘッダ内改行あり(横幅中くらい)」の場合に対応できません。 それを解決するのが次項になります。

高さの変化に対応

高さの変化に動的に対応するため、javascriptに以下の記載を追加します。

$(window).on('load resize', function(){
    // navbarの高さを取得する
    var height = $('.navbar').height();
    // bodyのpaddingにnavbarんぼ高さを設定する
    $('body').css('padding-top',height); 
});

これで、以下の通り全てのパターンに対応できました。 *1

f:id:sawarasawara:20161015233419p:plain:w500f:id:sawarasawara:20161015233425p:plain:w500f:id:sawarasawara:20161015233435p:plain:w500f:id:sawarasawara:20161015233444p:plain:w500

まとめ

以上、対応を記載しました。 もしどなたかのお役に立てれば幸いです。

読んでいただきまして、ありがとうございました!

*1:ページロードとウィンドウサイズ変更以外のトリガでヘッダの高さが変わる場合は、そのイベントにも同様の処理を追加する必要があります。

転職しました(1)

突然ですが、私は半年前に九州から東京へ転職しています。 九州では社員百数人程度のソフトハウスにいまして、SIerからシステム開発の依頼を請けて開発を行っていました。 現在は東京で大手コンサル会社に勤務しています。

九州から東京への転職は、面接のたびに会社を休まないといけないため、日程調整が難しかったです。 そんな私の転職活動を時系列を追ってお伝えしたいと思います。

転職を意識したきっかけ

転職を意識したのは社会人3年目の時でした。 きっかけは、3年目に要件定義から参加したプロジェクトで大失敗したことです。 それまで私は、詳細設計・実装・テストを主にやっていましてお客さんにヒアリングして要件を固めるような仕事は初めてでした。

結果として、

  • お客さんの言っていることが私に伝わっていない
  • 私の言っていることがお客さんに伝わっていない
  • ヒアリング項目の不足

などなど、全くうまくいかずスケジュールがずるずる伸びていきました。 上司と相談しながら最後はなんとか形にしましたが、痛い失敗体験として強く心に残りました。

その時から「一からシステムが作れないのに、システム作ってますって言っていいんだろうか?」という思いを持ちまして、もっとこういう経験を積みたい!と考えるようになりました。

ただ、地方の中小のソフトハウスのためこのような案件は滅多にありませんでした。 私は転職を考えるようになりました。

ぼんやりとした転職活動

私はまず「リクナビNEXT」や「DODA」といった検索型転職サイトに登録しました。 検索型転職サイトとは、自分にマッチした求人を利用者自身が探して応募するタイプのサイトです。 後述するエージェント型と正反対のタイプで、たくさんの求人から選べますが、自己分析をしっかりして自分でマッチングする必要があります。

登録して求人を探しまくりましたが、具体的にどうアクションすれば良いのかわからず、求人リストを眺める日々が続きました。

その後「CodeIQ」に登録して、問題をいくつか解いてみました。 CodeIQはサイト内で出題される問題を利用者が解答して、その解答を元に企業がスカウトするという方式です。 しばらくするとスカウトメールが結構な数来たのですが、どれも応募するというアクションを起こせませんでした。 アクションを起こせない理由は以下のようなことがあった気がします。

  • 企業からのメールが定型文チックで一斉送信ではないかという疑念が生まれた
  • そのためCodeIQで応募するアドバンテージが薄いと感じた(リクナビから普通に応募するのと変わらないのでは?)
  • 面接の日程は企業へ利用者が調整しないといけないため面倒

今回のまとめ

以上、いろいろと挙げてみましたが、結局転職のことをぼんやりと考えていただけで受け身だった私には合わなかっただけのようです。 自分から能動的に動ける人、関東にお住いで気軽に面接にいける方は、むしろ検索型やCodeIQが良い気がします。

長くなったので次回に回したいと思います。

ここまで読んでいただきまして、ありがとうございました。

            

明日のネットワークスペシャリスト試験、受験します

明日は秋のIPA試験の受験日です。 私はネットワークスペシャリストを受験しますが、今回は転職の時期と重なっていたこともあり、ほとんど勉強できていません。 去年も受験しましたが落ちてしまったので今回が2回めの受験です。

現在もっている資格は

の4つです。

私は主にWeb系の開発をしているプログラマーですが、データベースやセキュリティに比べてネットワークスペシャリストはハードルが高いですね。 データベースやセキュリティはソフト面でプログラムに直接関わってきますが、ネットワークはフレームワークやライブラリに隠蔽されている部分が多く、イメージがつきにくいです。

特にWeb系のプログラマーには「データベース」と「セキュリティ」がおすすめです。

申し込んで受験に行かないと5000円が無駄になってしまうので、明日行って爆死してきます^^;