生成AIを活用したSaaSサービス提供企業

  • Company
    • Company
    • 会社概要
    • グループ会社
  • Service
  • Work
  • News
  • Recruit
  • Blog
  • Contact

ブログBlog

  • ALL

  • お知らせ

  • 技術/デザイン/制作

  • ベトナム

  • ごはん

  • 日常/プライベート

  • 白色ワセリン

    どうも小林です。
    ようやく最近冷え込んで来て冬らしくなってきましたが
    乾燥肌には厳しい季節になってきました。

    小林はかなりの乾燥肌なので保湿クリームは必需品です。
    保湿を怠るとシャワーでも痛く感じるくらい皮膚が乾燥してツライです。

    ちなみに小林が使ったクリームの中で一番保湿力が高かったのはママ&キッズの妊娠線予防クリーム。

    嫁の余ったやつを使ってたのですが凄い保湿力でした。

    ボディ用ですがもし機会があれば使用してみてください。これは本当に凄いです。

    顔とかハンドクリームは個人の趣味があるのでオススメというのは難しいですが
    ちょっとした保湿する場合は「白色ワセリン」がオススメ。

    こんなヤツ。

    添加物無し。

    小林家では一人一個所持するくらい利用してます。
    小林はささくれがよくできるので主に指先に使ってます。
    あとリップ替わりとか。

    薬局やドラッグストアで300円くらいで買えますのでお試しください。

    このエントリーをはてなブックマークに追加
    Share on Tumblr
    Tweet

    アバター投稿者 staff

    投稿日: 2012/10/302012/11/12

    カテゴリー 日常 / プライベート
  • ドラフト会議2012

    お疲れさまです。横井です。
    海の向こうではジャイアンツがワールドチャンピオンとなり、日本シリーズもジャイアンツが2連勝と調子が良いので、今年のプロ野球はジャイアンツイヤーになりそうな感じです。

    先日の25日にドラフト会議が開かれました。
    最近はスポーツ新聞を買ってチェックをしておりますが、陰ながら応援しております、中日もピッチャーで良い選手が取れたようですので、来年も楽しみです。

    今年は日本ハムが大谷選手を強行指名したことで盛り上がっておりますが、去年も菅野選手も強行指名して、結局取れなかった経緯がありますので、せっかくの1位指名枠を無駄に使っているようで、非常にもったいない感じもします。
    アメリカですと、選手のトレードで解決していた気もしますので、日本もトレードなどで、両方の球団にメリットがある解決策があればなーと思います。

    ではでは。

    このエントリーをはてなブックマークに追加
    Share on Tumblr
    Tweet

    アバター投稿者 staff

    投稿日: 2012/10/302024/04/26

    カテゴリー 日常 / プライベート
  • WebSocketでチャットアプリを作る(with Redis&Node.js) ~続き~

    どうも。営業部の伊藤です。

    先日のブログの続きです。
    Redisの準備が終わりましたので、次はWebSocketを利用するための環境を用意します。

    WebSocketを利用するため、今回はサーバー側のテクノロジーとしてNode.jsを利用する事になしました。
    Jettyなど他にも選択肢はあったのですが、参考文献が多いという理由でnodeにしました。

    では、nodeをインストールします。
    インストールには、nodeを導入するためのシェルスクリプトでインストールを簡略化してくれる「nave」(複数のバージョン管理も可能)やgit上にも様々なオープンソースがありますが、今回は複数バージョンを管理する必要もないため、普通にソースをダウンロードしてコンパイルする事にしました。
    バージョンはインストール当時(2012年9月頃)のstableだった0.8.6にしました。

    # cd /usr/local/src
    # wget http://nodejs.org/dist/v0.8.6/node-v0.8.6.tar.gz
    # tar xf node-v0.8.6.tar.gz
    # cd node-v0.8.6
    # ./configure
    # make install

    次にnode向けのパッケージマネージャであるnpm(Node Package Manager)をインストールします。
    npmで管理されているライブラリは以下URLをご覧ください。
    https://npmjs.org/
    nodeコマンドが利用できるかを確認後、以下を実行します。

    # node -v
    v0.8.6
    # curl http://npmjs.org/install.sh | sh

    対話モードを”yes”と答えていくとインストール完了です。
    これでnodeが利用できる状態であれば、npmコマンドも利用できるようになります。
    早速バージョンだけ確認してみます。

    # npm -v
    1.1.48

    次にパッケージをダウンロードするのですが、その前にnodeの動きを一度確認しておきます。
    王道のHello Worldを表示するため、nodeコンソールを開き以下スクリプトを実行します。

    # node
    > var http = require(“http”);
    > http.createServer(function(req, res){
    > res.writeHead(200, {“Content-Type”: “text/plain”});
    > res.end(“Hello World”);
    > }).listen(3000, “127.0.0.1”);

    ブラウザで上記URL(http://127.0.0.1:3000/)にアクセスすると、画面上に「Hello World」が表示されます。
    単純にテキストを表示するだけなのに、ヘッダーステータスコード200?、listen?
    普段はTomcatやApache(+CGI)といったコンテナ上でサーブレットやPHPでアプリケーションを構築する事が多いと思いますが、nodeの場合はアプリケーションだけでなく、上記サンプルのようにnode自体がコンテナとなります。
    その為、nodeで例外が発生するとサーバ機能ごとプロセスが終了してしまいますので、サーバ機能まで共倒れしないよう例外処理には気を付ける必要があります。
    ※nodeコンソール上で実行していますが、上記スクリプトをファイルに保存し(例えばtest.js)、nodeコマンドのパラメータとして実行する事も可能です。

    ではwebsocketを利用するため、幾つかのパッケージをnpmを利用してインストールします。

    1. Express
    Expressはnode用のWebフレームワークです。
    上述したようにnodeの場合はnode自身がコンテナの役割を果たす必要があるため、静的なファイルの配信についてもnode内で対応しなければなりません。この手間をWebアプリケーションフレームワークであるExpressを利用することで容易に解決できます。
    以下コマンドでパッケージをグローバルインストールします。
    ※グローバルインストールにしないとパスが通らないケースがあるため、以下コマンドでインストールすることをお勧めします。

    $ npm install -g express

    インストールディレクトリにあるapp.jsを実行します。

    $ node app.js

    http://127.0.0.1:3000/ にアクセスして「Welcome to Express」と表示されていればインストール完了です。

    2. Socket.IO
    Socket.IOは今回利用するWebSocketをブラウザの互換性を考慮せずに利用できる抽象化ライブラリです。
    WebSocketを利用できないブラウザではAjaxのロングポーリングを利用するなど、ブラウザ間の互換性を気にせずに開発が可能になります。
    以下コマンドでパッケージをインストールします。

    $ npm install socket.io

    これで一通りの準備が終わりましたので、次はスクリプトを用意します。
    publicディレクトリ内に移動し、chat.htmlファイルを作成します。

    <head>
    <script src=”/socket.io/socket.io.js”></script>
    <script src=”/javascripts/chat.js”></script>
    </head>
    <body>
    <input type=”text” id=”comment” placeholder=”入力してください” value=”” size=20 ></input>
    <button onclick=javascript:send() >送信</button>
    <p id=”list”></p>
    </body>

    次に、javascriptディレクトリに以下ファイル(chat.js)を作成します。
    クライアントサイドのJavaScriptです。

    var postList;
    window.onload=function(){
    postList = document.getElementById(“list”);
    }var listleft = function(){
    postList.innerHTML+=”<div align=’left’><img src=’/images/left.gif’>”+arguments[0]+”</div>”;
    }var listright = function(){
    postList.innerHTML+=”<div align=’right’>”+arguments[0]+”<img src=’/images/right.gif’></div>”;
    }

    var socket = io.connect(“http://127.0.0.1”, {port:3000});
    socket.on(“connect”, function() {
    listleft(“接続開始”); //接続した当人にだけ表示
    socket.emit(“msg send”, “皆さん宜しくお願いします。”);

    // 自分のコメントを表示
    socket.on(“msg mycommnet”, function(commnet){
    listleft(commnet);
    });

    // 他人のコメントを表示
    socket.on(“msg elsecommnet”, function(commnet){
    listright(commnet);
    });

    socket.on(“disconnect”, function(){
    listleft(“接続が切れました。”);
    });
    });

    function send(){
    var comment = document.getElementById(“comment”).value;
    socket.emit(“commnet send”, comment);
    }

    自分が投稿した内容は左側に表示し、自分以外の投稿は右側に表示するようにします。
    最後に先ほど動作確認したapp.jsの下段にsocketインスタンス作成処理を追記します。

    var express = require(“express”);
    var app = module.exports = express.createServer();app.configure(function(){
    app.set(“views”, __dirname + “/views”);
    app.set(“view engine”, “ejs”);
    app.use(express.bodyParser());
    app.use(express.methodOverride());
    app.use(express.cookieParser());
    app.use(express.session({ secret: “your secret here” }));
    app.use(app.router);
    app.use(express.static(__dirname + “/public”));
    });app.configure(“development”, function(){
    app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
    });

    app.configure(“production”, function(){
    app.use(express.errorHandler());
    });

    app.get(“/”, function(req, res){
    res.render(“index”, {
    title: “Express”
    });
    });

    app.listen(3000);
    console.log(“Express server listening on port %d in %s mode”, app.address().port, app.settings.env);

    //socketインスタンスを作成
    var io = require(“socket.io”).listen(app);
    io.sockets.on(“connection”, function(socket){
    socket.on(“commnet send”, function (commnet) {
    socket.emit(“msg mycommnet””, commnet); //自分自身に通知
    socket.broadcast.emit(“msg elsecommnet”, commnet); //自分以外で同一ソケットとハンドシェイク中の人にキャスト
    });
    socket.on(“disconnect”, function() {
    log(接続が切れました。”);
    });
    });

    スクリプトの準備が整いましたので、再度サーバーを起動します。

    $ node app.js

    その後、publicディレクトリ内に新規作成したchat.htmlにアクセスします。
    http://127.0.0.1:3000/chat.html

    まず始めに、アイコンがダサ過ぎる点については無視してください。。。
    クライアント側からハンドシェイク要求を送信し、サーバー側からハンドシェイクの応答があれば自身のブラウザだけに「接続開始」というメッセージが表示されます。
    その後、既に同一ソケットにアクセス中のユーザーに接続が確立した旨を伝えるため、「皆さん宜しくお願いします。」とうメッセージを発信(emit)します。
    上記画像の場合、左側のブラウザが先にアクセスしたブラウザで、右側のブラウザが後にアクセスしたブラウザです。
    右側のブラウザで接続後にコメントを送信すると、リアルアイムに左側のブラウザに投稿内容が反映されました。いい感じ♪
    例外処理、DBを利用した機能(過去データ取得など)などは未実装の状態ですが、一旦これでチャットWebアプリの基盤はできました。
    次はRedisを利用した過去データ取得、Publish/Subscribe型(Pub/Sub型)とnodeを連携した冗長化を進めていきます。
    こちらについては進展があればまたブログに投稿させていただきます。

    それでは。

    このエントリーをはてなブックマークに追加
    Share on Tumblr
    Tweet

    伊藤 康平投稿者 伊藤 康平

    投稿日: 2012/10/292012/11/13

    カテゴリー 技術 / デザイン / 制作
  • CS6でCreateJS

    こんにちは守谷です。

    遅ばせながらFlash CS6の拡張機能である「Toolkit for CreateJS」を試してみました。

    CS6でCreateJSのテスト
    ※なぜかiframeが使えない

    「Toolkit for CreateJS」を使えばFlashのGUIで手軽にCreateJSのコードが書けちゃいます。アクションウィンドウにはActionScriptではなくJavascript(CreateJSのメソッド)を書くというなんとも面白い作り方ですが、用意されているメソッドもgotoAndPlayだったりしてFLASHを触った事がある人ならいつもの感覚で作る事ができます。

    細かい検証に関しては、まだ中途半端というのと、もう色々な人が紹介されてますのでそちらを御覧いただければ!

    こいつでブラウザベースのスマホゲームを作ったら面白そうですね。いつかは挑戦してみたいと思います。

    このエントリーをはてなブックマークに追加
    Share on Tumblr
    Tweet

    アバター投稿者 staff

    投稿日: 2012/10/292012/11/13

    カテゴリー 技術 / デザイン / 制作
  • さつま芋堀り

    こんにちゎ。

    秋ですね。
    私の実家では、今時期さつま芋堀りをします。

    結構掘るのって大変と思った母が、ここ数年子供達を呼んでさつま芋を掘らせてます。
    もう、家で食べるのではなく子供たちの為のさつま芋ですww

    もうまもなくその時期がやってくるのですが、

    先週、友達の子供を2人預かった私は、さっそくさつま芋堀りをやらせちゃいました。
    まず裸足になることから。
    田舎では当たり前ですが、住宅地に住んでる子供達は、「裸足になっていいの?」
    って不思議そうに。

    思う存分、土の上を走らせました。
    とりあえず、ここほれわんわんです。

    1個さつま芋を見つけた子供たちは、その感動から競走に代わり無我夢中でほってました。
    持って帰れる分だけといっても、まー止まらない。

    あっという間に、30本くらい。
    そのあとは、数本焼き芋にして食べました。

    私の小さいころはこんなこと当たり前でしたが、今ではなかなかやらせないですよね^^;
    でも、やっぱり子供は元気に外で土を踏んで遊んでもらいたいです。

    また近々、子供達がやってきます。
    お祭りです。楽しみです。

    このエントリーをはてなブックマークに追加
    Share on Tumblr
    Tweet

    アバター投稿者 staff

    投稿日: 2012/10/292012/11/12

    カテゴリー 日常 / プライベート
  • じぶり

    ジブリ作品が好きだったりするのですが、「もののけ姫」が特に好きだったりします。

    「日本は元来、絶対的とか客観的とかの概念が弱い」と誰かが言っていましたが、正義というものは、立場が違えば様々な正義があります。本来は、絶対的な正義も絶対的な悪も存在しない。ハリウッド映画みたいに正義が悪を駆逐して終わる勧善懲悪というものは存在しないのです。たぶん。自然と文明という立場の違う両者の中で、主人公が共存という道を模索し続けていく感じがなんか日本ぽくて好きです。

    このエントリーをはてなブックマークに追加
    Share on Tumblr
    Tweet

    アバター投稿者 staff

    投稿日: 2012/10/292012/11/12

    カテゴリー 日常 / プライベート

投稿ナビゲーション

前のページ ページ 1 … ページ 367 ページ 368 ページ 369 … ページ 560 次のページ