株式会社シベスピ 従業員ブログ

シベスピの社員ブログ。技術・想い・経験沢山書いていきます!

未来を妄想する

お久しぶりです。黒田です。
特にエ○くないです。
※わからない単語はググってください。

麻雀編

沖本瞬(麻雀漫画『天牌』の主人公)は言いました。
「卓上に並べられた捨て牌のたった1個の切り順前後 それに対局者の息遣い1つでさえ打牌は変わってくるもんなんですよ」

麻雀中は未来を妄想することの連続です。
「対面の捨て牌が脂っこいな。そろそろリーチかかるかも。安全牌持っておこう。」
「俺がリーチしたら下家はベタ降りしそう。そうなるとアガリ確率相当下がるからダマにしとくか。」
「上家のソワソワ感ハンパない!国士テンパったっぽいからヤオチュウ牌はもう切るの止めよ。」

麻雀は自分や他家の動きに四人それぞれがどのように対応するかを妄想し、自分に最も期待値が高い選択は何なのかを考え実行することをひたすら繰り返すゲームなのです。

競馬編

競馬が馬の絶対能力だけで着順が決まるようなゲームなら恐らく誰もやらないでしょう。

「この馬は来月のG1勝つことが目標だから、今日の前哨戦は勝ちにこだわらないだろう」
「このメンバーならあのジョッキーが絶対逃げるだろう」

馬の能力や適性に加えて、オーナーの思惑(少しでも多くの賞金を得たい)や調教師の思惑(怪我せずに長く活躍してほしい)、騎手の腕や性格を加味し、レース展開を妄想した上で上位に来る馬を予想して馬券を買います。

仕事編

仕事中も未来を妄想することの連続だと考えています。

「この報告書を上司のAさんが見たら、○○のような指摘を受ける可能性があるな。その点を修正しよう。」
「この見積りをお客さんのBさんが見たら高いと言うかもしれないが、Cさんだとこんなもんだよねとなるかもしれない。先にCさんに見てもらおう。」

社内・社外問わず、プロジェクトの目的、関係者の立場や性格などから未来を妄想し、自分の目的を達成するために資料の中身を熟考したり、必要なコミュニケーション(報告、確認、質問、依頼など)を取ったりすることで、仕事の質を高めることに努めます。
仕事は特に理不尽なことが起きやすいので、そういったことから目を逸らさずに妄想することがとても重要と考えています。

最後に

自分だけでなく周りの人のことも含めて考えないと、未来を妄想することは難しいと思います。
シベスピでは未来妄想の練習をする機会が仕事以外の場でも溢れています。
さあ、他にないか!

自分の力はどんなもの?

久しぶりにブログを書かせてもらいます、鎌野です。

暑いですね。
この記事を書いているときは、ちょうど夏真っ盛りということもあり、
部屋ではクーラーをつけないと体がとろけそうです。
夏といえば、甲子園。
テレビをつけると高校野球が中継されており、これを見ると夏だなぁと
感じる人も多いと思います。
こんなことを思うとは、もういいおっさんですかね。

スポーツにおいて自分の実力を把握しておくことは非常に大切です。
自分の実力を把握することで、体力配分や戦略・駆け引きの判断材料と
なります。

仕事においても同じことが言えます。
自分の実力を把握することで、スケジュール調整や自分にできるかどうかなどの
判断材料となるからです。

自分の実力を把握するためには

自分の実力を把握するためには、どうすればよいでしょうか。
私の提案する方法としては、「時間を計る」です。

1つの頼まれた仕事に対して、まず自分ならどれくらいでできるか予測しましょう。
そこでの予測は、余裕を持たせた予測ではなく、ギリギリの時間で予測してください。
これは、自分の実力を計るだけなので余裕を持たせた予測は必要ありません。

次に頼まれた仕事をこなしてください。
ただし、時間を計っているからといって焦って仕事はしないでください。
いつも通りでお願いします。

仕事が終わったら、自分の予測した時間と実際に作業した時間でそれくらいの
開きがあるかを確認してください。

この方法では、下記のことがわかります。

  1. 頼まれた仕事の難易度と量であれば、自分ならどのくらいの時間でできるが把握できる。
  2. 自分が理想としている実力と現実の実力に差があるかが把握できる。

自分の作業スピードの把握

自分の作業スピードの把握をすることで、まずは自分なりの物差しとなります。
他の作業を振られたときに、その物差しを使ってどれくらいで完成できるかを予測することができます。

ただ感覚でどれくらい時間がかかるというよりも、時間を計った作業がこれくらいの時間だから
今回頼まれた作業はこれくらいかかりそうだ、と考えたほうが正確かつ理論的になります。

自分の理想と現実

1.予測した時間 > 作業時間
作業に対して、見積もりが甘くありませんか。
自分の実力が思った以上に高かったことはいいことです。
ですが、それに見合った見積もりができていません。
見積もる力をつけるようにしていきましよう。

2.予測した時間 = 作業時間
作業の時間配分や今の自分のことを把握できています。
他の違った作業の時も、どれくらいなのか計ってみるのもいいかもしれません。

3.予測した時間 < 作業時間
どうして遅くなってしまったか考えましょう。
原因があるはずです。
そもそも、最初の予測時間の見積もりが甘かったのか。
それとも、作業中に思った以上に時間がかかることがあったのか。
こうして原因を理解・分析することで、次につなげる工夫ができます。
このようにして仕事の質を高めていきましょう。

自分の振り返り

今回は私なりの一例を挙げさせてもらっただけで、
他にも自分の実力を計る方法はいくつもあると思います。

自分を知ることで、対策も立てることはできます。
自分を知っているからこそ、他のメンバーの凄さなどもわかるかもしれません。

これを機会に、今の自分の正確な実力を計ってみてはいかがでしょうか?
何か新しい発見があるかもしれません。
これを見ていただいている方の今後に生かせてもらえればうれしいです。

肘の痛み

こんにちは。北海道から東京に出てきて2度目の夏を迎えましたが、東京のうだるような暑さとクーラー冷えた室内の温度差で夏バテ気味の船場です。
さらに今年の夏は、夏バテの他に身体に異変が。。。
それはとある業務中にやってきた左肘の痛みです!
はじめはピリピリと痺れる感覚で、肘を長時間机についていたから腕が痺れたのかと思っていましたが、時間が経つにつれ徐々にズキズキと痛み出し、遂には机に左肘をつけられないほどの痛みに変わっていったため、応急処置で左肘の下にハンドタオルを敷き、その日は凌ぐことに。。。
左肘を机につけなければ痛みや違和感もなかったので、業務終了後は特に気にならず、明日になればまたいつも通り作業ができるだろうと思っていました。

次の日職場に着き、いつも通り業務を開始すると「思ってたとおり、肘痛くない!」と思いましたが、ものの30分程で左肘が痛み出してしまい、またハンドタオルを左肘の下に敷いて凌ぐことになってしまいました。。。

対策

帰宅後にネットで検索してみると、「肩こり」、「腰痛」、「肘の痛み」、「手首の痛み」等々パソコン仕事をされている方々の健康の悩みがヒット!
いろいろと調べてみると、どうやら私の左肘の痛みは、椅子の高さが合っていなかったことと、体からキーボードが離れすぎていたことが要因になっている可能性が高いことがわかりました。
椅子の高さは、肘を90度以上にして腕が机に乗るぐらい。キーボードは机に腕を乗せたときに自然に手が届く位置に配置されているのが良いという内容の記事が多かったため、実践してみました。

すると、肘への負担が減ったことが感じられました。1度肘の痛みを発症してしまったせいか多少痛む時はありますが、日が経つ連れ痛みの強さも弱まってきています。
今回の肘の痛みで、姿勢を正して作業することの大切さを感じました。

皆さんにも姿勢には気をつけて、健康を維持していきましょう。

【C#】YouAreAnIdiot【Windowsフォームアプリケーション入門】

御託

最近生まれて初めての胃腸炎をやりました。フラフラしながら吐いたのは大昔インフルエンザをやった時以来でしょうか。冷凍ささみのせいかと思いましたがそれなら食中毒だろという気もするので結局原因不明でした。

さて、このWindowsフォームアプリケーション入門では、毎回何かしらのアプリケーションを作りながらFormアプリケーションの作り方を学んでいくのが目的ですが、今回はFormの中でもよく使うけどちょっとややこしい動きをする「Timer」を使っていきます。懐かしのブラクラ「YouAreAnIdiot」モドキを作りながらやっていきましょう。

概要

Timer(System.Windows.Forms.Timer)は、一定時間ごとにイベントを繰り返し発生させるコンポーネントです。イベントにメソッドを割り付けることにより、一定時間ごとにメソッドを実行できるようになります。要は一定間隔で関数を繰り返し実行させることができます。

プログラム

おなじみプロジェクト作成後の画面になります。(デフォルトのウィンドウサイズが大きくなってましたがPCをWindows10にしたのが関係してるのでしょうか)


ウィンドウサイズを調整した後、「ツールボックス」から「Label」を選択してフォームに貼り付け、下記のプロパティを設定します。

プロパティ名 設定値 概要
Name lblFace 変数名になります。
AutoSize False ラベルのサイズを手動で調整可能にします。
BackColor White 背景色を白(#FFFFFF)にします。
Dock Fill ラベルをウィンドウ全体に引き伸ばします。
Font Wingdings, 128pt 絵文字用のフォントを使用します。
ForeColor Black 文字色を黒(#000000)にします。
Text JJJ 絵文字フォントの顔に相当する文字を指定します。
TextAlign MiddleCenter 文字を中央に表示します。


ツールボックス」から「Timer」を選択してフォームに貼り付けます。


デザイナの下部に「timer1」と表示されるので、下記のようにプロパティを設定します。

プロパティ名 設定値 概要
Enabled true タイマーの有効にします。
Interval 1000 タイマーを実行する間隔(ms)です。


デザイナの下部の「timer1」をダブルクリックするとコードエディタに移動し「timer1_Tick」関数が追記されるので、下記のようにコードを記載します。

private void timer1_Tick(object sender, EventArgs e)
{
    // メソッドを実行するたびに顔文字の色を反転させる
    if (lblFace.BackColor == Color.Black)
    {
        lblFace.BackColor = Color.White;
        lblFace.ForeColor = Color.Black;
    }
    else
    {
        lblFace.BackColor = Color.Black;
        lblFace.ForeColor = Color.White;
    }
}


実行すると次のような感じになります。

御託2

正直これだけだとTimerの利点があんまり見えないなと作ってから思いました。一定周期で最新の情報を取得したりするほうがよく使用されるでしょうか。いろいろ触ってみて便利な使い方を見つけて貰えば良いと思います。(丸投げ)
便利なTimerですが、実はこれに機能を盛り込みすぎるのも危険です。

Timerを使用する際の注意点

Windowsフォームアプリケーションは「イベントドリブン」、簡単に言うとボタンクリックなどのユーザー操作によって処理が行われる形式となっています。これによりイベント時(ボタンクリックなど)に実行される処理の時間が長いと、処理が終わるまでフォームがフリーズしてしまいます。
Timerもボタンクリックなどと同様にイベントを発生させ処理を実行しています。なのでTimerでも時間のかかる処理を行うと、その処理中はフォームがフリーズしてしまいます。

またTimerの動きは「処理が終わるたびに一定時間待機し、次の処理を実行する」のではなく、「一定間隔ごとにイベントを発生させる」です。つまりTimerで行っている処理が終わっているかどうかは関係なく、一定時間ごとにどんどん処理を実行します。これは「実行間隔 > 処理時間」の時は良いですが「実行間隔 < 処理時間」になると、処理が終了したあとすぐに次の処理が始まることとなり、フォームがフリーズし続けることになります。(スレッドを作成しているわけではないので、処理を実行中にまたその処理を実行するということにはなりません)
Timerに限った話ではないのですが、時間のかかる処理は別スレッドで実行(BackGroundWorkerやasync/await)するなど、フォームがフリーズしないように注意する必要があります。(マルチスレッド化は奥が深すぎるのでここでは触れません)

おわり

今回はTimer(System.Windows.Forms.Timer)を使用しました。便利さよりも厄介さがにじみ出る記事になっていますが、それだけドツボにはまりやすいコンポーネントということです。Windowsフォームアプリケーション初心者やプログラミング初心者は、スレッドやイベントの区別がついていなかったり、特に考えずコンポーネントを使用するのでなおさらです。
実はTimerにはいろいろな種類があり、それぞれメリットデメリットがあるのですが、それはFormアプリケーション入門以外の所でできればなと思います。

次回もFormでよく使うコンポーネントで何かしらを作っていきます。(つまり考えてない)

シベスピ新本社大公開!

7月17日に、シベスピ本社が移転となり、
あまりのおしゃれさに、ちょっとビビってます。
どうも内田です。

今回は、そんな新本社の紹介をしたいと思います!

場所

前本社は池袋西口でしたが、
新本社は池袋東口から徒歩7分
その名もいちご東池袋ビルです。

ビル名を聞いた瞬間、だいたいの社員が果物の苺を思い浮かべ、なんて可愛いところに。。と思うことが相次いだわけですが、いちごビルのいちごは一期一会の一期からとったとのことで、なぜかほっとしたのは記憶に新しいです。

いざ、いちごビル内へ!

エントランス。

シベスピは3階ですので、
エレベーターで3階までお越しください。


いざ、3階へ!

3階につくと、受付があります。

シベスピは3番です!

お迎えに上がりますので、少々お待ちください。

入り口を入りまっすぐ進むと

正面にラウンジ、左手にアイコスルームがあります。

ラウンジの名前はイチゴラウンジ!

ラウンジの中はこうなっています。

ラウンジを正面にして右手の廊下を進むと

3番の部屋がシベスピとなります。

入って右斜め前が会議室。右が執務室となります。

会議室はこうなっています。


そして執務室はこうなっています。
まずはロッカー!

ホワイトボード!

実際の作業場所はこうなっています

天井をみると葉っぱとライトが!
葉っぱはもっと茂るとか茂らないとか。

以上!新本社紹介でした!

【objective-c】iOSアプリ開発超初心者講座【Xcodeインストール編】

日本国内でのiPhone普及率をみて、「自分もアプリ作ってみたい」と思っている人は結構多いんじゃないかと考え、復習がてら簡単なアプリを作るとこまで書いていこうかと思います。
今回はiOSアプリを作る環境を整えるところまでやっていきたいと思います。

用意するもの

Mac(空き容量が6GB以上必要)
・コーヒー

導入手順

まずは、iOSアプリを作るための開発ツール「Xcode」をインストールしてもらいます。

「AppStore」を開いてもらい「Xcode」と検索

Xcode」(青いボードとトンカチのアイコンのやつ) を「入手」→「appをインストール」


appleのパスワードを入力し、コーヒーを飲みながらインストールを待ちます。

他のアプリ同様にLaunchpadにいますね。

インストール完了まではクソ長いですが、まったり待っててください。

インストールが完了したら「Appstore」の「入手」ボタンが「起動」ボタンに変わっているのでクリックして「Xcode」を起動します。

起動すると以下の規約画面が表示されると思うので「Agree」で同意します。

すると、Macのユーザー認証が求められるので、パスワードを入力し「OK」ボタンをクリックします。(多分2回求められます)

認証すると、必要な部品がインストールされますので、少々待ちます。

インストールが終了すれば、Xcodeの初期画面が表示されます。

これで「Xcode」のインストールは完了です。
すぐに「Xcode」を開きたい場合は、Dockに表示されたXcodeのアイコンを右クリックし、「オプション」→「Dockに追加」をクリックしてください。

次回からは簡単なアプリを作っていきたいと思います。
お疲れ様でした!!

夏バテ対策

ついに夏も本番。暑くなってきましたが、皆さんは夏バテしていませんか?
私は最近、だるさを体感しています。
暑い外と冷房の効いた室内の温度差で自律神経が乱れてだるさを感じるそうです。
食欲がない方は、冷たい飲み物の過剰摂取により消化器官の機能低下によるものです。
体のだるさや食欲がない状態になると、体力低下によりすぐには治りません。
そこで、日々対策をして夏を乗り切りましょう。
まず、クーラーや扇風機の使い方です。
室温約28度、湿度約55%を目安に、クーラーは2時間程度で切れるようにタイマーを設定し、扇風機は風が体に直接当たらないようにしましょう。温度の下げすぎは体のだるさだけでなく体温低下による血行不良・免疫力低下も生じますので、温度調節が大切です。
次に飲み物の摂取方法です。
喉が渇いてからだとガブガブと多量に飲んでしまいますので、喉が渇く前に定期的に飲むと過剰摂取を防止できます。
汗をかくと水分だけではなく塩分も失われるので、塩分の含まれた飲み物がお勧めです。
その他にも早朝や夕方の涼しい時間帯にウォーキングやランニングなどで軽く運動したり、栄養バランスの良い食事を心がけたりすることも効果的です。
夏バテになる前に対策を始めましょう。