信頼はずっと、挑戦はもっと。

お問い合わせ
TEL:03-3496-3888

BLOG コアテックの社員ブログ (毎週月曜~金曜更新中)

LIST OF ARTICLES

記事一覧

  • テクログ

    自作キーボードを作ってみよう

    突然なんですけど、皆さんキーボードにこだわりありますか?私は割と厚みのあるキーボードが好きです。でも会社ではMacBookProをつかっていて、厚みが全然ないのでちょこっとだけ辛いです。ネイルとかしていると頻繁に爪が切れないので、伸びてくると痛かったりもします。なので決めました。自作キーボードの沼に足を突っ込もうと...!!まだ勉強し始めなのですが、自作キーボードを一言で言ってもいろんなことを決めないといけません。どれくらいの行があるキーボードにするのか分離型にするのか(肩甲骨に良いらしい)キーキャップはどうするのかキーを押したときの感覚や深みはどれにするのか...こだわりだすとキリがないんですよね。でも初心者にどのキーキャップがいいとか、押したときの感覚とかわかるわけないじゃないですか。そんなときは、秋葉原にある「遊舎工房」さんに行きましょう。https://yushakobo.jp/唯一の実店舗が秋葉原に出来ました。いろいろなキーボードのパーツが売ってます。中で作業も出来ます。ここでいろいろなものを触って、どういうものにするかイメージすると良いと思います。私は今、mint60が気になっていてhttps://eucalyn.shop/shop/kits/mint60-starterセット売りしているこのキーキャップの色がどストライクなんですけどhttps://eucalyn.shop/shop/keycaps/abs-cubic-miami-blueプロファイル(形状)はcherryがいいので悩ましいところです(miami blueはCubic)続けられたら次回に続きます
  • テクログ

    思わず押したくなる!?ボタンエフェクト5選

    こんにちは、ささです。今回は思わず押したくなるような、ボタンエフェクトを5選ご紹介いたします!HTMLとCSSのみで実装が可能なためお気軽にお試しができます!◆Button hover effects with box-shadowhttps://codepen.io/giana/pen/BZaGyPbox-shadowを使ったシンプルなエフェクト◆Layered Buttonhttps://codepen.io/rauldronca/pen/EWeEvVパネルが積み重なってくるシンプルなエフェクト◆luxury buttonshttps://codepen.io/dbox/pen/bdzeEwグラデーションが美しい高級感のあるエフェクト◆CSS BUTTON HOVERhttps://codepen.io/ImranPardes/pen/YvmRpz次のページへ行きたくなる!?アニメーションが使われたエフェクト◆Bubble coloring buttonhttps://codepen.io/comehope/pen/eKqZjy泡がもこもこ浮き上がってくる楽しいエフェクトどんなページでもボタンをクリックして見てもらわないことには何も始まりません。これらのエフェクトを加えることで、少しでも多くクリックしてもらえるようなボタンを実装していきたいですね!
  • テクログ

    素敵だら! Linux コマンド ~基本編~

    こんにちはうなぎです。IT開発者にとって避けては通れない数ある Linux コマンドのうちから、厳選してご紹介する不定期コーナー“素敵だら! Linux コマンド”。本日は「~基本編~」。基本的かつ必要不可欠となるコマンドです。lscdcp■ ls`ls` は指定されたディレクトリにあるディレクトリ・ファイルの情報を出力するコマンドです。オプションに `ls -la` などとすれば、隠しファイル、カレントリ・親ディレクトリを含む全てのディレクトリ・ファイル(`-a`)を詳細な(`-l` )情報とともに出力することができます。オプション `-la` は便利なので、しばしば `l` や `ls` のエイリアスに設定されることもあります。`-la` しか普段使いされないといってもよいほどですが、もちろんオプションはそれだけではありません。`-h` `--human-readable` はファイルサイズの単位を 4096 であれば 4.0K のように読みやすい形で出力してくれます。`-m` はリスト対象をカンマ区切りで出力してくれます。などなど、ほかにも意外と便利なオプションが揃っています。また、他のコマンドと組み合わせて使われることもあります。例えばカレントリディレクトリ内にあるファイル数を知りたい場合はls -A | wc -l などとすることで、カレントリ・親ディレクトリを除く(`-A`)全てのディレクトリ・ファイルの数を集計(`wc -l`)できます。Linux には“パイプ”と呼ばれるものがあり、パイプはコマンド(プロセス)の出力を別のコマンド(プロセス)に入力することができ、上記のように縦線(|)で書き表されます。`ls` コマンドで出力した情報をこの“パイプ”機能によって他のコマンドに渡すことにより、より有用な情報を得ることができるわけです!■ cd`cd` はディレクトリを移動するためのコマンドです。オプションはあまりないので、しばしば使う小技をご紹介します。ホームディレクトリに移動するcd `cd` だけです。ホームディレクトリとは echo $HOME などとすると表示されるディレクトリで、ログイン直後は大体そのディレクトリに居ることになります。ひとつ前のディレクトリに戻るcd - ハイフン(`-`)をパスにすることで、ひとつ前に居たディレクトリに移動することができます。一つ前のコマンドで指定したディレクトリに移動するcd $_ `$_` は Bash の環境変数で、最後に実行したコマンドの引数が格納されています。例えばあるファイルの場所を確認するために `ls` コマンドを使用し、そのファイルが見つかったとします。次にそのディレクトリに移動したいものの、もう一度パスを指定するのが面倒ですよね?そんな時に上記のコマンドを実行することで、入力を省略することができます!※ Bash とは Linux OS を動かしているコア部分(カーネル)に処理を中継いでくれる、コマンドベースのインターフェースを持ったソフトウェアの一つです※ 他にも csh, ash, zsh などがあり、最近では fish が人気のようです`$_` 他、Bash の環境変数については以下を参照https://www.gnu.org/software/bash/manual/html_node/Special-Parameters.html■ cp`cp` はファイルやディレクトリをコピーするコマンドです。第一引数にコピー元、第二引数にコピー先を指定します。また、ディレクトリをコピーする時には、再帰コピーを示す `-R, -r, --recursive` のいずれかのオプションをつける必要があります。他にもコピー先が既に存在していた場合に強制上書き(`-f`)したり、上書き時に確認をする(`-1`)オプションなどがあります。単純にディレクトリやファイルを別の場所にコピーする際に使用する他にも、例えば設定ファイルを編集する前にバックアップを取っておきたいときなどは、cp file{,.back} とすると便利です。上記ではコピー先となる第二引数を省略し、コピー元のファイル名に `{,.back}` を付け加えています。こうすることで結果、実行したディレクトリでは file.back が生成されます。わざわざ第二引数を指定しなくて済むわけです!この `{}` は“ブレース展開”というもので、cp コマンドに限ったものではなく、例えば ファイルを移動する・ファイル名を変更する際に使用する `mv` では、mv file{,.old} とすることで、ちょっと名前を変えてファイルを置いておくこともできます。“ブレース展開”は他にも一度に複数のファイルを指定したりできるなど面白い機能ですが、今回は割愛します。`{}` については以下を参照https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html以上少ないですが、`ls`, 'cp', 'mv' のご紹介でした。
  • テクログ

    Deployerでも動的にデプロイするホストを変更したい!

    ↑ってなりますよね?なるなるーホストが固定だと、deploy.phpにホストを書いて終わり、ってなるんですけど、AWSなどで今動いてるホストがコロコロ変わるとしたらdeploy.phpには固定で書けないですね。うーんこまったどうしよう。そんなときはこれ!hosts.yml〜くわしくはこちら!https://deployer.org/docs/hosts.htmlhosts.ymlにしたがってデプロイするよってしておけば、hosts.ymlを事前に生成すれば動的にできるんだ!(deploy.phpには inventory('hosts.yml');って書けば使われるよ。まあリンク先↑に書いてある。)なんだって!すごいね!はいソース の 例。pythonのほうが楽なんだけどいじりやすいようにphpにしましたですよ?雛形(SOURCE_hosts.yml)をつくっておいて、それのIPとインスタンスIDをリプレースしてるっす。わかるっすよね。雛形はじぶんでつくってね!(リンク先参照とかテストとかして)対象EC2はタグで絞り込んだりとかもしてます。これを使ってなにかあっても責任は全く取れませんなので十分に検証してね!hosts.yml生成するだけですけど。これをjenkinsに呼ばせるなら、失敗時はexit(1);とかすれば進まないのでは。ではいいかんじのDeployerライフを。<?php require 'aws_v3.phar'; use Aws\Ec2\Ec2Client as Ec2Client; use Aws\Exception\AwsException; echo 'generate_autoscale_yml START' . PHP_EOL . PHP_EOL; /**設定箇所 開始**/ //認証情報 $auth = [         "key"   => "ああああ",         "secret" => "いいいい",         "region" => "ap-northeast-1",         "version" => "2016-11-15", ]; //タグ、AutoScaleGroupの値 $AutoScaleGroup_value = 'もがもが'; //hosts.ymlの雛形となるものを読んでおく $source_hosts_yml_string = file_get_contents('./SOURCE_hosts.yml', FILE_USE_INCLUDE_PATH); //結果ファイル名 $hosts_yml_filename = './hosts.yml'; /**設定箇所 終了**/ //hosts.ymlに結果として書き出す文字列の殻 $hosts_yml_string = ''; try{     //動いている(running)、タグが該当のインスタンスを取得     $ec2client = Ec2Client::factory($auth);     $result = $ec2client->describeInstances([             'Filters' => [                     [                             'Name' => 'tag:AutoScaleGroup',                             'Values' => [$AutoScaleGroup_value],                     ],                     [                             'Name' => 'instance-state-name',                             'Values' => ['running'],                     ],             ],             'MaxResults' => 100,     ]);     //値の分解と使用     $reservations = $result['Reservations'];     foreach ($reservations as $reservation) {         $instances = $reservation['Instances'];         foreach ($instances as $instance) {             //もととなる文字のコピー             $mod_hosts_yml_string = $source_hosts_yml_string;             //置き換えに使う文字             $InstanceId = $instance['InstanceId'];             $publicip   = '';             foreach ($instance['NetworkInterfaces'] as $networkinterface) {                 $publicip = $networkinterface['Association']['PublicIp'];             }             //[INSTANCE_ID]と[PUBLIC_IP_ADDRESS]を置き換え             $mod_hosts_yml_string = str_replace('[INSTANCE_ID]', $InstanceId, $mod_hosts_yml_string);             $mod_hosts_yml_string = str_replace('[PUBLIC_IP_ADDRESS]', $publicip, $mod_hosts_yml_string);             $hosts_yml_string .= $mod_hosts_yml_string;         }     }     //書き込み     file_put_contents($hosts_yml_filename, $hosts_yml_string); } catch(AwsException $e){     var_dump($e->getMessage());     echo 'ERROR' . PHP_EOL . PHP_EOL; } echo 'generate_autoscale_yml END' . PHP_EOL . PHP_EOL;
  • テクログ

    AWS Control Tower とな!?

    マスオです。最近はAWSサービスの更新頻度についていけなくなりつつあります・・・。昨年の re:Invent 2018 にて以下のサービス(プレビュー)が発表されました。AWS Control TowerAWSを使っているとアカウントどんどん増えていって管理しきれない!みたいな状況に陥りがちだと思いますが、このサービスはそういった場合にセキュアなままで自動化や一元管理が可能となるとても便利なサービスのようです!当社もアカウントが増え続けており、管理している部署の負荷も高くなってきていますので、より少ない人的リソースで管理ができるようにするため役立ちそうです。まだ東京リージョン非対応でプレビューリリースとなっているので、まずは申込みをするところからになります。皆さんも良かったら是非お試し下さい!それではまた!
  • テクログ

    HPを開くのに時間がかかる、または開きが悪い時

    外部にpingを送ると数%損失が出ていたので調べてみた。ルーター自体は接続中になっており他のPCでもネットが繋がるのでルーターが原因で切れてはいないよう。とりあえず各当PCを見るが特に変わった設定もしていないし、ファイヤーウォールが原因で切れているようでもない。以前ネットで見たIPv6を使わない設定にすると通信が安定するとあったので復習の意味も込めて試す事に。1 ネットワーク接続からローカルエリア接続を右クリックでプロパティ。2 インターネットプロトコルバージョン6のチェックを外す昔はこれでOKと言う記事があったがさらに必要な作業もあるとのことで以下も試してみました。3 構成ボタンを押し、TCP チェックサムオフロード(IPv6)UDPチェックサムオフロード(IPv6)一括送信オフロード v2(IPv6)上記項目を無効にしてOKボタン。その後同じようにpingを送ると損失が明らかになくなった。処理をする前は300の内15%位が損失になっていたのでかなり効果があった結果になりました。