You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Windows10 + PowerShell + OpenSSH + Vagrant + Virtualbox + Visual Studio Code + Git で作るWebアプリケーション環境構築VagrantPowerShellWindows10VisualStudioCode はじめに これはVisual Studio Code Advent Calendar 2016の21日目の記事です。 この構成を作ると、ブラウザ上で動くIDEのCloud9やNitrous.ioのようなUIで開発出来きます。必要なアプリケーションがVisual Studio Code(以下VSC)とブラウザ(Edge, Chromeなど)だけになるのでプログラミング初心者の方にもおすすめです。 これまでのWindowsのWeb開発ではコマンドプロンプト + Teratermなんかを使って開発してきました。し
1 はじめに 前回も紹介しましたが、Visual Studio Code(以下VS Code)でJavaScriptを書く場合に、型情報をうまく認識させると、格段に使い勝手が向上します。 公開当初、VS Codeでは、tsdを使用して型情報を取り込み、下記のようなリファレンスをコードに挿入する方法が取られてました。 /// <reference path="node/node.d.ts" /> このため、今でも、この方法を解説するドキュメントが多数公開されています。 しかし、Version 0.5.0 以降では、jsconfig.jsonを置くことで、上記のような挿入は必要なくなっています。 また、型情報の取得も、公式ドキュメントでは、tsdからtypingsにさらと変更されています。 Node.js Applications with VS Code 公式ページのビデオで紹介されている、
はじめに こんにちは、Visual Studio Code界のホエイプロテイン(WPI)です。これはVisual Studio Code Advent Calendar 2016の21日目の記事です。昨日はEbXpJ6bpさんでした。 Visual Studio Codeのリリース以後、ライトユーザーとして便利に使っています。今日は1ユーザーとして便利に使っていたものの、欲しい機能がなかったので拡張を作った話とその感想を書こうと思います。 作ったもの Visual Studio CodeでOSSライセンス用のLICENSEファイルの作成、およびライセンスヘッダの挿入を簡単に行う拡張である "licenser" という拡張を作りました。 GitHub - ymotongpoo/vsc-licenser: License handler extension for Visual Studio
自宅で使っているテレビ(SONY BRAVIA)は純正のスマートフォンアプリで電源のオン/オフやリモコン操作ができるのですが、使うたびにアプリを起動しないといけない点が不便に思っていました。 W700Cシリーズ | 液晶テレビ BRAVIA ブラビア Video & TV SideView(ビデオ&テレビサイドビュー)オフィシャルサイト ちょうどおうちハック関係の記事を漁っていたところ、HomeKit互換ライブラリのHomebridgeにBRAVIA用のプラグイン(homebridge-sonybraviatv)を見つけたので、手持ちのMacBook Proでセットアップを試してみました。 MacBook Proに最新のNode.jsを入れてアクセス権を設定して、npmでhomebridgeとhomebridge-sonybraviatvを入れてconfig.jsonを書いて、BRAVIA
ラクス Advent Calendar 2016 の12日目の記事です。 昨日は @AkiraTamai さんによる「 Erlangで1プロセス作成するのに必要な時間を計ってみた 」でした。 Advent Calendarの日取りを失敗してしまい、うっかりベトナム旅行中から投稿している @bakunyo@github です webpack とは 突然ですが皆さん webpack 使ってますか? まだ知らない、使ったことが無いという方は以下の記事をご参考ください。 webpack で始めるイマドキのフロントエンド開発 webpack はざっくりいうと、 JavaScriptモジュールの依存関係を解決しつつ、静的アセットを生成してくれるビルドツール です。 公式サイトに載っている以下の図がイメージしやすいです。 webpack plugin とは webpack にはプラグイン機能があり、プラ
【16-E-3】 Node.js の未来について Node.js の過去、現在、そして未来についての解説をします。過去ではこれまでに実装された私のオススメの機能を紹介します。現在はv7.0で実装されている機能を中心に紹介します。また、未来では、今後実装されていく機能を紹介し、最終的にNode.jsの今後のゴールについてを紹介します。下記のキーワードを中心に話す予定です。 - HTTP/2 - ES Modules - Standardization - Performance 古川 陽介 [リクルートテクノロジーズ] リクルートテクノロジーズ ITソリューション統括部 インフラソリューション2部 AP ソリューショングループ シニアソフトウェアエンジニア Node.js 日本ユーザーグループ リクルートテクノロジーズのシニアソフトウェアエンジニアを担当しております。 また、プライベートでは
開発環境を無料で提供してくれている印象。 AWSのt2.microはよく落ちるのでイライラする。 Herokuはスリープするので作業時間(定時内)だけ定期的にアクセスするようなcron(自分はJenkinsから適当にwget)を書いておくといい。 Herokuは1アカウントで5つまで作れるFree dyno作れるので、開発中はHerokuおすすめ。 プロダクション環境(小規模) こっちがメイン。 独断と偏見で、小規模の以下の構成 ・サーバーインスタンス x2 ・それなりのサーバー(CPUx2) ・それなりのDB ※1ヶ月は24x30=720時間で計算 ※リージョンはアメリカ(日本リージョンは若干割高) PaaS サーバー(インスタンスx2) DB ロードバランサ 合計
Whether they're publishing notifications, responding to /slash commands or carrying a conversation, bots have become an integral part of the way we work with Slack. A bot can do any number of things for your team as part of your day-to-day work, you're only limited by your imagination. For some first-hand experience, check out the Heroku Button Gallery, where users have created all types of bots:
この記事はAkerun Advent Calendar 21日目の記事です。 はじめまして、エンジニアの@koichi222です。主にサーバーサイドを担当しています。 突然ですが、フォトシンスのエンジニアたちが常日頃考え続けておりしばしば社内で議論になる問いがあります。それは、 最高の鍵の開閉方法は何なのか?です。 実際にこれまでの弊社プロダクトも、スマートフォンアプリでの鍵の開け閉めに始まり アプリの位置情報で鍵を開けるハンズフリー機能 スマートウォッチ対応(Apple watch, Android Wear) ブラウザから鍵を開けることのできるURL鍵 スマホをかざして鍵が開けられるAkerun Touch Sucicaで鍵が開けられるNFCカード対応 などなど、続々と新たな鍵を開ける方法をユーザーへ提供してきました。 (先日のAdvent CalendarではAmazon Dashボ
require "json" require 'rest-client' require 'sinatra' require 'bing-search' require 'faraday' require 'line/bot' require 'date' require 'net/https' require 'yaml' require 'cgi' require 'net/http' get '/' do 'test' end def client @client ||= Line::Bot::Client.new { |config| config.channel_secret = ENV["LINE_CHANNEL_SECRET"] config.channel_token = ENV["AS_TOKEN"] } end post '/line/callback' do body
SlackのBotを簡単に構築できるライブラリを作りました。 私が調べた限り、ElixirにはSlackのBotを作るライブラリとして、 Elixir-Slack、slackerがありますが、求めているものとしてこれでは足りなかったためslackerの上に構築しました。 それがこちらです。 Sloth 使い方と構成、仕組みの解説をしたいと思います。 HowTo defmodule Echo do use Sloth.Plugin plugin ~r/^echo (.*)$/, :echo def echo(send_data, captures \\ []) do Sloth.Slacker.say(send_data["channel"], List.first(captures)) end end 上記sampleは、echo ほげほげのような発言に対して、 ほげほげと返すBotです。
プライム・ストラテジーは12月22日、東京工科大学が運用する「東京工科大学 緊急用お知らせサイト」にWordPress実行環境「KUSANAGI for Microsoft Azure」が導入されたと発表した。 今回、「KUSANAGI for Microsoft Azure」のほか、WebサーバにNGINX、PHP処理系にHHVM、DBにMariaDB Galera Server、HTTP/2を採用し、常時SSL環境で運用している。 「KUSANAGI for Microsoft Azure」を導入したことで、「緊急時に、全学生・教職員・非常勤講師等のアクセスが集中した場合でもストレスなく稼働するWebサイトが安価に構築・運営できた」「緊急時に事務局から直接情報発信できる、耐障害性の高いWebサイトが構築できた」「ITリテラシーが高くない担当者でも、簡単に情報発信できるWebサイトが構築
“システムの運用管理からクラウドを始める”という考え方 “企業システムはクラウドファーストで検討する”という考え方は、すでに多くの企業に浸透し始めている。パブリッククラウドには魅力的な機能や仕組みがそろっており、それらの価値を自社のビジネスに、どのようにして取り入れていくかという点で悩んでいるIT担当者や経営者も少なくないだろう。 クラウドを利用すれば、サーバやネットワーク機器などの物理環境の運用管理が不要になるため、大幅なコストダウンを図れると期待したものの、既存システムをうまくクラウドに移行できなかったり、思ったような成果が得られなかったりするケースもあるためだ。既存の物理環境を全てパブリッククラウドへ移行しようと安易に考えても、成功しない例は多い。 また、社内システムのパブリッククラウド移行を検討し、システムインテグレーターなどに提案や見積もりを依頼すると、多くの場合「クラウドにはそ
ごあいさつ 断捨離が全然進みません(´・ω・`) ついぶく 私事で大変恐縮なのですが このたび「ついぶく」というサービスを試験リリースいたしました。 どういうサービスかと言いますと 1日のツイートの中からリンクを抽出してまとめページを作成してくれるサービスです。 サービスに参加すると朝7時頃にこのようなツイートが行われます。 12月20日のツイートをまとめたよ('◇')ゞhttps://t.co/TkWwWEtMso— ゆうか🍣=3 🍣=3 🍣=3 (@yu_ka1984) 2016年12月20日 でリンクに飛んでみてもらえればわかるのですがツイート中からリンクを抽出し簡単にまとめてあります。 これだけのサービスです。 作成の経緯 理由1 私は結構ツイ廃なので1日に沢山ツイートします。 その中には技術的な調べ物をしていてそのリンクをツイートしたりしたものも含まれてます。 そんな中で1
Microservices Advent Calendar 2016 の5日目です。 11月にFiNCさんのMeetupで発表させていただいた 「Auth0を使ってサインインを一括管理したりAzure Functionsをセキュアにしたりした話」 が中々の反響だったのでAuth0について詳しく書いてみようと思います。一応クラウドサービスを利用するという点でギリギリマイクロサービスの範疇なのでは…という解釈です。 (@qsona さんの記事とは全然違う方向性で恐縮です。) Auth0公式サイト 読み方はオースゼロです。 Auth0を理解する Why Auth0 の動画を観ます。2分くらいです。今すぐ観て下さい。英語がわからなくてもOKです、紙芝居をお楽しみください。 動画を最後まで観たら次に進みましょう。 What a cool service!! なんて素晴らしいサービスなんだ!そうだ、俺
研究発表で検証用に開発したSpark Streaming+Spark GraphXによるレコメンドシステムの発表資料です。ソースコードの詳細は資料のgithubのリンクを参照ください。
お久しぶりでございます。scalaでバックエンドを開発しているaxtstar(@axtstart)でございます。 前回はExcelにはVBAがある! の話をしましたが、今回は、、、、 やっとScalaの話…ではなく、Scalaは私よりも詳しい方にお任せして ご存じ、今年、新しくJenkinsに仲間入りしたJenkins Blue Oceanの話をしてみます。 Jenkinsあれ 弊社ではCI・CDツールとしてJenkinsを使用しています。 最近までは、GUIによる設定を行っていました。 ↓よくあるこんな感じ↓ 最近、遅ればせながら、Jenkins PipelineとBlue Oceanを使いだしているので、その紹介と活用方法を書いてみたいと思います。 Jenkins Pipeline jenkins.io Jenkins Pipelineとは、かつて Workflow Pluginと呼ば
Swift Advent Calendar その2の23日目の記事です。 Swiftはマルチパラダイム 私がiOS開発に手を出し始めたのはおよそ4,5年ほど前、当時はまだSwiftは存在せず Objective-Cによる開発で、ちょうどMRCからARCに切り替わる手前ぐらいに初めて出会いました。 当時は元々アプリエンジニアがほとんど社内にいない中、Android開発をもくもくと開発しており オブジェクト指向はなんぞや?という所からJava先生にいろいろ教えて貰っていた所だったので、 その名の通りオブジェクト指向ベースであるObjective-Cにはretainカウントに発狂する以外はある程度キャッチアップできていました。 Swiftはマルチパラダイム言語と呼ばれています。 Objective-Cゆずりのオブジェクト指向、そして関数型を取り入れ、 また各言語に散らばっていた素晴らしい機能(N
iOSで画面の下部にタブがあるアプリケーションはよく見かけると思います。 今回はそんな下部タブのボタンにちょっとしたアニメーションを入れるanimated-tab-barを試してみました。 ライセンスはMITです。 https://github.com/Ramotion/animated-tab-bar 検証環境 今回は下記環境で試しています。 Xcode 準備 導入 CocoaPodsで追加します。 use_frameworks! target "ターゲット名" pod 'RAMAnimatedTabBarController' post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |configuration| con
Xamarin Advent Calendar 2016 17日目です。 以前から僕はネイティブバインディング関連の記事をいろいろ書いてきました。 Xamarin.iOS でバインディングライブラリを作る Xamarin.iOS のネイティブバインディングを活用して既存の Objective-C 資産を流用する 新しくなったObjective SharpieでCocoaPodsのバインディングライブラリを作る 今回もネイティブバインディングです! Swift が使われるようになってしばらくたち、CocoaControlsに新しく出てきている今風の UI ライブラリはほとんど Swift 製になりつつあります。 Swift を使う場合、Swift のサポートライブラリ(ランタイム?)が必要となり、Swift で作ったアプリはデバッグ実行やアドホック配布はできるけどストアに上がらない…!という
ただし、PHP 5.4.0以降です。 short_open_tag = on は <?php を <? で始められるようにする設定でした。 short_open_tagのoffが推奨であるのは、xmlの記法である、<? ?>が誤動作する危険性があるためです。 現状でもoffが推奨されているはず。 <?= は<?php echo のショートタグ <?=は<?php echoのショートタグですが、こちらはPHP 5.4.0以降、short_open_tagの設定にかかわらず有効です。 すなわち、非推奨である、short_open_tag = on に影響されないで、いつでも使えるようになったのです。 流石 _人人人人人人人人人人人人人人人_ > PHP: Hypertext Preprocessor <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄ 大丈夫になったはずって思ってた
Schooアドベントカレンダーの20日目の記事です。 はじめに わたしについて こんにちは、Schooの@ohidaです。2016年9月にSchooにジョインし、イノベーション推進室及びプロダクト戦略室という部署で、新規事業を推進したりSchooをよりイケてるサービスにするお仕事をしています。会社ではてへぺろちゃんと呼ばれています。 私は開発チーム所属のバリバリのエンジニアではないのでSchooのエンジニアリングの凄みについてはあまり語れません。ので、今回はこれから社内での導入を企んでいるお気に入りフレームワークのLaravelのことについて書きたいと思います。 なんの話をするか LaravelというPHPのフレームワークを使って簡単なウェブアプリケーションをひとつつくってみようと思います。Laravelの基本的な機能の一部+αでつくる予定です。ウェブアプリをつくるのってこんな感じで楽しい
Doctrineで混同しがちな cascade={"remove"}、 onDelete="CASCADE"、 orphanRemoval=true について整理してみる Symfony Advent Calendar 2016 22日目の記事です。 はじめに Doctrineは多機能で私も開発においてはたいへん便利に使っています。反面、多機能がゆえにどの機能が何を提供してくれるのか把握できていないために苦労することもしばしばです。 ここでは私がいつもどれがなにを示すのかわからなくて毎回ドキュメントを見ながら使っていたcascade={"remove"}、onDelete="CASCADE"、orphanRemoval=trueの記述がもたらす各振舞についてこの場を借りて整理してみたいと思います。 前提 エンティティとしてUserとProfileがあり、UserがProfileを1つ所有し
この記事は PHPで高速オシャレな配列操作を求めて にインスパイアされたものです。 こんにちは。 皆さん今日も生array使ってますか。私も使ってます。今回はarray的なデータ構造をよりよく扱いたいというテーマで、解決したかった問題についてつらつらと書いていきたいと思います。 結果 https://packagist.org/packages/oubakiou/phpp https://github.com/oubakiou/phpp 課題1.arrayがArrayオブジェクトじゃない PHPでも標準で、あるいはPECL等で、array的なデータ構造に対応したクラスが提供されています。 http://php.net/manual/ja/book.ds.php http://php.net/manual/ja/class.arrayobject.php http://php.net/man
主に独自のプログラムで書かれていて且つそれがWordPress外に設置されているファイルだけどWordPressのテンプレートタグや関数を使用したい、サイト全体をWordPress化するわけではないけどヘッダー・フッターなどの共通部分をテーマ内で使用しているものにしたいなど、WordPressのテンプレートタグや関数などを外部ファイルで使用したいときに使える方法です。 WordPress外でもテンプレートタグや関数などを使用したい場合は、下記のようにwp-load.phpを読むように記述することで使用可能になります。 /path/の部分は環境によって変更し、例えばルートディレクトリにWordPressとは関係ないファイルAとWordPressの各ファイルが格納されている/wpというディレクトリがあるとき、WordPress配下ではないファイルAでも下記を記述することでWordPressのテ
{ "name": "name", "description": "description", "type": "project", "require": { "deployer/deployer": "*", "deployphp/recipes": "*" } } -rw-rw-r-- 1 tutida tutida 236 12月 10 21:03 composer.json -rw-rw-r-- 1 tutida tutida 65820 12月 10 21:05 composer.lock -rw-rw-r-- 1 tutida tutida 65820 12月 10 21:05 deploy.php drwxrwxr-x 18 tutida tutida 4096 12月 10 21:05 vendor 基本的な使い方 基本的な使い方は公式やすでに紹介していただいている記事もあ
こんにちは、バックエンドエンジニアのまさくにです。 LIG に入社して早くも三ヶ月が経ちました。社屋の窓からはスカイツリーが見えます。最初の頃はそそり立つその姿に若干の異世界感を感じていたのですが、もう今は特に感慨もなく日々を過ごしています。確かに出社して「わぁ、スカイツリーだぁ」って毎日喜ぶ社員はいません。こうして人って慣れていくものなのだな……。 さて、本稿は PHPer のためのデプロイツール巡業、第三回目となります。今回は「Rocketeer」というデプロイツールでデプロイを試してみましょう。ツールの特徴については第一回目を、Deployer については第二回目をご参照ください。 今回デプロイされる PHP アプリケーションと環境 今回もこのデプロイ記事一回のために PHP でアプリケーションを作りました。数字当てゲーム ryo-an-ji です。決められた数字を順番にクリックして
はじめに GoはC言語やその後のオブジェクト指向言語における課題をシンプルな手法で解決しており、大変使い勝手の良い言語になっています。 具体的にはC言語と比較すると以下のような点が優れています。 充実した標準ライブラリ コンパイルの容易さ 公式フォーマッター クロスコンパイル、マルチプラットフォーム対応 複数返り値によるerrnoからの脱却 インターフェースによるオブジェクト指向の実現 GC(Garbage Collection) スタックやヒープを意識しないプログラミング 整数仕様の整理 今回はこの中でも紹介されることが少ない整数の仕様について紹介したいと思います。 整数オーバーフローの仕様 整数オーバーフローについてGo言語仕様を確認すると以下のように記載されています。 Integer overflow For unsigned integer values, the operatio
基本編 これからプログラミングを学ぶ初心者に、C#を1週間で身につけてもらうための内容です。内容は以下のようになっています。
これは自作OS Advent Calendar 2016の22日目の記事です。 『30日でできる! OS自作入門』という(このアドベントカレンダーの5,6,9,15日目の記事のKさん著)本があります。 この本はhikaliumさんも書かれていましたが、まさに「OS自作における聖書」といえるような本で、例によって今回やったこともこの本が発端となっています。 実際何をやったのかというと、タイトルの通り「自作OSを自作エミュレータで動かしてみたい」と思ったので色々やってみた、ということです。 エミュレータと自作OS 突然ですが、「ソフトウェアを開発する」ということに着目した時、一般的なアプリケーションの開発とOSの開発の一番の違いはなんでしょうか? 僕は、「デバッグに仮想環境を使うか使わないか」ではないかと思います。一般的なアプリケーション開発ではデバッグしようと思ったらとりあえず実行してみれば
電通大はmanだらけ、セキュリティは穴だらけ。 はーい、どもーなんでふですー。 知っている人は知っていると思いますが、 先日から電気通信大学関連ドメインのHPが 海外のハッキング集団からWeb改竄の攻撃を受けていますー。 ハッキングされて改竄されたサイトにはこのような、もう明らかに 毒々しい感じのページが表示されていたと・・・。 「security stupidity」セキュリティおろそかねーwwwって言われてますー。 んでその下にはにっこりしてる顔文字が。。。 んで今回ハッキングの実行者として名前があるのは、 「Team System Dz」と・・・・。 なんか見たことあるぞ・・? あっこいつは確か! 専門家が明かす「イスラム国」系の サイバー攻撃手口 中東の過激派「イスラム国」の賛同者とみられる組織が3月上旬、日本の複数サイトをサイバー攻撃した。いずれも一部のウェブサイト作成ソフトにあ
Update, March 25, 2019: The latest Volta and Turing GPUs now incoporate Tensor Cores, which accelerate certain types of FP16 matrix math. This enables faster and easier mixed-precision computation within popular AI frameworks. Making use of Tensor Cores requires using CUDA 9 or later. NVIDIA has also added automatic mixed precision capabilities to TensorFlow, PyTorch, and MXNet. Interested in lea
This article was peer reviewed by Vildan Softic and Yoshua Wuyts. Thanks to all of SitePoint’s peer reviewers for making SitePoint content the best it can be! Today we’ll be exploring Choo by @yoshuawuyts — the little framework that could. It’s a brand new framework to help you build single page apps that includes state management, unidirectional data flow, views and a router. With Choo you’ll be
ムーアの法則が成立しなくなると、遅いソフトウェアは遅いままだ。ソフトウェア技術者はなにをすべきか~ポスト・ムーア法則時代のコンピューティング(後編)。QCon Tokyo 2016 10月24日に都内で開催されたイベント「QCon Tokyo 2016」で、国立情報学研究所 アーキテクチャ科学研究系 教授 佐藤一郎氏による基調講演「ポスト・ムーア法則時代のコンピューティング」は、IT業界だけでなく社会的にも影響をもたらすと考えられるムーアの法則の限界とその先について、多くの示唆を与えるものとなりました。 (本記事は「いま起きているムーアの法則の限界は、微細化よりも電力と経済性の限界~ポスト・ムーア法則時代のコンピューティング(前編)。QCon Tokyo 2016」の続きです) ブロックチェーンもムーアの法則の限界に影響を受ける さて、この講演は実は主催者から「コンピュータサイエンスが生み
今日のお話は、ムーアの法則が限界に来ているなかで、ソフトウェアの技術者の方々がなにをすべきか、ということを中心にしていこうと思います。 ムーアの法則は終焉するのか? これまでに何度もムーアの法則限界説が流れていて、そのたびに半導体業界はそれをなんとか乗り越えてきたので、ここでまたムーアの法則が限界だという話をすると、オオカミ少年だと言われてしまうかもしれません。 ただ今回はかなり深刻な状況になっています。 その前にまず、ムーアの法則とは何かということを説明しておくと、インテルの共同創業者のゴードン・ムーアという人が50年前に、1つのチップ上の半導体の数、つまりトランジスタの数は毎年倍増すると予測したものです。倍増するペースはそのあと18か月から2年に修正されました。 トランジスタの数はたしかにこの通りに増えていったのですが、他方で半導体業界は総力を挙げてこのムーアの法則を満足させるために技
Webサービス系インハウスデザイナーの人材不足が深刻だ。なんと言っても母数が絶対的に少ない。こりゃあ大変だ、という事で急に書き始めました。 発端は何気ない会話から始まった。 同僚「デザイナーでTwitterのフォロワー数の多い人って誰ですか?」 僕「デザイナーでフォロワー数が多い人ってそんなにいないんだよね〜」 (ちなみに僕は恐ろしく少ないから誰でも良いのでフォローして頂きたい。Twitter:hiro2969) ちなみに上の会話で言っている「デザイナー」というのは、「Webサービス系のインハウスデザイナー」の事になります。 「グラフィックデザイナー」「広告系Webデザイナー」「アートディレクター」などは含みません。 実際に同僚とTwitterを見ながら調査してみた。 結果、フォロワー1,000人もいれば多い方で、Webサービス系インハウスデザイナーでのトップクラスはフォロワー3,000人
インターネットで使われる各種仕様の多くは、RFCと呼ばれる文書として発行されています。 RFCは、「意見募集」や「意見を求む」といった意味を持つRequest For Commentsの略ですが、インターネットに関連する通信仕様の標準を示す文書の名称が、なぜ意見を募集するとなっているのでしょうか? それには、初期のRFCが発行された時代背景があるのです。 RFCの文書番号は新しい文書とともに増加していくので、基本的に文書番号が小さいほど昔のものになります。 最初のRFCである、RFC 1は、1969年4月7日に発行されています。 多少余談になりますが、RFC 1は、「インターネット」という単語が生まれる前に発行されています。 「インターネット(internet)」という単語が初めて登場するRFCは、1974年に発行されたRFC 675です。 1973年に発行されたRFC 604とRFC 6
あなたが広大な敷地で迷ったとしたら、真っ先に知りたいことは自分が今どこにいるかでしょう。一度自分の現在地を知ることができれば、目的地からどのくらい離れているのか見つける事ができます。ショッピングモールなどで「You are here(現在地)」と地図に表記するのも同様の理由からです。 ユーザーはサイト内で迷子になったとき、自分たちがどこにいるのか知りたいのです。ユーザーが自分の現在地を知るということは、ユーザーがどこに行くべきなのかを示すことと同義です。その方法として、パンくずリストを使って道順を示す地図をユーザーに提供するべきです。これはサイトの構造の中での「You are here(現在地)」表示のようなものになります。 パンくずリストを使うべき状況とは 全てのサイトはコンテンツを階層化しています。コンテンツの量によって、浅いものもあれば深いものもあります。もしあなたのサイトの階層が3
はじめに 言語実装 Advent Calendar 2016 用です。 ELVMは、コンパイラをフロントエンドと中間言語とバックエンドにわけて、多言語多CPUに対応しよう……というようなLLVMの考え方を、パロディと言っていいレベルにまで単純化したものです。結果として実用性は全くないが、C言語から他言語へのトランスレータを極めて簡単に書け、 Brainfuck などのような難しい言語のコードもC言語を書くだけで生成できる、というようなことを主目的としています。 本当は ELVM のバックエンドを一つ足して、 Brainfuck とかのような難しいターゲットでなければ、こういう感じで手軽に足せますよーということを書こうかと思っていました。しかし、ありがたいことにそういう趣旨だったり、あるいはもっと難しいターゲットについても、既にあれこれと書いていただいたのでした。例えば Perl: http
制作における品質とは? Webサイトにおける品質(クオリティ)とはどういう意味でしょうか。 制作者であれば同じように捉えているかのようにみえる言葉ですが、大きく 2 つの見方があると思います。ひとつは、様々な状況に堪えられるように必要最低限の見た目と操作性を保証するという意味での品質。もうひとつは、与えられた状況の中で最高の見た目と操作性を実現するという意味での品質です。どちらも「品質」という言葉で表現できるものの、見ている方向は大きく異なります。 品質に対する捉え方の違いを考える上で スターバックスの日本サイトと、米国サイトは良い比較になります。いずれもレスポンシブ Web サイトですが、スマートフォンとデスクトップで見た目を大きく変えている日本サイトに対して、米国のアプローチは極めてシンプルです。アイコンの使い方やグラフィックも日本語版のほうがバラエティに富んでいますし、ナビゲーション
Inc.:ジェフ・ベゾスとAmazonがまた新しい取り組みを始めました。今度は本ではありません。ドローンでもありません。食料品店の改革です。Amazon Goは先日、自動運転カーと同じようなテクノロジーを駆使した、レジも行列もない食料品店をシアトルにオープンしました。Amazonではこれを"Just Walk Out(そのまま歩いて出る)"テクノロジーと呼んでいます。 Amazonは4年前に、とある日常生活の課題に取り組むことを決めました。食料品店で最も時間を浪費させているのは、レジに並ぶ時間だという問題です。セルフレジが設置してある店でも、事態はまったく同じ。あなたの前には、卵パックをスキャンする方法がわからずおたついている客が必ずいます。 では、食料品店の棚から好きな商品を手にとって、そのまま歩いて出ていくことができたらどうなりますか? まさにこれが、Amazonが1800平方フィート
このエントリは、はてなエンジニアアドベントカレンダー2016の21日目の記事です。昨日は id:hakobe932さんによる次に何を勉強するかを決めるための作戦でした。 こんにちは、アプリケーションエンジニアのid:syou6162です。このエントリでは、今年の9月から社内で行なっている機械学習勉強会についての概要と、この数ヶ月でやってきた内容について紹介したいと思います。 最新の論文読み会、だけでいいのか? 他社から学ぶ 機械学習の学習データをどうやって効率的に作るか サービスへの事例や技術選定の基準をキーワードにまとめていく ときには最近の機械学習技術の話題にもキャッチアップ まとめ 最新の論文読み会、だけでいいのか? 私は今年の3月まで自然言語処理/機械学習の企業研究者として働いていて、転職して4月からはてなでエンジニアとして働いています。「転職してからあまり論文読めていないなぁー」
Simon Peyton Jones Published by Prentice Hall Internaltional (UK) Ltd. | April 1987 Chapters also by: Philip Wadler, Programming Research Group, Oxford; Peter Hancock, Metier Management Systems, Ltd.; David Turner, University of Kent, Canterbury “The Implementation of Functional Languages” is a book about implementing functional programming languages using lazy graph reduction, and it divides into
The Haskell programming language community. Daily news and info about all things Haskell related: practical stuff, theory, types, libraries, jobs, patches, releases, events and conferences and more... To explain my use case a little, I am building an attoparsec parser that parses zip codes from an archaic ASCII based spec. Zip codes are always 9 characters in length in one of the following possibl
これはScalaアドベントカレンダー Adventar版の4日目です。 http://www.adventar.org/calendars/1492 3日目の記事 finagle-toggleでデプロイとリリースを分離する 気づいたらだいぶ増えたので、一旦整理してみようという気持ちになりました。 前提の説明 あくまでこのblog書いている時点の情報 権限あるけど、たいして貢献できてないやつ含む 逆に、権限ないけれど、pull reqすごく送っていて、コミット数かなり上位のやつは他にも結構あるが、それはひとまず含まない 別のorganization作ってるとしても、自分がやりだしたライブラリはひとまず含まない といっても、そういうのはmsgpack4z, scalaprops程度か? "自分のコミット数"が多い順に並べた すごく小さいライブラリは書き忘れあるかもしれない https://gi
こんにちは、ウインタブ(@WTab8)です。中国メーカー(あるいはブランド)でタブレットを手がけていないところとしては以前実機レビューをしたBeelinkがありますが、MeeGoPadも同様にミニPCを専門に扱っています。そのためウインタブでは記事にする機会があまり多くありません。ただ、個人的にはBeelinkとMeeGoPadはなんとなくイメージがいいんですよね。 1.スペック OS: Windows 10 Home 64ビット CPU: Intel Atom x5-Z8350 RAM: 4GB ストレージ: 32GB ディスプレイ: なし ネットワーク: 802.11 a/b/g/n、Bluetooth 4.0 入出力: USB 3.1 Type-C、USB 2.0 × 2、microUSB、HDMI、LAN(RJ45)、オーディオ、microSD バッテリー: なし サイズ: 15
Custom Elements v1 - Reusable Web Components Stay organized with collections Save and categorize content based on your preferences. Custom elements allow web developers to define new HTML tags, extend existing ones, and create reusable web components. With Custom Elements, web developers can create new HTML tags, beef-up existing HTML tags, or extend the components other developers have authored.
2016年12月21日 著 忙しさにかまけているうち、すっかり投稿のタイミングを逃してしまって、既に旧聞に属する話ではあるけれど、少し前に話題になったh1要素は複数回使って良いのか!? HTML5.1に関するW3CとWHATWGの主張の違い - Togetterまとめについて、アクセシビリティおじさんとして反応しておきたい。 各所で指摘されている通り、h1要素を複数回使うことについて、是か非かでいえば明確に「是」ですね。W3Cの策定する「HTML5」を使おうと、WHATWGの策定する「HTML Standard」を使おうと。ちなみにSEO上でも問題ないらしい。従い、この話題で論じられるべきは、アウトラインアルゴリズムを前提として見出し要素をマークアップすべきか否かでしょう。HTML 5.1の4.3.10.1. Creating an outlineには、以下の注記があります: There
WordPressのブランクテーマを5つ選んでご紹介します。オリジナルテーマのベースとして利用してもいいですし、テーマ作りの勉強用に活用してもいいでしょう。 WordPressのブランクテーマ5選 それでは早速、WordPressのブランクテーマについて見ていきましょう。ご紹介するテーマを利用する時は、必ず利用規約を確認するようにしてください。 Bones Bones(骨)という名前の通り、必要最低限の構成になっているWordPressテーマです。Bonesの一番の特徴は、モバイルファーストで制作されているところ。モバイルファーストとは、スマホなどのモバイルデバイスを前提に、デザインを作っていくことを言います。そのため、レスポンシブデザインを前提にWebサイトを制作したい場合に最適でしょう。 その他の特徴として、HTML5で作られていることがあげられます。CSSプリプロセッサのSassやL
モイは21日、同社が運営するライブ配信サービス「ツイキャス(TwitCasting)」がHTML5に対応したと発表した。合わせて、最大1Mbpsでの高画質配信も開始する。 PC端末でのGoogle Chromeブラウザによるツイキャス再生が、順次HTML5に対応する。Chrome以外の端末も、順次対応していくという。HTML5版でも配信者と視聴者の遅延を最大2~3秒前後に抑えるほか、再生の高速化も図る。 合わせて、最大1Mbpsの高画質配信も開始する。ツイキャスでは、高画質の需要が高いゲーム実況のニーズが高く、2015年10月にはゲーム実況時、外部ツールを使用して配信できる機能も実装している。今回、配信ビットレート上限を従来の最大700kbps程度(高画質配信時)から1Mbpsへ引き上げ、「ツイキャスならではの遅延の少ない配信を、さらによい画質で行ってもらえるようになった」とした。
【結月ゆかりの手ブラでゲーム実況】sm28353508>mylist/55170851※普段のこのシリーズのために「アカンか? イケるか?」を試す実験用アカウント。動画投稿仕様変更、新プレイヤー導入に伴い、実験中です。環境によっては、Flashプレイヤーでは音ズレ等が、HTML5プレイヤーでは色の変化等が起きるそうです。どうなっているか、コメントいただけると幸いです。Flashプレイヤー(色の補正を行っていない。赤や青の劣化の原因)が特殊な見え方であり、HTML5プレイヤーの見え方のほうが本来のH.264の発色なのかもしれません。sm29840430>mylist/56472887>sm30513332
2015年はビッグデータの時代、2016年はAIの時代、そして、2017年はロボットの時代になると言われています。確かに今年1年は、囲碁や将棋のソフトがトッププロを破るなどAIの活躍を報じるニュースも多く、AIがぐっと身近に感じられるようになった年でした。では、本当に来年ロボットの時代が来るのでしょうか。もうすぐ年末ですが、日常生活を送っていてもロボットに触れる機会は少ない……せいぜい、店先や会社の受付で接客ロボットを見かけるくらいです。人に全く相手にされず、隅っこで微笑んでいるロボットに悲しくなることもあります。近い未来に、本当にロボットが身近になるのでしょうか。 そんな折、代表的なロボットであるPepperの優れた事例をたくさん持っている会社が展示会で新たな取り組みについてセミナーを行う、という話を聞き、ロボットの時代を探すために秋葉原UDXに向かいました。 山川 信之 Monacaと
「ツイキャス」HTML5に対応! 1Mbpsでの高画質配信機能も Google Chrome視聴に対応 モイは12月21日、ライブ配信サービス「ツイキャス」にてHTML5対応および1Mbps(上限)での高画質配信機能の提供を開始した。 Google Chromeで視聴する全ユーザーに対応。そのほかのブラウザーについても、今後順次対応していく予定だという。 HTML5版においても引き続き、再生時の配信者と視聴者間の遅延を最大2~3秒前後に抑えており、快適にコミュニケーションできるよう設計しているという。 また、動画再生についても高速化を実現しており、低スペック端末などでもスムーズに視聴可能だとしている。
About HTML Preprocessors HTML preprocessors can make writing HTML more powerful or convenient. For instance, Markdown is designed to be easier to write and read for text documents and you could write a loop in Pug. Learn more · Versions Adding Classes In CodePen, whatever you write in the HTML editor is what goes within the <body> tags in a basic HTML5 template. So you don't have access to higher-
入社3年目のCMプランナーY.N.君へ。その後、元気に楽しく仕事してますか? あれ、今は「CMプランナー」って職種名は現場ではあんまり使わないんだっけ? N君もデジタル領域の仕事が増えているって前に言っていたよね。でも、フィルムメーキングやサウンドデザイン、コピーライティングの重要性は今でも少しも変わっていないと僕は思うんだけどね。 2年前に定年退職してシニア社員になってからの報告を少ししておきますね(1年ごとの契約更新で最長5年のルールです)。「何が変わった?」と人に聞かれたとき、僕は「責任が減って、年俸が減って、時間が増えた」と答えてます(笑)。仕事以外に使える時間が増えたのは単純にいいこととは限らない。なにか夢中になれること、自分が好きなことを持っていないと、自由に見える時間は持て余されて腐ってしまうと思うんです。僕には今のところ、その心配はないようです。 全世界で2300万人が登録
アニメーション処理はiOSアプリを開発する醍醐味の1つであると私は思っています なので、本記事ではiOSアプリ開発をする上で押さえておきたいアニメーションの基礎の部分をお伝えできればと思います UIKitアニメーション UIView.animateメソッド iOS開発をする人にはお馴染みのUIViewのクラスメソッドである open class func animate(withDuration duration: TimeInterval, delay: TimeInterval, options: UIViewAnimationOptions = [], animations: @escaping () -> Swift.Void, completion: ((Bool) -> Swift.Void)? = nil) を使うことで簡単にアニメーションを実現することができます durat
概要 プライベートで勉強のためにずっとSwiftでiOSアプリ開発をしてまして、それがやっとひと段落してAppStoreに公開することができました。 気づけば無駄に長い道のりでしたが何とかストアの公開までできたので、アプリ開発経験が実質ゼロだった状態からリリースまでの道のりをまとめておこうと思います。 作ったもの まずは作ったものを簡単にご紹介します。 とてもシンプルなアプリです。 https://itunes.apple.com/jp/app/meshi-log/id1173943494 自分が食べた写真をメモと一緒に管理できるアプリです。 いつ何を食べたかまとめておきたいなーと思って作りました。 スキルセット まずは自分のスキルセットを軽くご紹介しておきます。 仕事では基本的にPHPをメインで触っています。(あとはjsを少々。。) アプリ開発は実質未経験です。実質というのは一応仕事で少
以下のnaoya氏のツイートを見て思ったところを書いてみる。書かれている文字通りのことには完全に同意で、自分自身の行いも反省する余地があろうかと思われた。一方で、多分この発言を読んだひとが誤解するだろうなということもあるので、そのことについて。 マネジメントって業績伸ばすためにやるんですよね? 業績伸びてないのに俺たちはマネジメントうまくやってますって語るの意味あるんですかね— Naoya Ito (@naoya_ito) December 22, 2016 結論 結論から先に書くと、マネジメントについて語ることは、業績云々に関わらずおおいにやるべきだと思う。それは、たとえばソフトウェアエンジニアリングについての文書などと同様に、世の中にとって大きく役立ち得る。 ただし、それは一般化・抽象化された(つまり、組織が違っても役立ち得る)マネジメントの理論やテクニックに限る。自分たちがそれをうま
下請けCOBOLERとして生きていた頃のノウハウ Advent Calendar 2016の18日目ぐらいの記事です。 お客は無茶を言う 今回は自分のノウハウと言うより、自分の派遣先にいた超優秀なプロパーさんのやりかたについてです。 なのであくまでも下から見上げていてあーきっとこうなんだろうなって想像混じりのものになります。 ご存じの通りお客さんは思いついたことどんどん言ってきます。 お客と交渉する人が優秀なら重要性の低い仕事はどんどん弾いてくれます。 自分のいた所は大変優秀なプロパーさんだったので、変な依頼が来たら、 「それをしないと何が困るんですか?」 「分かりました、やりましょう、その代わり今の業務止めます」 ←いきなりできませんとか無理ですとは言わない 「両方やれっていうんですか?それは無理ですよ!」 ←大きな声で多少おどけた感じで だいたいこんな感じで多くの無茶ぶりをはじき返して
昨年アメリカのベイエリアに引っ越し・転職して入った会社が、ちょうどElmを本格的に本番運用し始めようとしているところでした。それから1年半弱たった今、フロントエンドで新規に書くコードはほぼすべてElm、総行数はテストを含め5万行に達し、その過程で運用がスムーズにいかない場面も経験しました。そこで、 Elm、よさそうだけど実戦で使うためのツールは揃ってるの? 実戦で使い始めたけど他の人はこの辺どうしてるのか知りたい という読者を想定して、自動テスト・デプロイ・チーム内コミュニケーションに使っているツールややってることを簡単に紹介します。 目次 前提条件や環境など コーディングスタイルの統一 テスト 依存パッケージの管理 アセット管理 CIビルドの高速化のための小技 コード分析 人事採用 前提条件や環境など 自社プロダクトを作っている会社です 1つのページもしくは機能ごとに1つのElmアプリと
[ {"id":1,"name":"akane","birthday":"08-16","vivid_info":{"color":"red","weapon":"Rang"}}, {"id":2,"name":"aoi","birthday":"06-17","vivid_info":{"color":"blue","weapon":"Impact"}}, {"id":3,"name":"wakaba","birthday":"05-22","vivid_info":{"color":"green","weapon":"Blade"}}, {"id":4,"name":"himawari","birthday":"07-23","vivid_info":{"color":"yellow","weapon":"Collider"}}, {"id":0,"name":"rei"} ] pac
何回か転んでるのでリスト化しておこうと思う。 命名部門 クラス名とファイル名が一致してないと死ぬ。 たぶん一般的なC#のプログラム(.NETクラスやMSDN的な書き方)だとPublicはUpperCamelCaseだけど、 UnityではUnityScriptに合わせてかLowerCamelCaseになっている。 共通のC#ライブラリ書くなら、UpperCamelCaseで書くべきだけど、Unity限定ならLowerCamelCaseの方が統一性があるかも。 プログラマー初心者部門 float/doubleの数値で等値演算しちゃう nullチェックを忘れる 0で割り算しちゃう GameObject部門 もちろん抜け道はあるよ Vector2/Vector3/Vector4にいれた小数点第4位未満の小さな値がmagnitudeとかで0に丸められる positionで設定できる値に値域があるな
この記事は Rust Advent Calendar 2016 - Qiita の 20 日目の記事です。(3 日ぐらい遅れてしまいました。スミマセン><) ISUCON6 本戦 Rust 実装 さて、以前に ISUCON6 で優勝したことを記事に書いたのですが、自分はメンバの中で実装が遅い & プログラミングよりインフラの方が得意ということで実際の競技では肝心のコードは触ってないです。 kizkoh.hatenablog.com そこで、今回は復習と早くも来年の ISUCON7 (未定) に備え、練習も兼ねてアプリのチューニングに挑戦することにしました。 Go でチューニングに挑戦してもよかったのですが、今回は Rust Advent Calendar 2016 のネタと Rust でチューニングしていくためのスタートラインとして、 Rust 実装を用意することにしました。 リポジトリは
概要 Angular2とionic2でformを使った際に,バリデーションが少し面倒だったので,Angular2のformについて調べてみました.この記事は The Ultimate Guide to Forms in Angular2 を元にしています.元の記事は少々長いため,以下のように二部に分けて記事にします.うまく訳せていないところもあるので,元の記事はご自身で確認いただければと思います. なおionic2に関しては第2部の最後に,フォームのサンプルを書いてみたいと思います. 第1部 FormControl FormGroup FormBuilder バリデーション 第2部 カスタムバリデーション 変更をWatchする ngModelによる双方向データバインディング ionic2に組み込んでみる 第1部ではAngular2が用意するツールを用いてバリデーションを実装するまでを見てい
はじめに YesodはフルスタックのWeb Application Frameworkであるため、ログイン・ログアウトの機構を作成することのできる拡張可能なモジュールが提供されています。 Yesodでは基本的に Yesod.Auth モジュールとその拡張に乗っかった形で認証の機能を実装します。 ひな形 まずは、ひな形として以下のファイルを用意します。 stack.yaml: resolver: lts-6.27 packages: - '.' extra-deps: - load-env-0.1.1 flags: {} extra-package-dbs: [] name: yesod-auth-sample version: 0.1.0.0 cabal-version: >= 1.8 build-type: Simple Flag dev Description: Turn on dev
Docker in Docker したいケース Jenkins などの CI ツールを Docker コンテナ上で動かしたいことがあります。 プロダクト別に Jenkins を分けたい、とか、本番環境と同じ OS 上でテストを実行したい、などの理由で。 Jenkins 上のテストで DB を使用したい場合、テスト用のデータが入った DB の Docker image を作っておいて、テストジョブを走らせる時に Docker コンテナを作成してテストコードから参照できたらいいですよね。 このような場合には Docker コンテナ(Jenkins 稼動)上で Docker コンテナ(テスト用DB 稼動)を動かすことになります。これを Docker in Docker といいます。 Docker in Docker をするには以下に挙げる二つの方法があるようです(参考)。どちらがベターでしょうか
はじめに バグなのだと思うのですが(仕様としてはおかしいと思うので)、Dockerfileを書いていて、ADDとchownやchmodの順序によって意図しない挙動になることがあるので共有します。 動作Version docker Docker version 0.8.0, build cc3a8c8d8ec57e15b7b7316797132d770408ab1a docker host os (Mac) boot2docker: 0.5.4 現象 例えば、centosユーザ、の .ssh ディレクトリに authorized_keys を置いて、Permissionなどを設定したいということがあります。 その場合少なくとも下記の条件を満たす必要があります。 ~/.ssh DIR は mode 700 でなくてはならない ~/.ssh DIR 以下の Owner は centosユーザでな
本記事は、Docker2 Advent Calendar 2016 の19日目の記事になります。 概要 以前、COPY とADD の違いを試してみた という記事を書いたがそれの残タスクがあったのでそれを試してみる。 ※ version が以前とはだいぶ違うが 以前のも動くことは後ほど検証 or 以前の記事をversion をあげて書き直す 検証内容 コピー元をURL 指定、ワイルドカード指定 環境 OS : cent7.3 [root@docker-engine centos]# docker version # Client: # Version: 1.10.3 # API version: 1.22 # Package version: docker-common-1.10.3-59.el7.centos.x86_64 # Go version: go1.6.3 # Git commi
以前、『TensorFlowの学習済みモデルを拾ってきてiOSで利用する』という記事を書いたのですが、そのとき用いたモデルデータはいずれも Protocol Buffers 形式でした。 (YOLOモデルでリアルタイム一般物体認識) Protocol Buffersはプラットフォーム等を問わない汎用的なフォーマットですが、上の記事を書いたときにわからなかったのが、.pbでエクスポートされたTensorFlow用のモデルでも、iOSで使えるものと使えないものの違いはあるのかないのか、あるとしたら何なのか(単にサイズや使用メモリ量とかが制限になってくるのか)、という点です。 理解の手がかりになるかわかりませんが、TensorFlowのiOSサンプルがどうやってモデルデータを読み込んでいるか、コードをちょっとだけ追ってみます。 なお、今回利用するサンプルはsimpleです。 .pbファイル読み込
この記事は Vim Advent Calendar 2016 の23日目の記事です まえがき ちょっとした自己紹介からしていこうと思います。 別にどうでもいいよって人は飛ばしてください。マジでどうでもいいので 以前0から始めるVim講座と言う記事を書いて、何故かバズった人です ちなみにどうでもいいですが。(初めてQiita&MarkDown)で書いた記事でした 1年間vimを使い続けた感想 まず。率直に意見をいうと、vimをカスタマイズしすぎて他のAtomやら 何やらに手を出せなくなりました。 正直使い始めて1週間なんて、こんなの糞Editerやんけってずっと言ってましたし 思ってたんですが。最近はもう。Vimなしじゃ生きられなくなってもうやばいですね おすすめPlugin&設定など おすすめPlugin clever-f.vim これは、vimの標準搭載されてる、機能なのですが。 行に対
[背景] コード生成はやっぱり(++)じゃないよね サーバサイドをHaskellで書いてクライアントサイドをC#で書けないかと少しservantを試したことがあって,その時にservantのコードからC#のコード生成をするライブラリを作成した. このような時にやっぱり(++)とかで文字列連結するようなのは可読性も保守性も最悪だ. コード生成については以前metadataというschema.orgのリソースをHaskellの型で提供するライブラリを生成するプログラムを書いた時にもやっぱり書いて案の定保守しきれなくなった. ヒアドキュメント Perlとか古典的なLLだとコード生成はヒアドキュメントかな.多分. やっぱり生成したいコードがそれらしく見える方が圧倒的に分かりやすい. 調べたらheredocというライブラリがあったけどメンテが2013でストップしていてしかも記述力の面で不満が. sh
Docker2 Advent Calendar 2016の22日目及び Fusic Advent Calendar 2016の22日目の記事です。 自己紹介 はじめまして、seike460と申します。 普段は主にPHPとサーバー触っています。 Docker良いですよねDocker。 少し前まで敬遠していたのですが、弊社のテックリードから布教されて使用してみたところ 思いのほか使いやすくてはDockerで開発するようになりました。 是非いろんな人にDockerを使って欲しいので今までの私が少しづつ進めてきた開発環境構築の軌跡と 現時点での、ぼくのかんがえるかっこいいDocker構成を書こうと思います。 Dockerを使う前 Vagrant + Ansible で開発を行っていました。 Ansibleに関しては、弊社のAnsible職人のリポジトリがキレイに整備されているので ありがたやありが
この記事は Unity Assets Advent Calendar 2016 20日目の記事になります。 今日はHoloLensの空間認識を利用して、現実の壁とか床とか天井とか机などで反射するレーザーを撃ってみます。 ArcReactor Rays Generator 1.8 (Dec 16, 2016) 反射するビームのポイントとなるのは、Demo3_reflectデモシーンに含まれたLaserLauncher、PlasmaLauncherゲームオブジェクトにアタッチされたArcReactor_Launcher.csになります。これのReflection Settingsで反射させたいLayerを指定。 あと、反射する壁にアタッチされたArcReactorDemo3Mirror.csが実際の反射を行っているようです。 なので、HoloToolkit-Unityに含まれる、空間認識後によ
どちらが優秀かを考えたとき、人月会社の上司からすると売り込める先が多いBさんの方が良いんじゃないでしょうか? 一方で僕の考えではAさんのに軍配が上がります。(というかAさんというのは僕の経歴ですが・・) 下請けが求められるスキルはプログラミング経験の数 スキル・スキルと会社がとやかく言うのは単に経歴書を良い感じの言語でたっぷり埋めたいだけというのが実情だと思ってます。 機能てんこ盛りの空気清浄機の商品の宣伝チラシのように、経歴書には色んな言語が埋め込まれていると一見艶やかでどんな案件にも入れるメッキのスーパーエンジニアに見えないこともありません。(何より売り込み先の選択肢が増えます) 実際に、開発時に人手が欲しいときなんかを専門に渡り歩くなら色々知っていた方が便利でしょう。 一方でCOBOL現場に長くいたようなプログラマーはそういうところに売れなくて困るようです。 なので会社からすればCO
2016年9月8日(木)に株式会社スマイルブームからリリースされたWindows用RPG制作ソフト「SMILE GAME BUILDER(スマイルゲームビルダー)」。プログラミング不要で3DのRPGが作れることが特徴のツールとなっている。 今回、本ツールのプロダクトマネージャーである杉内賢次氏、プロダクトプランナーの重歳謙治氏にお話を伺った。実は両名ともに、フリーゲームに深く関わってきた経歴を持っている。そこで、お二人の経歴をお聞きしつつ、本ツールのコンセプトや込めた思い、今後のアップデート予定などを語って頂いた。 ゲーム制作に関するスマイルブーム社の取り組み――まずはじめに、『SMILE GAME BUILDER』の開発元であるスマイルブーム社の取り組みについてお聞きしてもよろしいですか? 杉内賢次氏(以下、杉内氏)もともと、弊社としては新しい時代のクリエイターのための制作支援ツールを作
個人的には、 家賃は学習環境においてほとんど影響がない(特にリモート学習の場合)ので、安いに越したことはないです。 人件費については学生ばかりだと、深くつっこんだ質問ができないので、バランスが求められるかと思います。 ②教材・カリキュラムの善し悪しが判断できない例えばふだん買う野菜なら、見る機会が多いため、鮮度の良し悪しが分かると思いますが、 プログラミング学習については他と比較する機会ってほとんどないわけです。 なので通っている所の教材が良いか悪いかという客観的判断が下しにくいんですね。 結果、内容が理解できないのは自分の頭の悪さが原因なのだ、という思考になって終了するわけです。 ぼくの場合は、通っている中で、プロゲートやスクーという優れたオンライン教材に出会ったことが1つの判断基準をつくるのに役立ちました。 月額980円のオンラインサービスと比較しても54万円という費用は割に合わなすぎ
この記事は,WebGL Advent Calendar 2016 20日目の記事です。 doxasさんやgam0022さんのレイマーチングの作品を見て面白そうだったので挑戦してみようと思います。 目的 ところでこの記事を見ている方はエースコンバットというゲームをご存知でしょうか。 超遠距離のオブジェクトや、雲や煙のような形が定まっていない物ばかりが描画されるゲームです。 プログラミングを学び始めた頃は、こういったものがどうやったら表示出来るのか全くわかりませんでしたが、今なら少し再現できそうです。 そこで、今回はその第一歩としてレイマーチングの力を借りて、リアルな雲を描画してみたいと思います。 方法 「よし、レイマーチングでボリュームレンダリングをしよう!」と思っても、よく考えたらなにをしたら良いのかわかりません。 というかボリュームレンダリングって何? https://ja.wikipe
どうも小学校5・6年生で英語の授業をやる事が決まったらしいね。「国際化」に対応するためなんだって。 ほんとは国際化(グローバリゼーション)がいいという事自体明らかではないんだけどね。日本というのは鎖国でやってきた国といえば言い過ぎかもしれないけど、今の国際的なトレンドといえばむしろグローバリゼーションよりも鎖国なんだけどね。日本人が英語ができるようになったらいい事があると信じる根拠はなにもないと思うけど。 それはそうとして、小学校5年から英語の授業を始めたとしても日本人の英語力には何の変化もないだろう、というのはまず間違いのない所だと思う。英語教育の現状を見ると、ほんと救いようがない感じがする。 思うんだけれども、日本の英語の授業というのは体育の授業に似ている。体育の授業というのは運動が得意な人間には少しは意味があるんだろうけれども、運動が全くできない人間には全く意味がない。 僕は子供の頃
こんばんは。 今回は理系学部留学について書きたいと思います。 ちなみに書いてる人は今日の10時頃に「アドベントカレンダーの進捗が3行なんですけど広義今日って許されますか」なんていうツイートをしていたくらいなのでクオリティはごめんなさい。 自己紹介 EEIC2017で、去年の8月から今年の5月まで、アメリカのカリフォルニア大学バークレーに留学していました。 理系での(実際には留学を始めた時は文系だったのですがそれはおいといて) 学部留学や海外大学での理系の授業について聞かれることが多いので、今回アドベントカレンダーで扱ってみることにしました。 今回はよく聞かれる どんな授業があるの? 授業以外でどんなことするの? ぶっちゃけ理系学部留学って必要? の三つを中心に書いていこうと思います。 はいここで技術的な話を期待していた方そっとウィンドウを閉じていただけると嬉しいです。 ただ1の項目でいくつ
本記事では、私の知る最も割高なアンチパターンとなるプログラミングについて述べます。 それは、 構造化されたデータフォーマットを文字列関数を使って操作すること です。 以後これを” printfアンチパターン “と称します。 コスト 私がこれを”最も割高な”アンチパターンと呼ぶのは、根拠のない主張ではありません。 cve.miter.org のデータを使って 脆弱性をタイプ別にカウントし 、下記のように、上位を占める脆弱性のタイプ別リストを作りました。 rexec: 19268 DoS: 14849 xss: 9236 memory: 8212 sqlinj: 6230 privilege: 3321 dirtraversal: 2762 arith: 1260 csrf: 1117 私の方法に対する批判や良いご提案があれば遠慮なくどうぞ。 上位を見ると、XSSとSQLインジェクションの数が
野球の打者は、少なくとも30%の確率でヒットを打つことに成功すれば良いとされている。ゴルファーなら、いつもアンダーパーでプレイできれば良いと言われる。射撃手は的の中心に命中させるべきだし、銀行家は裕福であるべきだ。 今挙げたものはすべて、少なくとも同じ分野の人と比較すれば、彼らが優れているかそうでないのか、比較的簡単に測ることができる。 プログラマの素養を測るのは、それよりもずっと難しい。この「素養」が何を差しているのかを説明することすら、ほぼ不可能だ。それでも、プログラマには明らかに優れた人がいるし、ひどく下手な人もいれば、平均的な人もたくさんいる。 私は、この仕事を1981年からずっとやってきて、様々な環境、業界、技術分野で多くのプログラマたちと働いてきた。その間、私はあらゆる種類のプログラマを見てきたので、優れたプログラマというのは、どのような人を指すのかは見分けがつくようになった。
この記事は FLASHer Advent Calender 2016 の 21 日目の記事です。 表題の通り、ANEtty 最新バージョンを公開します。 多分最終アップデートとなります。 詳細はダウンロードページを参照してください。 ■ 以下、改修内容と言い訳です。 バグフィックスや MacOS-x86-64 対応などを行っています。多分 Android-x86 も増やしていたはず。 改修内容ですが、なにぶん、いろいろやってたのが1年以上前なので、どんなバグをつぶしたかとかすら覚えてないです。 1年以上前にテンプレートの改修をしていたのですが、そこでエラーを残したまま現在に至ってしまっていたため、昨日改修を手作業で戻しました。 Windows 版を公開していないのは、単純に Windows 用 FlashBuilder を持ってないので、ネイティブインストーラーを書き出せないためです。これ
Eureka EngineeringLearn about Eureka’s engineering efforts, product developments and more.
PCやデザインソフトの価格が下がり、インターネットにはハウツーがあふれかえっている。デザインを始められる環境がすぐ手に入る時代になったいま、プロのデザイナーとしての存在意義はどこにあるのだろうか。DTP/グラフィックからWeb、Flash、アプリのUIへとフィールドを移しながら長年デザイナーとして第一線を走り続ける、株式会社ツクロア代表取締役の秋葉秀樹さんに、求められるデザイナーであるために大切にしていることを聞いた。 自分の仕事もデザインする ——秋葉さんはどのようにデザイナーの道へ進まれたのでしょうか? 僕は1990年代初頭に、雑誌や新聞、交通などの、広告デザインをしていました。大阪にある小さな代理店でしたので、営業から制作までなんでもやっていました。古いタイプの人たちって、そういう自分でなんでもやる人が多いんじゃないですかね。 会社で「Macintoshっていうコンピューターがあるん
子どものクリスマスプレゼントに何がいいか考えていたらいいものを見つけました。「キュベット」というおもちゃです。 www.primotoys.com 値段が3万円と、少々お高かったのですが、ただのおもちゃではありません。なんと、小さい子どもでもプログラミングができるというんです。 自分の子どもが小学校に入るころには、「プログラミングの授業」も「英語」と同じで、必須になるかもしれないということですし、奮発して買ってみました。 ↓外箱もおしゃれですが、中箱にも顔が描いてあってかわいいです。 ↓中身はこんな感じです。 ↓このかわいい顔のある箱に、車輪がついていて動きます。 ↓単三電池3本で動きます。 ↓もう一つ、操作パネルがあります。 ↓こちらも、単三電池3本で動きます。 ↓箱の側面を見ると、触れながらプログラミングを学ぶと書いてあります。 ↓入っていた布シートを広げてみると、こんな感じです。 ↓
この記事はRecruit Engineers Advent Calendar 2016 - Adventarの21日目の記事です。 昨日はktrysmtさんのChrome便利拡張のお話 ググったあとワンクリックで期間指定ができるChrome拡張を作った - Qiita でした。 “Let It Crash"ってなかなかのパワーフレーズじゃないですか? ちょこちょこといろいろな場所で見かけるものの、(letitcrash.comとか…)その定義や、それがどこで出てきたフレーズなのかまでに触れている記事は少ないのでは、と思います。 この記事では、“Let It Crash"が初めて登場したと思われる、Erlang設計者の1人であるJoe Armstrong氏の論文「Making reliable distributed systems in the presence of software e
“ラズパイ”の名で親しまれている超小型コンピュータ「Raspberry Pi」。2012年の発売当初は、“子どもたちにプログラミングを学んでもらうための楽しいおもちゃ”という位置付けだったが、今では販売台数の約半数が産業用途で使われているという。ラズパイの開発者であるEben Upton(エベン・アプトン)氏に話を聞いた。 販売台数が累計1100万台に達したラズパイ 2012年2月、わずか25米ドルという破格の値段で、手のひらサイズのコンピュータ「Raspberry Pi(ラズベリーパイ)」が発売された。小型で安価ながら豊富なインタフェースを備えたRaspberry Piは、発売初日に10万台が売れるほど話題を呼び、販売台数は2016年12月時点でグローバルで累計1100万台に達した。日本でも「ラズパイ」の名で親しまれ、現在、毎月1万台のペースで出荷されている。 Raspberry Piは
Mithril、Vue.jsの仮想DOM用のi18nライブラリ作ったの続きです。というか、クロスポストしようとして楽しようとしたらダメだったので別エントリーで。 前回のエントリーでだいたいの使い方は紹介したので、node.js用の機能を。 CLIでの使い方 CLIツールでは基本的な使い方は変わりません。おさらいとして、機能をフルに使ったサンプルを紹介します。主語の性別によるコンテキスト、数値情報のよる複数形、フォーマッティングによる変数への代入です。 const i18n = require('i18n4v'); i18n.translator.add({ { "values": { "Yes": "はい", "No": "いいえ" }, "contexts": [ { "matches": { "gender": "male" }, "values":{ "%{name} uploade
はじめに (少なくともブログ上では)お久しぶりです.この記事は,Competitive Programming (その2) Advent Calendar 2016 - Adventar の 14 日目の記事です. いわゆる思い出ポエムが流行って(?)いて,わたしも楽しく読ませてもらっています.人々の昔話を読みながら昔のことを思い返してみたところ,競技プログラミングにハマる以前からは想像できないような未来に生きていることに気付いた(というか再認した)ので,わたしもちょっくら書き残してみようかな,と思いました.丁度枠が残り一つだったのと,「何か」を飲んでいたので, よっぱなので某あどべんとかれんだー登録した.真面目なことを書く用意はないのでたぶんポエム.— とーらす (@torus711) 10 December 2016 といった具合で登録しました. 話としては,「色々あったけど,わたしは
なぜ、僕が尿を提出せず、スポイトで吸い上げたお茶をさし出したのか? やはり、皆さんの疑問はここに集約されているようですね。 前日も書きましたが、これは僕にとって、思いつきであり、一瞬の大きな賭けでした。尿を提出するとき、服装検査が行われることも、当然想定内でした。もし、見つかった時には「なんちゃって」と、笑って見せ、素直に検査に応じようと考えました。どちらにしても、覚せい剤が検出されるわけはないのですから。 「だったら、堂々と尿を差し出せばよかったのに。」 それは、結果論です。僕は、2014年5月17日の逮捕時、取調べと言う名のもと、様々なことを喋りました。どこを切り取られて発表されたとしても、相手は警察です。メディアのような興味を引く内容にはならないと思ったからです。 違いました。 僕が取調べで答えた内容とは、違うものが発表されたからです。毎日のように接見に来てくれた弁護士からは、耳を疑
We’re getting close. Since the last update, as of 2016-12-01 the following has been merged into the jashkenas/coffeescript 2 branch: Tagged template literals, thanks to @greghuc. Interpolated strings are now output as template literals (ES backtick syntax), thanks to @greghuc. Triple-backtick operator and escaped backticks in embedded JavaScript, thanks to @GeoffreyBooth. The browser tests work ag
It has been almost four months since we released A-Painter. We've received lots of compliments, help and feedback from users and developers. Thanks for your support! Now that you're familiar with the basics, let's explore some advanced features that you might not know and make part of my A-Painter creative workflow. Reference Images and 3D Models You can use images and 3D models as references for
mongodb.md 逆引きmongodb バージョン3以降対象 環境系 認証 use <db_name> db.auth("<user name>", "<password") 参照系 コレクションの中身の一覧 db.<collection name>.find() インデックスの一覧 db.<collection name>.getIndexes() コレクションの一覧 db.getCollectionNames() ドキュメントの検索 db.foo.insert([{x:1}, {x:2}]) // {x:1}と{x:2}のドキュメントをfooに追加 db.foo.find({x:1}) // x == 1のドキュメントを検索 db.foo.insert({y:{z:1}}) // 内部ドキュメントのあるドキュメントを追加 db.foo.find({y: {z: 1}}) // y.
The Rust team is happy to announce the latest version of Rust, 1.14.0. Rust is a systems programming language focused on safety, speed, and concurrency. As always, you can install Rust 1.14.0 from the appropriate page on our website, and check out the detailed release notes for 1.14.0 on GitHub. 1230 patches were landed in this release. What's in 1.14.0 stable One of the biggest features in Rust 1
この記事は Vim アドベントカレンダー 2016 の23日目の記事です。 id:yuttie さんの comfortable-motion.vim よさそうなので入れてみたが自分の MacVim な環境では "E118: 関数の引数が多過ぎます: 128_tick" が出たので追いかけようと思います。 …と思ったけど、修正版が上がってたのでしばらく使ってみよう。 慣性スクロール素敵。 TL;DR FlowType のプラグイン作った complete() の微妙な挙動に気づいた パッチ作るために Vim をいじった はじまり Facebook の FlowType ようの Vim プラグインは有る。 GitHub - flowtype/vim-flow: A vim plugin for Flow 諸々挙動が気に入らなくて、最初 PR しようかと思ったが、ローカルの npm のモジュール
この記事は Kubernetes Advent Calendar 2016 の22日目の記事です。 Kubernetes を使っていると、 Pod 内のコンテナで動くプロセスから使われるデータを GitHub repository の HEAD に同期して更新したいというような場合が出てきます。 例えば、下記のような場合があります。 CDN を使わずに小規模に配信するコンテンツ DBMS に入れるほどではないデータファイル このような場合に、プロセスだけでなくデータに対してもデプロイフローを作ると複雑になるので、できれば避けたいところです。 今回は、プロセスが使うデータを自動的に GitHub と同期する方法を紹介します。(実際は GitHub に限らず Git 一般に対応可能です。) gitRepo Volume では駄目なのか Kubernetes には組み込みの gitRepo Vo
株式会社リクルートスタッフィング(以下ITSTAFFING)は11月11日(金)に「技術書ナイト エンジニアと本とワタシ、その複雑な関係。」というイベントを開催しました。技術書の編集に携わる傳氏が技術書編集者の視点から情報収集の方法や新しい技術のキャッチアップ方法について語った、イベントの様子をお伝えします。 ■今回のイベントで語られた内容は… ・技術書の編集者が実践する情報収集は「新しい技術をいち早く知ること」と「その技術はブレイクする技術なのかを見極めること」がポイント。 ・技術を学ぶためには 1.基礎を学ぶ → 2.興味のあるテーマを学ぶ → 3.深める → 4.アウトプット の4つのステップで学ぶのがおすすめ。 ・書籍の選び方を書店に行った場合、行けない場合に分けて注意ポイントを伝授。書籍を手に取ったらまず確認する場所がわかります。 最後にITSTAFFINGが、他にどんな支援を行
これは fukamachi products advent calendar 2016 の21日目の記事です。 今日はLackについて話します。Rackではないです。 Clackの高速化 サムライトに入社してWooによるサーバーの高速化を主な課題と取り組んでいましたが、アプリケーション全体で見ればその基盤部分のClackの高速化も重要でした。Wooは十分に高速だけど、Clackに載ることで大きくパフォーマンスが下がるなら残念なことです。 まあ正直、当時でも十分な速度は出ていたんですけどね。ずっと高速化ばっかりやってたので頭がもう高速化脳になっていて、何でも高速でなければ気がすまなくなっていたんでしょう。 疎結合性を確保しつつなのでWooのようにinline化や型宣言などの高速化のテクニックは使えませんが、それでもClackに速度面で改善の余地はありました。 ClackではComponent
本記事は、OpenStack Advent Calendar 2016 の12月21日の記事である。 はじめに ここ数年同人誌をコミックマーケットで出版してきた経験をもとに、これからコミックマーケットで技術系同人誌を書いて出版しようと考えているソフトウェアエンジニアの方々のために、役に立つ Tips をいくつか記そうかと思う。 なぜこの記事が OpenStack Advent Calender の記事であるかというと、自分のサークルのテーマが OpenStack であるためである。なのだが、この記事自体は OpenStack に1ミリも関係がないため、OpenStacker はそっ閉じしてもらって大丈夫である。ただし、コミケに来て同人誌買ってくれれば、ちょっとは仕事の役に立つことが書いてあるかもよ、とさり気なく宣伝しておく。 申し込み サークルを組む 3人編成がベターかと。人員構成としては
はじめに 株式会社サイシードのサマーインターンシップに参加してLINE Chatbotを開発してきました。2016/9/29にLINEから公式版のMessaging APIが発表されたので、今回は公式版のほうで自動応答してくれるbotを作成しました。 この記事は LINE Messaging APIとPythonを使ってChatbotを作ってみた(1) の続きとなっています。今回はサーバー構築とWebhook URL登録について記載していきます。 ソースコード githubにソースコードを公開しています。 https://github.com/Sciseed/yukko-line-bot 開発環境 ・MAC OS X 10.10.3 ・Python 3.4.0 ・Django 1.8.14 必要なもの .herokuアカウント ・heroku toolbelt ・virtualenv dj
Markdownで議事録やメモの作成を簡単に 以前以下のようなMarkdownで議事録や簡単なメモを作成する方法に関する記事を書きました。 ただ、vimエディタを使ったり、色々ソフトのインストールが必要だったりとあまりコンピュータに慣れていない方だと少し難易度が高かったようです。なので、もっと手軽にできる方法を紹介しようと思います。具体的にはAtomエディタを使います。AtomエディタはマルチOSなので、Mac以外のOS、Linux、Windows等Atomエディタが動作するOSなら同じ方法で使えると思います。 AtomエディタでMarkdownの議事録・メモ作成する方法 Atomエディタをインストール 以下サイトからダウンロードできます。 MacならHomebrewで以下コマンドで一発です。 $ brew cask install atom もちろん、上記サイトからパッケージで落としても
Selenium/Appium Advent Calendar 2016の23日目です。 はじめに 今年6月に転職をして、E2E自動テストを書くようになりました。その際に、ライブラリとしてWebDrvier+Selenideを選択し、テスト基盤の実装にとりかかりました。その際のノウハウをまとめてみようと思います。 基盤作成の目的 まず最初に、E2Eテスト基盤作成の目的を書いていきます。基盤というからにはそれをベースにして様々なテストが書かれていくわけで、これから作成されるテストコードの保守性などを大きく左右する重要な部分です。 保守性向上 E2E自動テストでよくある話ですが、UI変更によりテストが壊れることがあります。プロセスである程度防げるかもしれませんが、保守性を向上することで変更コストをできるだけ下げたいということがありました。 生産性向上 プログラムでもそうですが、基盤側をリッチに
IDEs AppCode CLion DataGrip DataSpell Fleet GoLand IntelliJ IDEA PhpStorm PyCharm RustRover Rider RubyMine WebStorm Plugins & Services Big Data Tools Code With Me Quality Assurance JetBrains Platform Scala Toolbox App Writerside JetBrains AI Grazie Team Tools Datalore Space TeamCity Upsource YouTrack Hub Qodana .NET & Visual Studio .NET Tools ReSharper C++ Languages & Frameworks Kotlin Ktor MPS Am
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes 第2回 ODAC参加報告 〜シリコンバレーに行ってきた〜 (辻慎吾) 2016年12月 ODSCとは? 11月の初旬に、米国カリフォルニア州のサンタクララで開催された、ODSC(Open Data Science Conference)に参加してきたので、今回はその様子をレポートしようと思います。 ODSCは、making data science more accessible(データサイエンスをもっと身近に)というスローガンのもと、オープンソースソフトウェアを使用したデータサイエンスを推進するための活動です。米国ボストンが発祥で、北米を中心に世界各国で開催するイベントを通じ、最新情報の共有や人的ネットワークの形成に力を入れています。 今回は
はじめに 今回は,自分が以前PHP + MySQLで作ったToDoアプリに自分がツイートしたら新しくタスクを追加したいという 考えから始まりました. github.com 一応リポジトリリンク貼っておきます タスク追加までの流れ ツイート(フォーマットあり) Pythonがツイートを読み取る MySQLにインサート やったこと Twitterアプリ登録 https://apps.twitter.com/apps.twitter.com ここで新しくアプリを作り,ConsumerKeyなどを入手.パーミッションはReadのみでもOK Python関係の準備 Tweepyとmysql-connector-pythonを使用するのでpipでインストール.したいところだったけど後者インストール時にエラーがでた.... Collecting mysql-connector-python Could
最近のバズワード「ビッグデータ」「機械学習」が知りたくて、Pythonの記事のリンクをメモ。 自分用の参照記事。 ラフなメモ書き。 【参考1】 Pythonでプログラミングを始めよう:新刊ピックアップ|技術評論社 (引用開始) 「もしコンピュータ言語をひとつも知らないのなら,まずPythonを学ぶことを勧める」。これは『How to become a hacker』(Eric S. Raymond著)の一節です。なぜ,Pythonを勧めるのか,それには様々な理由がありますが,筆者の経験や,世の中の動向を踏まえて説明してみます。 (中略) 工学系のエンジニアにとっても,プログラミングのスキルは設計作業に必要不可欠です。筆者もメーカーに勤務するエンジニアですが,入社以来様々な言語を使ってきました。シェルスクリプト,sed,Perl,C言語,C++,MATLAB/Simulink,Octave,
例えば、あるグループ A と B が別々にテストを受けたとする。 それぞれのグループの人数と平均点、そして分散は分かっているとしよう。 このとき、グループ A と B を合わせた全体での平均や分散は計算することができるだろうか? 結論から言うと、これはできる。 今回は、その手順について書いてみることにする。 また、同時に Python を使ってサンプルデータを生成したり計算の裏付けをしてみよう。 使った環境は次の通り。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.11.6 BuildVersion: 15G1212 $ python --version Python 3.5.2 題材とするデータを生成する 平均や分散の計算を楽にするために、まずは NumPy をインストールしておこう。 $ pip install numpy そして
実装 検証が終わっていないモデルの使用は気をつけてください cifar10の数値感覚 現時点で97%以上ではSoTAになると思います。僕が知っている限り、最高精度は96.69%です。そろそろcifar100か別のデータセットを評価の軸にするべきかもしれません。 最近の傾向 今年はResnetファミリーの年だったと思います。特徴的な点として、深さ=精度が終わった点です。googlenetなどは昔から主張していましたが、ある程度深いと、深さよりも幅を広くしたほうが精度が上がるということが、様々な論文の結果で今年は示されました。3月くらいから、Resnetの幅を広くしたほうが良いという結果は副次的にぞろぞろ出ていて、5月23日に出たWide Residual Netowrksで決定的になったような形だと思います。幅が大事といったことが、今年はっきりした点であるように思います。 論文を俯瞰してみる
Distributed TensorFlow This document shows how to create a cluster of TensorFlow servers, and how to distribute a computation graph across that cluster. We assume that you are familiar with the basic concepts of writing low level TensorFlow programs. Hello distributed TensorFlow! To see a simple TensorFlow cluster in action, execute the following: # Start a TensorFlow server as a single-process "c
OpenStack サービスは標準のロギングレベルを利用しています。重要度のレベルは次の通りです(重要度の低い順): DEBUG、INFO、AUDIT、WARNING、ERROR、CRTICAL、TRACE。特定のログレベルより「重要」な場合のみメッセージはログに出力されます。ログレベルDEBUGの場合、すべてのログが出力されます。TRACEの場合、ソフトウェアがスタックトレースを持つ場合にのみログに出力されます。INFOの場合、情報のみのメッセージも含めて出力されます。. DEBUG レベルのロギングを無効にするには、 /etc/nova/nova.conf を以下のように編集します。 debug=false Keystoneは少し異なる動作をします。ロギングレベルを変更するためには、 /etc/keystone/logging.conf を編集し、 logger_root と hand
For some machine learning /algorithm problems, we require to multiply matrices with vectors. In some cases - especially those associated with large graph analytics, the matrices are sparse. Given the major limitation with GPUs is the limited GPU memory, representing the matrix in sparse format is vital. To this end, the CUSPARSE libraries (http://docs.nvidia.com/cuda/cusparse/) provide a suitable
Taking Control of Your Online Presence with Data for All Scott Thompson | December 16, 2022 at 3:25 pm Data for All by John K. Thompson covers data in the most holistic sense. For someone that is not involved in data scienc... DSC Weekly 13 December 2022 – Highlighting Our Contributors Scott Thompson | December 13, 2022 at 6:14 pm Announcements The hybrid cloud infrastructure is set to enhance agi
声優 Advent Calendar 2016 - Adventar 声優アドベントカレンダー21日目です。21日目です 麻倉ももさんについての説明と、アメブロのブログをPythonでスクレイピングしたという内容を行います。急いで書いたので文字数がないです。よろしくお願いいたします。 麻倉ももとは 2011年に、スフィアが所属する芸能事務所ミュージックレインが開催した「第2回ミュージックレインスーパー声優オーディション」で合格し、同期の雨宮天、夏川椎菜と共に人気急上昇中の女性声優ユニット「TrySail」のメンバーの一人として活躍する今大注目の声優の一人です。最近ではソロデビューも行い、オリコン初動売上[1]がなんと13,390枚という数字を叩き出し、見事4位の座を勝ち取りました。 麻倉ももの魅力 麻倉ももさんのその美貌もさることながら、最も魅力的なところは天然の言動でしょう。 ニコニコ超
こんにちは、大雪で飛行機が欠航になって自宅でブログを書いているせーのです。今日は出たばかりの新サービス「QuickSight」の新機能のご紹介です。 QuickSightとAthena QuickSightは様々なデータを簡単な操作でグラフとして表示できるBIツールです。このブログを見ている方はちょうどQuickSightのアドベントカレンダーをやっていたのでよく目にしているサービスかと思います。QuickSightを使うとこんなグラフが書けます。 カラフルでいい感じですね。 一方AthenaはS3に入っているデータを標準SQLを使って分析することができるサービスです。Athenaにテーブルを作り、S3のバケットを指定してSQLを流すと欲しいデータが引っかかります。つまり、S3にとにかく何も考えずにデータを投げ込んでおいて、後でAthenaを使って必要なデータだけを拾い上げていく、という方
package main import ( "fmt" "log" "path" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/dynamodb" sess := session.New(&aws.Config{Region: aws.String("us-east-1")}) svc := dynamodb.New(sess) params := &dynamodb.ScanInput{ TableName: aws.String("TABLE_NAME"), // Required AttributesToGet: []*string{ aws.String("TARGET_ COLUMN"), // Required
前回Auroraの特徴についてまとめましたが、その後さらにいぢくり、さらにいぢくり倒し、 何点かわかったことについて追加/補足していきます。 前回はAuroraの仕様についての話がメインでしたが、今回はAuroraの使い方についてが主になります。 ClusterEndpoint この子には騙されました。(勝手に勘違いしただけなのですが…) 最初私はこれは"WriterとReaderをまとめたインスタンス郡の名前"と思っており、 ELBのように負荷分散とかをやってくれるものだと思っていました。 ですが実はそうではなく、これは"ReaderにFailoverしてもその新しいWriterを常に追いかけてくれる名前"でした。 要するに"Writerを指し続けるDNS"だそうで、複数の向き先を指定して~などやらずとも これ一つ指定しておけば100%Writerに向かってくれるというものだそうです。
Linux Audit The Linux security blog about Auditing, Hardening, and Compliance Linux security and its developmentsIn the last 10 years, GNU/Linux achieved something some foreseen as almost impossible: powering both the smallest and biggest devices in the world and everything in between. Only the desktop is not a conquered terrain yet. The last years had a great impact on the world. Both from a real
かどうかはわかりませんが、techrachoアドベントカレンダー23日目の記事です Vimでファイルを編集するようにSlackに発言できたらいいな! と思ったことはありませんか? というわけで作ってみました Slackをファイルのように開けます https://github.com/yaasita/edit-slack.vim インストール パッケージマネージャーでのインストール 適当なパッケージマネージャ等でインストールして下さい 以下一例です vim-plugな人 Plug 'yaasita/edit-slack.vim' NeoBundleな人 NeoBundle 'yaasita/edit-slack.vim' Vundleな人 Plugin 'yaasita/edit-slack.vim'` Vim packages vim標準のパッケージマネージャな人 (Vim 7.4.152
TechShareは、Raspberry Pi3用に専用開発したAC電源アダプタセットを発表した。使い勝手を考慮して、電源ケーブルにスイッチが設けられている。 このAC電源アダプタセットは、消費電流の大きなRaspberry Pi3 ModelBでも電圧降下によるシャットダウンが起きにくいよう、電流容量に余裕をもたせ、ケーブルの内部抵抗やスイッチの接触抵抗も影響が小さくなるように設計された電源セットだ。 AC電源アダプタの仕様は5V、3.0A、スイッチ付電源ケーブルの長さは1.1mとなる。 また、このAC電源アダプタセットは同社が扱うPhysical Computing LabブランドのRaspberry Pi用スターターパックにも含まれており、今回RaspbianをプリインストールしたMicroSDカードの更新と合わせてリニューアルして販売する。 価格はAC電源アダプタセットが1500円
Happens with all projects from complicated to just an empty scene with a cube, or empty scene with a UI text. Built project will crash to desktop before showing the splash screen. last worked correctly in 5.2, all 5.3 builds crashed due to shader compilation errors, none of the patches resolved that. Now in 5.3.2 it is crashing a bit differently. full logfile: Preloaded type GtkListStore Preloaded
するだけで RDP 接続できるようになるはずです. ところが,一部環境にて,ログイン時に下記のようなログが表示され,Raspberry Pi に接続できないことがあるようです. connecting to sesman ip 127.0.0.1 port 3350 sesman connect ok sending login info to session manager, please wait... xrdp_mm_process_login_response: login successful for displa started connecting connecting to 127.0.0.1 5910 error - problem connecting 環境 私の環境は以下の通りです. モデル Raspberry Pi 3 Model B OS Raspbian 8.0
はじめに この記事は、オールアバウト Advent Calendar 2016の23日目のエントリーです。 私、@tajima_tasoからは【原理原則で理解するDocker】と題して書かせて頂きます。 Dockerってそもそも何?ってところから、内部実装部分についても触れています。 Dockerとは何か? まず、Dockerとは何なのか?について軽くおさらいしましょう。 今更聞けないという方も、なんとなくイメージが掴めたら嬉しいです。 何故、今Dockerなのか? Docker ソフトウェア開発を行う環境にいる方々の中で、この言葉を耳にする機会が増えてきているのではないでしょうか? 実際の業務において導入まではしていないとしても、何となく盛り上がっている技術用語であることは肌感覚としてあると思います。 実は、Docker実現のベースとなっているLinuxコンテナという技術自体はずっと前か
英非営利団体のRaspberry Pi Foundationは12月21日(現地時間)、小型コンピュータ「Raspberry Pi」シリーズ向けのデスクトップ環境「PIXEL」の試験的なx86版をリリースしたと発表した。旧型のPCおよびMacで稼働する。 公式ブログの「download」をクリックするとISOイメージファイルをダウンロードできる。 PIXELは、従来のDebianベースのデスクトップ環境、LXDEが9月のアップデートで刷新されたもの。シンプルなユーザーインタフェースでChromiumベースのWebブラウザなどのソフトウェアやプログラミングツールが含まれる。Debianベースなので、Linux向けの多数の無料アプリもサポートする。 x86版も基本的にはRaspberry Pi版と同じだが、「Minecraft」と「Wolfram Mathematica」はライセンスの関係でプ
NXP SemiconductorsとFreescale Semiconductorが統合作業を進める中、車載マイコンおよびSoCの市場シェアを伸ばしていたルネサス エレクトロニクス。同社の第一ソリューション事業本部 車載情報ソリューション事業部で事業部長を務める鈴木正宏氏に、ルネサスの車載向け製品や、Samsung ElectronicsによるHarman International買収について話を聞いた。 EE Times ルネサス エレクトロニクス(以下、ルネサス)は、車載コックピットとインスツルメントクラスタ分野で特に堅調に成長しているということですが、勝因は何だとお考えですか。 鈴木正宏氏 ライバル企業が製品ラインの刷新を図っている間に生じた市場の隙間を狙ったことだ。特にインフォテインメントクラスタでは、中国と欧州の自動車メーカーからのグラフィックス処理に対する需要増にうまく対応
Linuxで香り屋Vimのビルドを自動化する Vim(その2) Advent Calendar 22日目 この記事はVim(その2) Advent Calendar 2016の22日目のエントリーです。昨日は凡人さんの続・初めてのプラグイン作成 - 最小限なvimプラグインでした。明日はJpnLavenderさんです。 香り屋版Vim、使ってますか? さっそくですが、Windows使いの皆さん、香り屋Vimを使っていますか?僕も使ってます。まあ、Vim初心者なので使いこなせているかといえば使いこなせてないですが・・・。 それはさておき、Windowsで使っているならLinuxでも香り屋Vimを使いたいって思うことはありますよね(・・・ありますよね?) ご存知のように、Windowsなら香り屋版公式バイナリが配布されていますし、MacでもMacVim-kaoriyaというプロジェクトのおかげ
Amazon Web Services ブログ Amazon ECS – Windows コンテナ (ベータ版) のサポート お客様がコンテナベースのコンピューティングについて習熟していて、コンテナ化の価値について少なくとも基礎的な理解があることを心から願っています。私が 2014 年に述べたように、クラウドベースのアプリケーションをコンテナのコレクションとしてパッケージ化し、それぞれを宣言により指定することで、開発環境と本稼働環境の一貫性、アーキテクチャベースとしての分散アプリケーションプラットフォーム、開発効率、運用効率など、数多くの利点が得られます。当社は 2014 年後半に、Linux コンテナのサポートを含む Amazon EC2 Container Service をリリースしました。今年は、これまでにアプリケーションの負荷分散のサポート、ECS タスクの IAM ロール、サー
Caononicalのソフトウェア開発者でUbuntuのテクニカルボードでもあるSteve Langasekは12月22日(世界標準時)、Ubuntuの開発者向けメーリングリストに「Removing 32-bit powerpc architecture from future Ubuntu releases」というタイトルのエントリを投稿、2017年4月リリース予定の「Ubuntu 17.04(開発コード"Zesty Zapus")」とそれ以降のリリースでは32ビットPowerPCアーキテクチャのサポートを行わないと発表した。 Removing 32-bit powerpc architecture from future Ubuntu releases 今回の発表は、Debianが10月にStretchでの32ビットPPCアーキテクチャのサポート終了を発表したことに伴うもの。L
abrtd の素振りログを残す。調べてみてもあんまりエントリ無いので、ここに書いたことで誰かの何かの足しになろう abrtd を使うことで SIGSEGV を受けたプロセスのコアの収集や、カーネルパニックを起こした際の vmcore の収集を自動化できる 検証環境 CentOS 7.3 1611 Vagrant リファレンス https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/ch-abrt.html インストールと起動 sudo yum install abrt-cli sudo systemctl enable abrtd.service sudo systemctl start abrtd UNIT FILE STATE ab
今年1年いい子にしていたLinuxユーザーのあなたに、サンタがプレゼントを用意している。Linux Mint 18.1「Serena」だ。 Serenaは「Ubuntu 16.4」ベースの長期サポート版LinuxデスクトップOSで、過去最高の出来となっている。 その理由を説明していこう。まず、Linux Mintはようやく自動的にアップグレードできるようになった。これまでMintでは、ホームディレクトリの個人用ファイルを別のパーティションに分離しておいた上で、手動でアップグレードする必要があった。ほかのほとんどのLinuxディストリビューションでは、すでにこの問題を解決している。しかし今回のバージョンから、Linux Mintでも非常に簡単な手順で自動アップグレードが可能になった。 ただしこの機能はKDE版やXfce版ではまだ提供されておらず、これらのデスクトップでは、2017年前半まで待
This article is more than one year old. Older articles may contain outdated content. Check that the information in the page has not become incorrect since its publication. Editor's note: this post is part of a series of in-depth articles on what's new in Kubernetes 1.5 Extending on the theme of giving users choice, Kubernetes 1.5 release includes the support for Windows Servers. WIth more than 80%
<<< JPCERT/CC WEEKLY REPORT 2016-12-21 >>> ■12/11(日)〜12/17(土) のセキュリティ関連情報 目 次 【1】複数の Microsoft 製品に脆弱性 【2】複数の Adobe 製品に脆弱性 【3】複数の Apple 製品に脆弱性 【4】Mozilla Firefox に複数の脆弱性 【5】Apache Tomcat に情報漏えいの脆弱性 【6】McAfee VirusScan Enterprise for Linux に複数の脆弱性 【7】Joomla! に複数の脆弱性 【8】サイボウズ デヂエに複数のアクセス制限不備の脆弱性 【9】Apache ActiveMQ にクロスサイトスクリプティングの脆弱性 【10】複数のソニー製ビデオ会議システムに認証不備の脆弱性 【11】EpubCheck に脆弱性 【今週のひとくちメモ】NISC が「
Our vision in establishing the Raspberry Pi Foundation was that everyone should be able to afford their own programmable general-purpose computer. The intention has always been that the Raspberry Pi should be a full-featured desktop computer at a $35 price point. In support of this, and in parallel with our hardware development efforts, we’ve made substantial investments in our software stack. The
Linuxをサーバとして複数人で利用する際、ssh接続するアカウント事に使用できるコマンドを制限したいことがある。 そのような場合には、以下のような手法が用意されている。 1. ログインシェルをrbashにする 前にここでも触れているのだが、rbashというbashのシンボリックリンクを作成して、それをログインシェルにすることで、特定のコマンドのみを実行可能なユーザを作成できる。 bashのシンボリックリンクなので、別にコマンドのバイナリを用意したりとかしなくてもいい。 また、PATHを直接指定してのコマンド実行も行えないようになっているのもよい。 おそらく、一番手軽な設定方法ではないだろうか。 2. chrootでルートディレクトリを変更する chrootでルートディレクトリを変更することで、コマンドのPATHなどを参照できなくさせて実現する方法。 この方法であれば、そもそもchroot
Notable changes buffer: buffer.fill() now works properly for the UCS2 encoding on Big-Endian machines. (Anna Henningsen) #9837 cluster: disconnect() now returns a reference to the disconnected worker. (Sean Villars) #10019 crypto: The built-in list of Well-Known CAs (Certificate Authorities) can now be extended via a NODE_EXTRA_CA_CERTS environment variable. (Sam Roberts) #9139 http: Remove stale
仮想通貨とPCセキュリティまとめサイト 仮想通貨 【NFTART】NFT Art Finance 1【ホルダー集まれ】 June 24, 2022 【BTC】ビットコイン情報交換スレッド4870 June 24, 2022 【ローンチパッド総合】BSCPAD、KCCPAD、ADAPAD、Tronpad、ETHPAD、GAMEZONE June 24, 2022 2030年までにビットコインは1億円突破する!!!!!! June 24, 2022 【GACKT】 SPINDLE スピンドル ガクトコイン part9 【SHOW YOUR HEART】 June 23, 2022 将来BTC1枚1億円を大きく超える予測! BTC2枚ETH好きなだけ投資法だぉ(o^^o) June 23, 2022 【Hearts 】毎日貰える仮想通貨 June 23, 2022 仮想通貨の一覧へ ギャンブ
友人がオープンソースやLinuxのファンだという場合のお勧めプレゼントを紹介したい。 テクノロジを心から愛する友人には、Linux関連のクリスマスプレゼントを贈ってみてはどうだろうか?是非とも贈ってみるべきだ!本記事では、「Tux」(Linuxのマスコットキャラ)好きな友人のクリスマスを素晴らしいものにするプレゼントを提案する。 #1:Tux Linuxファンであれば、自宅やオフィスにLinuxのペンギンマスコットTuxのぬいぐるみを1つは置いておくべきだ。Tuxのぬいぐるみは一時期ほど流行してはいないが、Linux PCのベンダーであるZaReasonは、抱きしめたくなるTuxくんを現在でも販売している。 #2:Linuxファンと分かる帽子やTシャツ 筆者の引き出しは、Linux関連のイベントで手に入れたTシャツでいっぱいだ。しかし、あなたの友人たちが「Linux Plumbers」カン
こんにちは。 Linux サーバでのログローテート時に MariaDB(MySQL) ログ部分でエラーが発生することがあります。 以下、当方が以前体験した事案についての現象・原因・対策の記録です。 0. 前提条件 Debian GNU/Linux 7.8(64bit) を想定。 MariaDB 10.0.15 を想定。 環境等により設定ファイルの配置場所等が以下の記事内容と若干異なるかもしれないので注意すること。 1. 現象 ログローテート時に以下のようなエラーが発生する。 /etc/cron.daily/logrotate: /usr/bin/mysqladmin: flush failed; error: 'Unknown error' error: error running shared postrotate script for '/var/log/mysql.log /var/
こんにちは。 Linux サーバでのログローテート時に MariaDB(MySQL) ログ部分でエラーが発生することがあります。 以下、当方が以前体験した事案についての現象・原因・対策の記録です。 0. 前提条件 Debian GNU/Linux 7.8(64bit) を想定。 MariaDB 10.0.15 を想定。 環境等により設定ファイルの配置場所等が以下の記事内容と若干異なるかもしれないので注意すること。 1. 現象 ログローテート時に以下のようなエラーが発生する。 /etc/cron.daily/logrotate: /usr/bin/mysqladmin: flush failed; error: 'Unknown error' error: error running shared postrotate script for '/var/log/mysql.log /var/
こんにちは!絵を描くWebデザイナーの湊川あいです。 普段 マンガでわかるGit わかばちゃんと学ぶWebサイト制作の基本 わかばちゃんが行くオフィス訪問マンガ などを執筆しています。 今回、シス管系女子 アドベントカレンダー22日目、「怖くない!黒い画面入門」として担当させていただきます! 登場人物紹介 わかばちゃん マンガでわかるGitの主人公 Webデザイナーを目指す大学生 みんとちゃん マンガでわかるLinux シス管系女子の主人公 システム管理部門の新人社員 へぇ~、大学のゼミでGitを使ってるんだ!すごいね! Gitをコマンドで操作できれば、よりGitの理解が深まるのかなと思うけど、なんかハードルが高くて( ꒪⌓꒪) やってみれば簡単だよ! コマンドが打てるといざというときに役立つし、慣れてくるとクリックで操作するツールよりも早く操作できたりするよ。 実践 まずはコマンドを打つ
はじめに この投稿はFujitsu Advent Calendar 2016の23日目の記事です。 Advent Calnderなる面白そうなものが盛り上がっていると聞いて急いでQiitaに登録しました。 普段はアプリのプロト開発等を行なっています。 仕事柄ネットワーク畑の人が周りに多くて「スマホアプリを作ってみたいんだけど今度教えてよ!」ってよく言われます。箱を開けて見ると大体の人が下記の二つで壁を感じているようです。 ・ 環境を作るのに挫折した ・ プログラミングはちょっと苦手 そんな方でも大丈夫!ぜひ記事を読みながらトライして下さい。 ※本記事で紹介する内容はネイティブでの開発ではありません。 環境準備 なんといってもこいつが大変です。Android studioやeclipseのダウンロードに何時間かかるんだよって話で、インストール終わったと思ったらメモリが足りなくてすぐに固まるな
Androidアプリの開発キット Android SDK のインストール方法です。現在 Android Studio に同封されているらしく Android Studio ごとダウンロードしますが、この記事では Android SDK のみを必要とする前提で進めていきます。 Android SDKのダウンロード・インストール 以前は Android SDK 単体でのダウンロードが可能だったようですが、現在は Android Studio ごとダウンロードする必要があるようなので、 Android Studio のインストーラを下記の公式サイトからダウンロードします。 Download Android Studio and SDK Tools | Android Studio 『 DOWNLOAD ANDROID STUDIO X.X(バージョン)』と書かれているボタンをクリックして And
参考 railsのfluent-logger gemを使ってユーザーのアクセスをfluentdサーバに収集する | joppot Fluentd logging driver - Docker fluentd(td-agent)でTreasureDataにapatchログを送る方法 - Qiita request - リファレンス - - Railsドキュメント fluent-plugin-tdの説明 - Qiita Cloud Big Data Analytics with Treasure Data | Fluentd fluent.configの作成 <source> type forward bind 0.0.0.0 </source> <match td.*.*> @type tdlog endpoint api.ybi.idcfcloud.net apikey $API_KEY
1つのmigrationファイルでRails 4.2系と5.0系両対応する「activerecord-compatible_legacy_migration」RubyRailsGem どんなgemか 同一のmigrationファイルでRails 4.2系とRails 5.0系の両方でいい感じに動くようにするためのgemです https://github.com/sue445/activerecord-compatible_legacy_migration https://rubygems.org/gems/activerecord-compatible_legacy_migration これだけだと分かりづらいので具体例を出します 前提 Rails 4.2系から5.0系へのmigrationファイルの移行について Rails 4.2系から5.0系に移行する時に、Rails 4.2で作られた
N-gramN-gramは文字列をN文字単位で区切って1要素としたものです。 N-gramは全文検索を高速に行うためのインデックスとして良く使われます。 Nが2のものをbi-gram(バイグラム)、Nが3のものをtri-gram(トライグラム)と呼びます。 Nが4以上は応用例が少なくメジャーでないためか、私は聞いたことがありません。 例えば最初の文章をbi-gramで表現して並べると以下のとおりです。 文字列の先頭からはじめて、1文字ずつずらしながら、2文字単位で1要素としていきます。 Enumerable#each_consRubyではEnumerable#each_consを使って、このようなN-gramを簡単に作ることができます。 Enumerable#each_consのRubyリファレンスマニュアルの解説は以下のとおりです。 要素を重複ありで n 要素ずつに区切り、 ブロックに渡
いま Ruby をやってるひとなら、オブジェクト指向設計を学ぶ・復習するのに最適な本だと思う。まさに実践ガイド。一度身につけておくと、言語問わずに使える知識。すぐに仕事に活かせてとても役に立ったと感じた。 こんなひとにおすすめ 自分がそうでしたという意味で。 オブジェクト指向設計はなんとなく知ってるけど実践のイメージが湧いてない オブジェクト指向設計というと継承の親子関係のイメージしか浮かばない 実装をしながら「いいと思って書いてるけど、これは本当にいいのかな…」と迷うことが多い とくに Rails を使っていて設計や実装に迷うことが多い 「Rails における良い設計」の表面的な部分に振り回されている気がする オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方 作者: Sandi Metz,?山泰基出版社/メーカー: 技術評論社発売日: 20
株式会社クリアコード > ククログ > Ruby on RailsでMySQL・PostgreSQL・SQLite3とGroongaを使って日本語全文検索を実現する方法 MySQL・PostgreSQL・SQLite3の標準機能では日本語テキストの全文検索に難があります。MySQL・PostgreSQLに高速・高機能な日本語全文検索機能を追加するMroonga・PGroongaというプラグインがあります。これらを導入することによりSQLで高速・高機能な日本語全文検索機能を実現できます。詳細は以下を参照してください。 Ruby on RailsでMySQLとMroongaを使って日本語全文検索を実現する方法 Ruby on RailsでPostgreSQLとPGroongaを使って日本語全文検索を実現する方法 ここではMroonga・PGroongaを使わずに日本語全文検索を実現する方法を紹
「無料 ホームページ」と検索すると、無数のホームページ作成サービスが検索に引っかかります。 それらのサービスは、使いやすさ、作りやすさ、容量、ページ数、値段(有料版)といった点で比較されていますが、その中でも、最も簡単にホームページを作れるサービスの一つとして、今ますます事業展開を進めているのが【ペライチ】です。 ペライチのホームページ ペライチは、素早く直感的に「たった1ページのシンプルなホームページ」を作ることを得意としているWebサービスです(※従来の多層構造型のホームページも作成可能)。 これまでに作成されたホームページをのぞいてみると、そのクオリティの高さに驚かれる人も多いでしょう。 先日ペライチは、ユーザーが作成したホームページに決済機能を追加できる『ペライチ決済』をリリースしました。この機能の追加により、ペライチで作成したホームページ上で、誰でも手軽にビジネスを始められるよう
高橋 征義(日本Rubyの会会長、読者側代表) コンピュータ書仕掛人(出版社側代表) 19:00開場 19:30開演 毎年恒例のコンピュータ書年間ふりかえり企画が今年もやってまいりました! 「新春座談会 このコンピュータ書がすごい!」が2017年も開催されます! 2016年も相変わらず2000点を超えるコンピュータ書が刊行されました。その中から注目したい作品を数十冊ほど選び出し、1時間半の間に紹介し倒すというコンピュータ書好きのコンピュータ書好きによるコンピュータ書好きのための本企画。おかげさまでいよいよ9回目、10周年まであと一歩というところまでやってきました。 そんなわけで、今年も「このコンピュータ書がすごい!2017年版」と銘打って、この2016年に発売されたコンピュータ書を振り返ってみたいと思います。今年はランキングのご紹介は少なめにしつつ、その分注目本やいろんな意味で気になった
はじめにこんにちは、Wantedly でエンジニアをしている南です! 突然ですが、2016 年もあと少しで終わりです。皆さんは明日から始まる3連休、またその後に訪れる正月休みをどうお過ごしの予定でしょうか? 「実家に帰ってゆっくりする」や「街に繰り出して楽しく過ごす」などいろいろな過ごし方があると思いますが。。。エンジニアであれば、「長期休暇は技術書を読みまくるぞ」という考えの方もいるのでは無いかと思います。むしろ、真のエンジニアであれば、長期休暇は技術書を読むためにあるといっても過言ではありません。 そこで今日は、長期休暇で読むのにぴったりなオススメ技術書を紹介してみたいと思います! テーマは「低レイヤーの仕組みを知る」今回選ぶ技術書のテーマは、「低レイヤーの仕組みを知る」です。 ソフトウェアの開発をする際、僕らは様々なものを利用します。Rubyの様なプログラミング言語、Rails など
RubyAdventCalendar2016 12/15の記事です。 最初に PHPを今まで長い間書いてきて、そろそろRubyを勉強しようと思っている人向けです。 PHPではこうだけどRubyの場合はこう。という流れで基本的には進めていきます。 私自身も勉強を始めてまだ日が浅いので、ツッコミあったらどんどんください。 本記事はRubyを網羅する事を目的にはしていません。 versionについて 実行しているバージョンは以下の通りです。 ☁ ~ php -v PHP 7.1.0 (cli) (built: Dec 14 2016 00:12:28) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies ☁ ~ ruby -v
Update: There is a nice discussion on Hacker News about this blog post. As a developer I think it is important to stay up to date with new developments. But mostly I love learning new things ;-) This means to be on the lookout for current trends in the tech industry, guessing their potential and trying them out. Sometimes I’m right. For example: A few months ago, adopting GraphQL turned out to be
Linux Advent Calendar 2016、21日目の記事です。 以前、NEW GAME! Ops実現に向けてSlack Botサンプルを作る記事を書いたことがあったのですが、最近またSlack Bot熱が上昇してきました。 というのも、ここ最近、某社のAdvent Calendarをひたすら書くという日々を過ごしていて、その記事ネタの一つとしてSlack Botでビルドを実行するサンプルスクリプトを書いてみたところ、思っていたよりも便利で「これが...Botの能力(ちから)...!」と感銘を受けたワケです。 そこで今日のLinux Advent Calendarでは、NEW GAME!をインスパイアしつつ、Slack BotからLinuxカーネルをビルドする例を紹介しようと思います。 LinuxカーネルのビルドをSlack Botから実行する まずは実行例 まずは実行例を示しつ
私が管理しているサーバー上で動く、管理用のツールだったりバッチ処理だったりがいくつかあります。 課題 Rubyで書きたい Ruby on Rails で開発しているチームで運用しているサーバーなので、おのずとそういったツールも Ruby で作られる事が多いです。1 処理にもよりますが、シェルスクリプトではなく慣れている Ruby で書きたいのです。 Rubyのインストールが必要 Rubyで書きたいとなるとサーバーに Ruby のインストールが必要になります。 Ruby on Railsのアプリが稼働しているサーバーなら、当然 Ruby もインストールされているのですが、そうでないサーバーもあります。OS のパッケージマネージャーで入る Ruby は古いことも多いので rbenv など使ってインストールすることになります。2 シェルスクリプトのツールを使う場合と比べるとインストール直後のサー
[edit] 要約 URI (Uniform Resource Identifier) のためのライブラリです。 関連 RFC 以下は実装の際に参照されている RFC であり、最新の RFC であるとは限りません。 [RFC1738] Uniform Resource Locators (URL) (Updated by [RFC2396]) [RFC2255] The LDAP URL Format (Obsoleted by [RFC4510], [RFC4516]) [RFC2368] The mailto URL scheme [RFC2373] IP Version 6 Addressing Architecture (Obsoleted by [RFC3513]) [RFC2396] Uniform Resource Identifiers (URI): Generic Syn
この記事は、システムエンジニア Advent Calendar 2016 - Qiita の23日目の記事です。 昨日は @yy_yank さんの 気負わず普通にテストしよう でした。 明日は @koduki さんです。 はじめに 複数ユーザが触るアプリケーションを作る場合、同時にデータが更新された場合の制御は避けては通れません。 この制御はスレッドセーフとか同時更新とか色々な観点で考えないといけないのですが、いまいちそのあたり自分自身の中できれいに整理できていませんでした。 なので、この機会に同時に更新される場合の排他制御について、自分なりに整理してみました。 まえおき 説明に使用する言語は Java です。 説明のためにシーケンス図っぽいものを使っていますが、 UML の厳密な定義には従っていません。図が描きやすいからシーケンス図を利用している、ってだけなので厳密な記法ルールに従ってい
This document provides an introduction to JanusGraph, an open source distributed graph database that can be used with Apache HBase for storage. It begins with background on graph databases and their structures, such as vertices, edges, properties, and different storage models. It then discusses JanusGraph's architecture, support for the TinkerPop graph computing framework, and schema and data mode
自分の頭を整理するために書いておく。正しいかは知らない。 まず前提として、Javaの内部表現としての「文字」は16ビット長のUTF-16ということがある。そうすると、普通に長さを取得すると、UTF-16のサロゲートペアで表される文字は2文字と扱われる。 また、文字には合成済み文字という話がある。「か」の後に濁点を結合することで、「が」を表現するみたいなやつ。 これらから、どこまで考慮して文字列の長さを取得するかでやり方が違う。 UTF-16のサロゲートペアを考慮しない UTF-16のサロゲートペアを考慮する 合成済み文字を考慮する 以下試したサンプルコード。 import java.text.BreakIterator; public class UnicodeCharSample { public static void main(String[] args) { // 𪛀あが St
package jp.toastkid.springv; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class Controller { @RequestMapping("/") public String index() { return "this is Spring Boot Sample!"; } } apply plugin: 'application' apply plugin: 'spring-boot' mainClassName = "jp.toastkid.springv.Main" repositories { jc
Indonesian Twitter users have been tweeting about the “Om Telolet Om” phenomenon almost non-stop for 12 hours. The telolet has become a national trending topic. The meme appeared on Facebook almost a month ago and what may seem like just another funny but meaningless local meme garnered international attention when professional DJs began to pick up on the Indonesian “telolet” meme with producer/DJ
今年もぼちぼち終わりですね。さて、毎年1個くらいプライベートで何かWebサービスなりアプリなりリリースすることを目標にしてるんですが、今年はちはやふるにはまったのがトピックとしてあって、百人一首に興味が湧いたので暗記用のアプリを作りました。 ※ちなみに ちはやふるはこちら。勧められて観る前は恋愛ものかなと思ってたらスポ根青春もので展開が熱かったです。開発合宿で聖地巡礼したりしましたね。 アプリはこちら (Androidのみ) play.google.com 技術的な話 仕事ではkotlinでアプリ書いてるので、今回は一周回ってJavaで書きました。Jack & Jillとか新しいツールも出てきてるし、メインストリームに乗っかったアプリを手元に置いておきたいなあという気持ちからJavaにしてます。 技術的には目新しいことはしてないのですが、個人的に今回初めて使ったのは以下のもの Orma R
You are viewing the documentation for Play 1. The documentation for Play 2 is here. ドキュメントPlay framework 1.2.5 ドキュメントへようこそ。バージョン 1.2.5 リリースノート を確認してください。 はじめようPlay framework のはじめの一歩を学ぶ楽しい 5 分間です。 Play framework の概要動画を観てみようPlay でできる 5 つのすごいこと利便性 - 細部は機能と同様に重要よくある質問インストールガイドお好みの IDE を設定しようはじめてのアプリケーション - 'Hello World' チュートリアルサンプルアプリケーションチュートリアル - リアルな Play アプリケーションを一歩ずつ作成するガイド'Yet Another Blog Engin
Java EE Advent Calendar 2016 の 12/22 分となります。今年はすっかり登録を失念しており、急いでこの日にねじ込みました。昨日分は @TTakakiyo さんの「WebSphere LibertyでJava EEアプリケーションをOne-JAR化する」でした。 さて、Java EEの今年の動きは予想通りさほど大きくなく、どちらかと言うとJava EE 7が着実に企業システムに拡がっていったのかな? という感じの一年でした。それはそれで実業務を担うべく誕生したJava EEの、企業システムの基盤としては正しい状況だと思います。ただ、一方で日進月歩のダイナミズムという観点だと、何となく物足りない感じもします。みんな麻痺してる気もします。 余談ですが、実際の企業システムを開発・運用・管理している側からすると、ちょくちょく仕様が変更になるのは全く迷惑以外の何者でもあり
Javaで順列生成アルゴリズムを実装する - アルゴリズム学習(その1) - $shibayu36->blog;で順列を作ったので、続いて組み合わせを作ってみた。 考え方 いろんな考え方があると思うけど、僕が最初に思いついたのは次の考え方。 [ 1, 2, 3, 4, 5 ]から3つ取り出す組み合わせを考える まず、1を取り出して、[ 2, 3, 4, 5 ]から2つ取り出す組み合わせのリストを作り、全てのリストの先頭に1を結合する 次に、2を取り出して、[ 3, 4, 5 ]から2つ取り出す組み合わせのリストを作り、全てのリストの先頭に2を結合する 組み合わせなので、前に取り出した1を使ったらだめなことに注意 次に3を取り出して、[ 4, 5 ]から2つ取り出す組み合わせのリストを作り(つまり [4, 5]だけど)、全てのリストの先頭に3を結合する 1, 2, 3を取り出して作り出したリ
2016 - 12 - 22 ブログをカスタマイズ・・・したのか? プログラム list Tweet やっぱりデザインを変えたい!! こんにちは。 リア充 ブロガーのパンです。 今日は年末で大忙し。 つまり会社で1人お留守番でした。 私零細企業勤めですが一応SEを名乗ってます。 正式にはなんなのかわかりません。 私の仕事は以下の通り 1・新規or顧客へ営業 2・システムの提案 3・システム設計 4・ システム開発 5・ システムテスト 6・システム納品 7・システムメンテナンス (1に戻る) これを1人1人でやらなきゃいけない なんとも変な会社でして。 今日は皆さん外に出てかれました。 とういことで・・・ ブログカスタマイズじゃーーーー ふむふむ。 なにからやろう。 人と同じなのが嫌いな私 でもそんなに技術がない。 簡単に変えれるものはないかなぁ。 むむむ 読者ボタンの変更だと・・・ まじ
RxJavaチームは18ヶ月の開発サイクルを経て彼らのリアクティブJavaフレームワークのバージョン2.0をリリースした。このリリースは重要なマイルストーンをもたらす。RxJavaはReactiveXファミリーのライブラリとフレームワークの一部である。これは彼らの言葉では"オブザーバパターンとイテレータパターン、関数型プログラミングからのもっともよいアイデアの組み合わせである"。プロジェクトの"2.0では何が違うのか"はすでにRxJava 1.xに親しんでいる開発者にとってよい手引である。 RxJava 2.0はRxJavaの真新しい実装である。このリリースはリアクティブストリーム仕様、ネットワークプロトコルと同様に実行環境(JVMとJavaScript)を対象としているノンブロッキングなバックプレッシャーで非同期のストリーム処理の標準を提供するための新提案をベースにしている。 リアクティ
アルゴリズムを勉強しようと思って、以下の本のアルゴリズムをJavaで自分で考えて再実装するという取り組みをやっている。以下の本は基本的なアルゴリズムが簡単に説明されていて、しかも薄いのでやりやすい。2011-09-22を見て購入した。 Java データ構造とアルゴリズム基礎講座 作者:長尾 和彦技術評論社Amazon それで最初に順列生成の話が出てきたので、まずはこれを作ってみた。実装は https://github.com/shibayu36/algorithm-study/tree/master/java-data-structure-and-algorithm においてある。 順列の内容をprintlnする関数を作る まずは簡単に順列の内容をprintlnする関数を作ってみる。 この本に書いてあった説明がいまいちわからなかったので、順列生成のアルゴリズムを説明しているブログ記事とかを
あるAnonymous Coward曰く、 OracleによるSUNの買収から実に6年を経て、ついにJava利用企業をターゲットにしたライセンス料請求が始まったという噂が今週Slashdotなど一部で話題となっているようである(Register)。 日本語で解説されている方のツイートによると、どうもJavaSEの本体は無料であるが、JavaSEのダウンロード時に一緒にダウンロードされるAdvanced Desktop、JavaSE Advanced、Suiteといった機能は本来有料であり、無料だと思ってこれらの機能まで使っていた企業に対してライセンス料を請求しだしたという話らしい。Oracleはライセンス料徴収のために20名の新規スタッフを雇ったとも報じられており、ある企業は10万ドルの支払いを要求され、最終的に減額されたものの3万ドルを支払ったという。 Oracleがなぜ今になってこうし
I have to make a REST call that includes custom headers and query parameters. I set my HttpEntity with just the headers (no body), and I use the RestTemplate.exchange() method as follows: HttpHeaders headers = new HttpHeaders(); headers.set("Accept", "application/json"); Map<String, String> params = new HashMap<String, String>(); params.put("msisdn", msisdn); params.put("email", email); params.put
この記事はJavaScript Advent Calendar 2016の記事です。 今回は、2017年、新規にJavaScriptを書くならどんな設計をするか、というテーマで書いてみようと思います。2017年といっても、しばらくはこんな感じのアーキテクチャでやってきましたので、どんな構成でJavaScriptを設計してきたかという方が正しいかもしれません。基本的にはSPAをベースとしています。 また、最新のイケてる技術バリバリ使ってやるぜ、というよりは、堅牢で、はやりが変わってもメンテができるということを意識してみました。 DOMのレンダリング Virtual DOMを代表とした、DOMのレンダリングを行うライブラリをなにか採用します。特に理由がなければReactでいいと思います。Virtual DOMではありませんが、AngularでもDOM管理においてはさほど違いはありません。この2
Web開発者、アプリ開発者に捧ぐReactの提唱する"learn once, write anywhere"はどこまで本当なのか?JavaScriptAndroidiOSReactreactnative 最初に この記事は React Native Advent Calendar 2016 23日目です。 釣りなタイトル失礼します。 以前、FacebookまじでReact Nativeやるってよ!でFacebookにとどまらず、Instagram, airbnbのアプリがReact Native製に置き換わっていることを投稿しました。 個人的に大きいニュースだと思ってます。 なぜなら安定稼働しているiOS/Androidのナレッジとチームを棄ててまでも、乗り換えを選択する理由がReact Nativeにはあると言ってるものだからです。 様々な理由があると思いますが、大きな要因は"learn
Webデザイナーになるにはどうしたら良いか。この記事では手っ取り早くWebデザイナーになる方法を紹介する。 1. Webデザイナーを目指す前に考えておきたいこと まず、年単位でWebデザインを学ぶような専門学校に通う必要はない。Webデザインスキルはもっと低コスト・短期間で身につけることができる。あなたがまだ高校生で、Webデザイナーになりたいからという理由で専門学校に行くことを考えているなら、それはあまりおすすめしない。 それよりもWebデザインとは全く関係ない分野の大学に行き、教養を身に着け、その片手間でWebデザインを学んだ方が、よっぽど良い。スキルと知識だけに秀でるより、人のことや、世の中がどのような仕組みで動いているかについて理解し、豊かな人生経験を積んで、様々な感情の起伏をたっぷり味わっておいた方が優秀なWebデザイナーになれる。ただプログラミングができ、サイトが作れるだけのW
この記事は「WACUL Advent Calendar 2016」の23日目です。 今年の10月からWACULでフロントエンドエンジニアをしている@bokuwebと申します。 今回はコンポーネント単位でのvisual regressionテストについて書いてみたいと思います。 概要 単体テスト時にコンポーネントのキャプチャーを取り、差分を取るvisual regressionテストを行うために、karma-nightmareとreg-cliというツールを作りました。まだ実験的ではありますが、それらを用いたテストや作成時に検討したことなどを書いてみます。 そもそもViewのテストどうしてます? フロントエンドやっている方と話すときに、よく、Viewのテストをどこまで、どんなふうにやるか?というざっくりした質問をしてみたりします。「お、その話題ですか!」というリアクションする方もちらほらいて関
phina.jsとは ブラウザ上で動作するマルチプラットフォーム向けのゲームライブラリです。 言語はJavaScriptです。 ランディングページ | http://phinajs.com/ github | https://github.com/phi-jp/phina.js gitter (slack のようなgithubのチャット) | https://gitter.im/phi-jp/phina.js ドキュメント | http://phinajs.com/docs/ アドベントカレンダー 2015 | http://qiita.com/advent-calendar/2015/phinajs アドベントカレンダー 2016 | http://qiita.com/advent-calendar/2016/phinajs ドキュメントがほとんどできてないので、サンプルやソースコードを
「レターパック510を箱形にする思い切ったやり方が郵便局にあって衝撃を受けた」というツイートが話題となり、6万5000件以上の“いいね”を獲得しています。 左がゆうパック、右がレターパック510で作った箱の見本 島根県の松江中央郵便局に掲示してあったライフハックを紹介したのは、らんちぇ@冬コミ一般参加(@lunch5618)さん。「レターパック510『厚幅及び中厚幅タイプの作り方』」と題さた掲示は、封筒型になっているレターパックに折り目を入れていくと、ゆうパックの小サイズ箱より一回り小さい箱を作ることができるというライフハックでした。なお、らんちぇさん自身はこの方法を活用したことはないとのことでした。 郵便局に掲示されていた「レターパック510『厚幅及び中厚幅タイプの作り方』」 レターパック510は、A4サイズ・4キロまで全国一律料金で信書も送れるサービスですが、箱型にできるとなると使用用
公私共に、会話のうまい人を、たくさん見てきた。会話はコミュニケーションの基礎であり、また終着点でもある。上手であることに越したことはない。 ではどうすれば、会話が上手い人、あの人と話すのが楽しいね、と言われる人になり得るのだろうか。 一説によれば「聞き上手となるべき」という人がいる。ウンウン、と相手の話をよく聞き、相手に気持ちよく喋ってもらうことに注力せよ、という。 しかし最近、それはどうも違う、と感じることもある。聞き上手であることは特定のシーンにおいては重要なのだが、必ずしもそうではない。 例えば私は普段「聞き上手」の人をあまり求めていない。 なにか観察されているのでは、と勘ぐってしまうからなのだが、むしろ話上手、と言われる人の方が与しやすく、会話も続くのだ。 また、世の中に散らばる「会話のしかた」は、いかにもマニュアル的で個別のシーンで使い勝手が悪い。だから最近まで私は「会話に王道な
border-radiusとは block要素の角を丸くするcssです。 指定した長さを半径として、ブロックの四隅が丸くなります。 また、十分大きな長さを指定すると、block要素を円形に切り取ることができます。 参考:https://developer.mozilla.org/ja/docs/Web/CSS/border-radius 発生した現象 以下のコードで、div要素を丸く切り取って表示しようとしました。 <style type="text/css"> div { width: 100px; height: 100px; background-color: red; border-radius: 1000000000px; } </style> <div/> このコードはMac Chrome, Mac Safari,iOS Safari, iOS Chrome, Android
これはTensorFlow Advent Calendar 2016の記事です。 といっても、皆さんみたいにTFで面白いもん作ってみた、みたいなネタがない(TF力が足りない)ので、TensorFlowとMLサービスのエバンジェリストとしての2016年の布教活動をまとめたいと思います。 ちなみに私は2012年〜2014年はGCPのソリューションアーキテクトとしていろんなソリューションを作るのがお仕事でしたが、2015年からはデベロッパー・アドボケイトとして布教活動とコミュニティ支援活動を担当しており、もうすぐ2年(Googleに入って6年)になります。 2016年に参加したイベント 2016年は国内外合わせておよそ120件のイベントでお話させていただいたのですが、そのほとんどがTensorFlowとCloud ML、そしてVision APIやSpeech API等のML APIの紹介でした
はじめに この記事は CrowdWorks Advent Calendar 2016 23日目の記事です。 クラウドワークスでRuby、JavaScriptを主に書いているエンジニアの @suzan2go です。 直近ではクラウドワークスの新規事業 WoW!me(ワオミー) の立ち上げをやっていました。 WoW!me(ワオミー) では色々と技術的な挑戦をしているのですが、今回は新規事業でのデータモデリングについてお話したいと思います。 新規事業におけるアプリケーション 新規事業において特にプロジェクトの最初のうちは仕様自体がフワッとしている場合も多く、最初から完璧な設計を行うのは難しいと思います。少しずつ仕様が明確に、あるいは増えていった結果、最初は綺麗に保てていたアプリケーションコードが気づいたらとても複雑になってしまっていた・・・ということは結構あるあるなのではないでしょうか。 特に要
これはG*Advent callender 2016の記事です。 前日は@Ziphilさんの記事でした。明日は@ hikariruさんの記事です。 去年のG*Advent Calendarでは、本ブログではReact Meets Grails 〜ReactはエンタープライズSPAの夢を見るか?〜 - uehaj's blogと題して、バックエンドを「GrailsのRestサーバ」+「React SPAによるフロントエンド」という組合せをボイラープレート(雛形)として実装してみました。 今年もこの路線を拡充してみます。 背景 解決策 作ったもの 実行方法 去年からの進展 特徴 つまりどういうこと? JSONSchemaとは 今後やりたいこと まとめ 背景 GrailsにはScaffold機能、すなわちCRUD操作を行なうためのWeb画面の自動生成機能があり、確かに便利なものではあるのですが、
Photo by Mysudbury.ca Ouisudbury.ca こんにちは、谷口です。 転職活動での面接、現場のITエンジニアが面接官をする場合が多い一次・二次面接などはまだしも、最終面接・役員面接ってかなり緊張しますよね。 エンジニアならまだしも、社長や役員の人たちが応募者のどこを見て何を考えているのかって、よくわからない……。 というわけで、今回は実際にpaizaで求人を出している企業の役員の方々に聞いてきたお話をもとに「最終面接で面接官の役員は何を考えているのか?」「面接前にはどんな質問を想定しておくとよいのか?」を考えていきたいと思います。 最後に、最終面接で失敗しないためのチェックリストもあります。 ■最終面接の面接官=役員は何を考えてるの? Photo by aiesecgermany エンジニア求人に限らず最終面接では、ほとんどの企業で役員の方が面接官をされます。(ち
トレタ Advent Calender 2016 の21日目の記事です。 変更履歴のように、そのときの状態を保存しておいて、過去データを遡ってそのときの状態を表示したいということがあったりあます。関連を含まない場合はPaperTrailを使ったりしますが、関連のデータも含めたい場合はなかなかいい方法がなくて困っていました。PaperTrailに関連を保存するExperimentalな機能としてありますが、複雑なつくりになっていたり、読み出すのにけっこうな量のクエリが必要だったりして、少し試した感じだとなかなかきびしそうでした。 単に関連も含めてデータをシリアラライズしたい場合は、実はas_json/to_jsonのincludeオプションを使えば簡単にできてしまいます。あとは、そこからもとデータを復元できればいいので、その部分をつくりました。 swdyh/toar: Deserialize
webサーバー、アプリケーションサーバー、Rack、Unicorn、Puma、Railsと言った用語や概念の理解がこんがらかっているように見えたので、このあたりをきれいに説明している記事を探してみました。 おそらく以下の記事が回答にぴったりだと思います。 http://www.justinweiss.com/articles/a-web-server-vs-an-app-server/ この記事の中からnakanishiさんの理解に役立ちそうなセクションをピックアップして、ざっくり翻訳してみました。 webサーバーとは webサーバーはユーザー送られてきた自サイトへのリクエストを受け取り、なんらかの処理を加えるプログラムです。そして、場合によってはあなたのRailsアプリケーションにリクエストを投げます。NginxとApacheは最も有名なwebサーバーです。 CSSやJavaScript
Lambda 関数ハンドラーは、イベントを処理する関数コード内のメソッドです。関数が呼び出されると、Lambda はハンドラーメソッドを実行します。関数は、ハンドラーが応答を返すか、終了するか、タイムアウトするまで実行されます。 Python で関数ハンドラーを作成するときは、次の一般的な構文が使用できます。 def handler_name(event, context): ... return some_value 命名 Lambda 関数の作成時に指定される Lambda 関数ハンドラー名は、以下から取得されます。 関数ハンドラーには任意の名前を付けることができますが、Lambda コンソールのデフォルト名は lambda_function.lambda_handler です。この関数ハンドラー名には、関数名 (lambda_handler) と、ハンドラコードが保存されているファイ
この記事は Recruit Engineers Advent Calendar 2016 の22日目の記事です。 昨日はmookjpさんのLet It Crashとは何かでした!ゴイスー! 本日はサーバサイドエンジニアとして従事している私がAWSでインフラ構築をした記事となります。 この記事を書く1週間程前はそろそろ記事の下書きをしておくかー。 と、やる気に満ち溢れていたのですが、悲しきかな・・・PS4 proが届き当時の気持ちはどこかに置いてきてしまったようで、急いで先程記事を書き終えました。 はじめに 日々やらねばいけないことが満ち溢れている中、運用やサーバトラブルに対して時間は割きたくないものです。例えば、EC2の突然死やメンテナンスです。 限られた時間の中でより効率的に時間を使いたいという欲求を皆様お持ちではないでしょうか。 そこで楽をしようと思い立ち、本エントリーの構成にしたので
はじめに F.O.X事業で、ビッグデータ、インフラ全般、SRE的な事をやってる茂木(@tkmoteki)です。 CyberAgent Developers Advent Calendar 2016 21日目の記事です。昨日は @matsuokah さんのImeFragmentというライブラリを公開しました!キーボード開発でもFragmentを使う!でした。 CyberZ公式エンジニアブログでは、ちょうど1年ほど前にオンプレミス環境のHadoopクラスタ全台のメジャーアップグレードについて書きました。 今回は、オンプレミス環境のHadoopクラスタを、クラウド上にCloudera Directorを使って再設計をする話です。 背景 オンプレミス環境以外でのHadoop Cloudera DirectorとCloudera Manager,クラウド上でのHadoop利用について インフラ構成
こんにちは。Mackerel セールスエンジニアの id:a-know です。 今週末はクリスマスですね!一足早いクリスマスプレゼント......というわけではないのですが、Mackerelチームメンバーに新しいアパレルグッズ(トレーナーやパーカーなど)が配られました! 私も今、新しいパーカーを着てこれを書いているのですが、前にも増してクオリティが高く、とてもあたたかいです! 次の公式イベントでは、きっとこの新アパレルグッズを来てみなさんをお迎えすることになると思います。今からその日が楽しみです! そうそう、クリスマスといえば、Mackerel のアドベントカレンダーもいよいよ佳境に近づいています!こちらもお見逃しなく! Mackerel Advent Calendar 2016 - Qiita それでは、今週のアップデート情報です。 AWSインテグレーションが Redshift に対応し
Amazonがレジでの決済不要で棚から取り出した商品をそのまま持ち帰ることができるというコンセプトストア「Amazon Go」をYouTubeムービーで発表しました。このAmazon Goは、世界中の小売業を完全に支配下に置くというAmazon帝国設立のための重要な第一歩であると指摘するムービー「Amazon Go Is About Way More Than Groceries」をNerdwriter1が公開しています。 Amazon Go Is About Way More Than Groceries - YouTube 産業界全体を変革するにはどうすれば良いでしょうか? Amazonのジェフ・ベゾスにとってみれば…… 「Amazon Go」こそがその手段です。 Amazon Goは3つのプロセスから成り立っています。その1は「ムービー戦略」。 レジがなく商品をそのまま店舗外に持ち出
Amazon Web Services ブログ Amazon EFS の更新 – Direct Connect を介したオンプレミスアクセス 昨年、Amazon Elastic File System をご紹介 (Amazon Elastic File System – Amazon EC2 の共有ファイルストレージ) し、本年初頭には本番環境での利用可能を発表 (Amazon Elastic File System – 3 つのリージョンで本番環境での利用が可能) しました。本年初頭の始動後、何千人もの AWS のお客様が、クラウド上の共有ファイルストレージを設定、スケーリング、および運用するためにこれを利用してきました。 そしてこの度、シンプルかつ信頼性が高い AWS Direct Connect(専用線接続サービス) を介したオンプレミスアクセスの紹介により、EFS はより便利なもの
はじめに ABEJAでフロントエンド開発をやっている清水です。 先月末から今月初にかけてラスベガスで開催された AWS re:Invent に行ってきました。 この記事は、12月14日に弊社が運営しているコミュニティ主催で開催されたイベントで話した内容の補足になります。 https://abeja-innovation-meetup.connpass.com/event/45987/ re:Invent について re:Invent は年に1度開催されるAmazon Web Service 主催の開発者向けカンファレンスで、 今年は11/28〜12/2までラスベガスで開催されました。 行く前の準備 今回はABEJAからは一人で参加しました。私は英語を話すのが得意ではありません。 そして最近はフロントエンドを専門にやっているため、たくさんあるAWSのサービスを全部キャッチアップするのは難しく
Amazon Kinesis Firehose では、データストアにロードする前にストリーミングデータを準備する設定が可能になりました。この新機能により、お客様独自のデータ処理パイプラインを構築することなく、データソースから送信先データストアで必要な形式に raw ストリーミングデータを簡単に変換することができます。 この機能を使用するには、AWS マネジメントコンソールの Amazon Kinesis Firehose 配信ストリームの設定タブで、AWS Lambda 関数を選択するだけです。Amazon Kinesis Firehose は自動的にその関数を各入力データレコードに適用し、変換されたデータを送信先にロードします。 Amazon Kinesis Firehose は、Apache ログやシステムログなど一般的なデータソースを JSON 形式や CSV 形式に変換するための、
12月20日、エフセキュアはURLチェックAPI「F-Secure Security Cloud API for AWS」をAWS Marketplaceで提供開始する。Amazon API Gateway上で実行され、クラウド内の悪意のあるコンテンツのURLをチェックし、コンテンツタイプ別に分類する機能を持つ。 F-Secure Security Cloud API for AWSにより、悪意のあるリンクはブロック・検疫され、管理者がさらなる分析と処理を行なうためにログに記録し、フラグを付けることが可能。また、URLはコンテンツのタイプに応じて分類され、ヘイトやアダルトなど不審なコンテンツにはフラグが付けられる。こうしたアプローチにより、クラウドサービスがマルウェアや不要なコンテンツを広めることを防ぎ、IT管理者は脅威の調査や対応が可能になる。 APIはデジタル脅威分析システムである「F
AWS Developer Tools Blog Upgrading from Version 2 to Version 3 of the AWS SDK for Ruby Recently we announced the modularization of the AWS SDK for Ruby. This blog post will focus on how to upgrade your application to use the new service specific gems. This blog post is divided up into sections based on how you currently depend on the AWS SDK for Ruby today. Find the section below that describes ho
【新機能】Amazon Kinesis FirehoseにAmazon Lambdaを使ったデータ変換機能が追加。Apacheログが簡単にJSON形式に変換可能に! こんにちは、せーのです。今日はKinesis Firehoseになかなか強力な機能が追加されたのでご紹介します。 これを待っていた 今回ご紹介するのは「データ変換機能」です。所謂ETL(Extract、Transform、Load)処理と言われるもので、流れてくるデータを使いやすい形に加工した上で対象となるデータベースやデータレイクに書き出すものです。 例えばApacheのログデータをS3に蓄積しておいて、後ほど分析に使いたいとします。Apacheのログってこんな感じですよね。 127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0
この記事は、Serverless Advent Calendar 2016の16日分(だったはずのもの)です。 なんとかクリスマスまでには間に合ったのでお許しくださいorz まとめ AWS Lambdaの功罪で混在されがちな概念が整理されて議論されるようになった 提供されるBaaSのみを使ってリッチアプリケーションを開発する手法 フルマネージドなFaaSの実行環境 高水準コンポーネントをイベントで接続するリアクティブシステム 主要各社のFaaS実行環境が揃ってきた AWS Lambda Azure Functions (2016-11-15 GA!) IBM OpenWhisk (2016-12-14 GA! おめでとうございます!) Google Cloud Functions (2016-02-13 Alpha) 国内のニフティクラウドからも サーバレスアーキテクチャにまつわる様々な動
はじめに 前回はWordPressをNew RelicのAPMとINFRASTRUCTUREを使って監視してみました。 New RelicのAPMとINFRASTRUCTUREを使って監視してみました(前半) New RelicのAPMとINFRASTRUCTUREを使って監視してみました(後半) 今回はWordPressのPlugin機能を使用して、画像や動画などのメディアファイルをAWS S3に保存し、InfrastructureのIntegrationsでAWS S3を統合監視してみたいと思います。 AWS S3にアップロードするPluginとしては、 Amazon S3 for WordPress with CloudFront WP Offload S3 Lite などがありましたが、導入が簡単そうな"Amazon S3 for WordPress with CloudFront
先日行われたre:Invent 2016で発表されたAmazon Athenaを利用して、Apache HTTP Serverのアクセスログを解析するまでの手順を紹介します。 Athenaで検索するためには、ログファイルをAmazon S3に配置しておく必要があります。LinuxからS3への転送にはfluentd(td-agent)を利用しました。 やりたいこと Amazon Athenaを利用して、Apacheアクセスログ(combined log)に対しての検索クエリを実行できるようになりたい 前提環境 LinuxはAmazon EC2のRedHat Enterprise Linux 7.3 AMIから起動 EC2には、S3にPutObjectできる権限を持ったIAM Roleを紐付けておく Amazon Athenaはus-west-2(Oregon)リージョンで実行 手順概要 OS
Again, we try to avoid most established choices such as Django, Flask, etc. that are kind of standard nowadays. Also, some of these libraries date prior to 2016, but either they had an explosion in popularity this year or we think they are great enough to deserve the spot. Here we go! 1. ZappaSince the release of AWS Lambda (and others that have followed), all the rage has been about serverless ar
11月末、Amazon Web Services(AWS)が米国で「re:Invent 2016」を開催していたちょうど同じ時期に、英国ではヒューレット・パッカード・エンタープライズ(HPE)が、1万人以上の顧客やパートナーを集めたプライベートイベント「HPE Discover 2016 London」を開催した。 Discover Londonの基調講演に登壇したHPE CEOのメグ・ホイットマン氏は、メソスフェア(Mesosphere)をはじめとするテクノロジースタートアップ、さらにマイクロソフト(Microsoft)などのパートナーを次々とステージに招き入れ、AWSの「ベンダーロックイン」に対抗する“包囲網”を張って見せた。 AWSが市場を開拓し、現在も高いシェアを持っているIaaSは、サーバー、ストレージなどのITインフラハードウェアをを提供してきたシステムベンダーに大きなインパク
メインで使っているのはMacBookPro Late 2013だが(そろそろ買い換えたい), MacBookPro Early 2015をバイト先で支給されて自由に使えることになったので, LaTeX環境を構築しようと思った. MacTexをインストールしようと思っていたけど,「それDockerでよくない?」と言われて確かに,となった. なぜ今まで気が付かなかったんだろう. “texlive docker” で適当に検索をかけると既存のイメージがヒットした. harshjv/texlive-2015 public - Docker Hub これをpullして手持ちの.texをコンパイルしてみると,includegraphicsで エラーを吐かれて画像が全く出力されなかった. どうやらImageMagickあたりが足りていないようだったので, 必要なパッケージを追加インストールするだ
Docker イメージの最適化問題 前提 1. 実行環境は頻繁に捨てられる オートスケールでの増減 CodeBuild 使う場合とか サーバーの故障、不具合 ぼくが使ってるゴミクラウドみたいなやつではすっげー頻繁におきてる 前提 2. 面倒なことはしたくない そりゃまあね。 すると? 綺麗に作られた Docker イメージはベースとアプリケーション固有部分が分離していて転送が最適化されるみたいな話はあるんですが、それはそうとして頻繁にベースごと吹き飛ばされるという環境で生活している人は多いのではないかと思う。 このような情勢のもとではいろいろ頑張って最適化したところでダメなときはダメだしみたいな話になってくる。 というわけでなのでこのへんあんまり神経質にやる必要はないと思う。普通に書けばまあ普通にある程度キャッシュされますよ以上のことを考えなくていいんじゃないかな。そういうところ神経質に気
Collecting log files from within containers with Fluentd and sending them to the Google Cloud Logging service. Note that this only works for clusters running on GCE and whose VMs have the cloud-logging.write scope. If your cluster is logging to Elasticsearch instead, see this guide instead. This directory contains the source files needed to make a Docker image that collects log files from arbitrar
この連載は カップめんを待つ間に、電車の待ち時間に、歯磨きしている間に“いまさら聞けない”ITトレンドが分かっちゃう! 今さら聞けないITの最新トレンドやビジネス戦略を、体系的に整理して分かりやすく解説する連載です。「この用語、案外、分かっているようで分かっていないかも」「IT用語を現場の社員にもっと分かりやすく説明できるようになりたい」――。情シスの皆さんのこんな課題を解決します。 コンテナ管理ソフトウェアが、ハードウェアやOSごとの違いを吸収してくれるため、既にアプリケーションやミドルウェアの稼働が確認されているコンテナであれば、他のサーバに移して動かしても確実に動くことが保証されます。(※参照: コレ1枚で分かる「仮想マシンとコンテナの違い」) この特性を利用すれば、アプリケーション開発者は、OSやインフラの違いを意識することなく、アプリケーションを開発することができます。また、運用
CTF開いた 某コミュニティでCTF開いた やるきっかけとしては ISUCONで人権を失う SECCON予選で人権を再び取り戻そうという決意を固める でもCTF力全然ないし練習会しよう という感じ。 学生の頃にちょっとだけCTFに参加したことがあったのと、ちょっと使ってみたいOSSがあったので主催した。 忙しいのに合間を縫ってyagihashooには問題を作ってもらったり、当日参加して解説してくれたりした。ありがとう。 ちなみに同コミュニティではISUCONの練習会もやってたり(こちらはhoto氏が開いてくれた\(^o^)/)。 ISUCON 練習会をするために InfluxDB + Grafana でポータルサイトを作った - ほとラボ CTFを開いたきっかけ 一番のきっかけは私がずっと前からこれを使ってみたかったというのが実はあった。 github.com CTFをやったことある人はわ
An Article from Fluentd Introduction As you roll Docker containers into production, you’ll find an increasing need to persist logs somewhere less ephemeral than containers. Docker comes with a native logging driver for Fluentd, making it easy to collect those logs and route them somewhere else, like Elasticsearch, so you can analyze the data. Fluentd is an open-source data collector designed to un
MinecraftでDockerコンテナを管理するユニークなクライアント、Dockercraftの紹介です。DockercraftのためにDockerも簡単に解説します。冒頭にちょっとした寸劇があります。やってみたかっただけなんです、つい出来心なんです。Dockercraft: https://github.com/docker/dockercraft#00:00 ちょっとした寸劇#00:44 かんたんな紹介#01:32 Docker解説#04:08 Dockercraftであそぼう!#06:07 おしまいに----動画: limemidolinユーザーページ: user/163987Twitter: https://twitter.com/limemidolin
A Deep Dive Into Docker For Engineers Interested In The Gritty Details. Posted by Docker Saigon on Mon, Feb 29, 2016 In Internals, API, Tags lxc runc containerd cgroups iptables api This post was the basis for a joint event with the grokking engineering community in Saigon. The event was centered around DevOps, for our talk Docker Saigon needed to interest an engineering audience with how things t
半年くらい前に作業用のエディタをAtomからVSCodeに切り替えた。 TypeScriptに最適化されていてとても快適なんだけど、Atomで常用していたあるプラグインの代替となる拡張機能が無かった。 atom-regex-railroad-diagramsというプラグインで、正規表現をダイアグラムとして表示してくれるというもの。 かなしいことに私は正規表現が苦手で、書いたパターンが実際にどんな文字列にマッチするのかイマイチイメージできないのだが、このプラグインを使うと視覚的にわかりやすい形で書いたパターンを確認できていた。 VSCodeに移行してからも、正規表現を書くときだけAtomを起動してダイアグラムを確認するような生活を送っていたのだが、それもかなしいのでVSCode向けに同じような機能を持った拡張機能を作ってみることにした。 vscode-regex-railroad-diagr
フロントエンドの勉強のため、 Rails 5 + Angular2 + TypeScript + SystemJS の組合せでTodoアプリを作成しました。 作ったもの todo-rails-xxx-js 構成 GitHub - yassun/todo-rails-xxx-js: Todo samples by Rails 5 (API mode) and JS frameworks. 開発中は RailsAPI と Angular2 それぞれでローカルサーバを立ち上げて作業しています。 違うポートでの通信となるのでクロスドメイン問題を解決する必要があります。 今回はこちらのGemを使用しました。 GitHub - cyu/rack-cors: Rack Middleware for handling Cross-Origin Resource Sharing (CORS), which
ヘキサゴナルアーキテクチャとレイヤードアーキテクチャのざっくりとした違いとヘキサゴナルアーキテクチャの利点を説明する。 ヘキサゴナルアーキテクチャは主に六角形で描かれる、多角形の全辺が外部とのインターフェイスであり、内部にさらにアプリケーションレイヤーやドメインコンテキストといった1つ以上のレイヤーを持つアーキテクチャである。 層構造はレイヤードアーキテクチャと同じであり、要はレイヤードアーキテクチャを最下層を軸に一回転させて全方位に対して層構造の性格が変わらないようにしただけである。 ヘキサゴナルアーキテクチャは実装においてはレイヤードアーキテクチャと同じだが、設計を行う上でいくつかの認知的効果がある。 複数のインターフェイスを表現しやすい レイヤードアーキテクチャではインターフェイスは直線または長方形1つのインターフェイスレイヤーで表現されるため複数のインターフェイスを定義するにはこの
This article was peer reviewed by Dan Prince. Thanks to all of SitePoint’s peer reviewers for making SitePoint content the best it can be! Chrome extensions are small web applications that add features to the Google Chrome browser. They can extend and customize browser behavior, the developer tools or the new tabs page. Extensions can be downloaded from the Chrome Web Store. In this tutorial we ar
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました 最近、Markdownファイルで作成してHTMLプレゼンに展開するソフトウェアが増えています。便利なのですが、ちょっとしたアニメーションを追加したいなど既存のプレゼンソフトウェアで最後の仕上げをしたいこともあるでしょう。 そこで使ってみたいのがmd2googleslidesです。MarkdownファイルをGoogleスライドに展開してくれるソフトウェアです。 md2googleslidesの使い方 変換したスライドです。日本語も使えます。 背景画像を指定することもできます。 テーブル表示も行えます。 md2googleslidesでは他にも動画の埋め込みやコードの表示も行えます。Markdownを使ってコンテンツを作成し、後はmd2googleslidesでGoogleスライドに載
この記事は CAMPHOR- Advent Calendar 2016 23日目の記事です。 JS知識ほぼ0は言い過ぎかもしれないが、いわゆるモダンJSというものには縁遠く、つい最近まで jQuery をブラウザからぽちぽちダウンロードして適当に ajax とか使う人生を送ってまいりました。(当然フレームワークとか使ったことない) まさしくこの記事みたいな状況 kikuchi1201.hateblo.jp 最近 TypeScript を書く機会があって、開発環境は用意されてるのでなんとなく書けるけど、エコシステムとかいろいろ全くわかってなくてこのまま旧石器時代然としたJavaScriptを書いていてはまずい気がすると思って勉強することにしました。 目標は TypeScript を使ってこんなんを作る、テストも書こうね(こんなのに何をテストするんだ) この記事では主に環境構築~DOM操作のテ
この記事はJavaScript Advent Calendar 2016の記事です。 今回は、2017年、新規にJavaScriptを書くならどんな設計をするか、というテーマで書いてみようと思います。2017年といっても、しばらくはこんな感じのアーキテクチャでやってきましたので、どんな構成でJavaScriptを設計してきたかという方が正しいかもしれません。基本的にはSPAをベースとしています。 また、最新のイケてる技術バリバリ使ってやるぜ、というよりは、堅牢で、はやりが変わってもメンテができるということを意識してみました。 DOMのレンダリング Virtual DOMを代表とした、DOMのレンダリングを行うライブラリをなにか採用します。特に理由がなければReactでいいと思います。Virtual DOMではありませんが、AngularでもDOM管理においてはさほど違いはありません。この2
こんにちはnasustです。 僕のはてなブログは気合を入れている割には、まだ無料版のはてなブログなんですよね。 もう少しアクセス数が増えたらProに移行しようかと思っています。 それで無料版の困ったところは、スマホの表示がカスタマイズできないことです。 無料版でも行うには、レスポンシブ対応のテーマを使用しなければなりません。 しかし、レスポンシブのテーマでカスタマイズするとPCとスマホ両方に適用される為、 スマホの方が使いにくくなる可能性があります。 ですので、PC用とスマホとカスタマイズを分けたほうが良いですが、無料版では出来ません。 しかし、JavaScriptを利用すれば可能です。 僕は以下のJavaScriptをブログの詳細設定のヘッダに保存して、スマホ用のCSSを適用しています。 <script src="https://cdnjs.cloudflare.com/ajax/lib
Safari Technology Preview Release 20 is now available for download for macOS Sierra. If you already have Safari Technology Preview installed, you can update from the Mac App Store’s Updates tab. This release covers WebKit revisions 209238-209803. Visual Viewport Enabled the new “visual viewports” model for how position: fixed and position: sticky elements are positioned during pinch zooming and wh
Show navigation Over the last year the V8 team has developed a new methodology to measure and understand real-world JavaScript performance. We’ve used the insights that we gleaned from it to change how the V8 team makes JavaScript faster. Our new real-world focus represents a significant shift from our traditional performance focus. We’re confident that as we continue to apply this methodology in
こんにちは、@yoheiMuneです。 最近はES6で書かれたライブラリも増えてきましたね。そんな中、...valsのような表記を目にすることもあるのではないでしょうか?今日はその...についてブログを書きたいと思います。使いこなせると便利です。 ※注:Spread Operatorの翻訳でスプレッド演算子と訳されているので本記事でもそれに従っていますが、演算子と言っていいのかは少し謎です。 目次 実際に試すには 本記事のコードはNode.jsで動作します。最新のNodeJSを準備して試してみてください。 # 今回のファイル名は「spread_operator.js」とします. $ node spread_operator.js また、ブラウザで利用する場合にはBabelによるコンパイルが必要です。Babelの使い方などは「次世代JavaScriptのコンパイラ、Babelに入門」を参照し
シンクロ・フードでフロントエンドの開発を担当している四之宮です。 今回は、「cssとjavascriptのキャッシュクリアの自動化に対応していないフレームワークでのキャッシュクリア自動化」についてについてお話したいと思います。 ここでいうキャッシュクリアとは、ハッシュ値をファイルに付与することで、強制的にブラウザキャッシュを無効化するキャッシュクリアのことです。 お話する前に、なぜこのような記事を書こうと思ったのかを弊社のシステム構成を交え、ご説明したいと思います。 システム構成 弊社のシステム構成に関しては以前にご紹介した通り、新サービスの開発ではRuby on Rails、既存サービスの開発はSeasar2となっています。 シンクロ・フードのサービスとシステム構成 もちろん既存サービスに関しても、少しずつRuby on Railsへの載せ替えを行っていますが、まだSeasar2で開発し
この記事は新人エンジニアAdvent Calendarの20日目の記事です 自己紹介 現在高校2年のエンジニアです プログラミングは中学生の時javaを一瞬触り挫折、そして長い月日が経ち高校入学直前の春休みに再開。 主な使用言語はJavaScriptとPHP、WebデザインもやってたのでHTMLとCSSも書けます!あと、少しだけErlangとRailsを触ってる時期もありました この記事について 今年の夏からいくつかのハッカソン(20から40人規模なものが多い)に出てみた結果、3回入賞する事が出来たのでそれまで勉強した事などを紹介していきます!! また、僕自身、Webしか触ってないのでここで紹介するのはWeb系の話だけです。 自分の経験やTwitterで流れてくる話題から察するとハッカソンは技術力よりアイデア力が重視される場合が多いと感じたので、そこに必要な最低限の技術力を身に付けるまでを
Read First Alright, welcome to the demo page! Please make sure to check the Wiki pages, as they give you a quick start with everything else that isn't covered in this page, things like installing or using the library and other valuable guides on how to get the best out of it. Be sure to also check the pulse on the development or report any issues. BaseComponent Info Following the development of th
AWS EC2でWindows Server2012 R2 インスタンスを起動してMacからRemote Desktopするまで ~最小ネタ~WindowsAWSEC2 初めてやった時の手順です。殴り書きです。 インスタンス構築は1分もいりませんが、引っ掛かる場所としては、キーペア、パスワードの生成、Remote Desktop時のセキュリティの設定(FW)ではないでしょうか? AWS初心者の困った誰かが助けられれば幸いです。1分でできることにハマるなんて悲しすぎる。。笑 (注:私はすんなりいきました) Amazon公式のユーザーガイド(https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/connecting_to_windows_instance.html?icmpid=docs_ec2_console) ※これ見れば
これは日本情報クリエイト Engineers Advent Calendar 2016による22日目の記事になります。 こんにちは。Windows大好きエンジニアの@Ntdoyです。 最近ちょっと浮気心が出まして会社からMacを買ってもらいました 私はこれまでずっとWindowsエンジニアだったので、実は人生初Macなんです。 なので主にWin版と比較して・・・という視点でレビューしていきたいと思います。 VisualStudio for Mac とは 本家ブログより Visual Studio for Mac は、Xamarin と .NET によるモバイルおよびクラウド アプリ開発に最適化された開発環境で、Android、iOS、.NET Core テクノロジなど、Mac での .NET 開発を一手に引き受けます。ネイティブ ユーザー インターフェイスを備えた Visual Studi
Appleは、iOS10.2.1の2番目のパブリックベータ版「iOS 10.2.1 Public Beta 2」をリリースしました。開発者向け「Developer Beta 2」は昨日リリースされました。 本ベータは12月16日にリリースされたiOS 10.2.1 Beta 1に続くものです。 Mac Rumorsや9to5Macを確認しましたが、本ベータを含むiOS10.2.1の変更点や追加点についてはまだ不明です。おそらくはバグ修正が主となるでしょう iOS 10.2は12月13日に一般公開されていました。多数の機能改善や修正のほか、絵文字の追加やメッセージエフェクトの追加、スクショの無音化なども含まれています。 パブリックベータはベータプログラムサイトで登録することで無料で試すことができます。 Apple Beta Program ちなみに私はiPhone5、iPad mini2、1
0.はじめに こちらはre:dash Advent Calendar 2016の22日目の記事です。 Advent Calendarについて出遅れたと思っていたところ、、、 こちらはまだ空き枠がありましたので参加しました。 Mac上で以下のような感じで CSVファイルを digdag -> embulk -> (Re:dashの)PostgreSQLへ格納してRe:dashから見るところまでを記事にします。 デモや素振り用などの参考にして頂ければと思います。 以下は今回本記事では取り扱いませんが以前書きましたこちらの記事や、こちらの記事を参考に応用するとChatOps的な感じでデータ登録が可能です。 1.環境 OSX Yosemite Docker version 1.13.0-rc3, build 4d92237 docker-compose version 1.9.0, build 2
macOSとiOSでAirPodsの自動耳検出機能などを調整する方法です。詳細は以下から。 Appleはイヤホンジャックを廃止したiPhone 7シリーズ用にApple W1チップを搭載したワイヤレスイヤホン「AirPods」を発表しましたが、このAirPodsはmacOS/iOSで通常のBluetoothイヤホンとは違う独自の機能を利用することが可能になっています。 macOSではmacOS Sierra 10.12以降でAirPodsに対応しており、システム環境設定アプリの[Bluetooth]パネルからペアリング可能で、ペアリングが済むと同パネルの[オプション]ボタンからダブルタップ時の動作[Siri, 再生/一時再生, オフ]、およびLRどちらのAirPodsのマイクを利用するかが選択できます。 また、メニューバーのボリュームとBluetoothアイコンからはAirPodsのバッテ
こんにちは!はてなアプリケーションエンジニアの id:takuya-a です。 みなさんは、このような疑問をもったことはありませんか? grep はどのように文字列を検索しているのか? MeCab はどうやって辞書を高速にルックアップしているのか? パーサやコンパイラを作りたいけど、何から始めればいいのか? 本稿では、「文字列アルゴリズムとはどんなものなのか?」「なぜ重要なのか?」「何を知っておくべきか?」「どうやって勉強すればいいのか?」といった疑問にお答えしていこうと思います。 文字列アルゴリズムの意外な応用や、モチベーションを保ちやすい勉強のしかた、文字列アルゴリズムを勉強するために行った社内での取り組み、実装するときのコツといったトピックについても触れています。 このエントリは、はてなエンジニアアドベントカレンダー2016の22日目の記事です。昨日は id:syou6162 さんに
12月28日(水)放送の「夜の巷を徘徊する 特別編」でマツコ・デラックスがトヨタの開発拠点 東富士研究所を見学する。 昨年10月、愛知県の巨大自動車工場を訪れ、クルマの製造現場を見学したマツコ・デラックス。今回は夜ではなく昼に、新しいクルマを開発する研究所を特別見学する。 新たに生み出されるクルマは、すべて「テストドライバー」と呼ばれる運転のプロが試乗し、乗り心地や挙動をチェックする。凄腕ドライバーの運転に同乗したマツコ・デラックスは、テストコースを高速走行して大興奮! ベテラン職員の運転や整備の技術を若手に継承する「凄腕技能養成部」という部署へ。モータースポーツの現場でメカニックとして活躍する事を夢見る若者たちと交流する。 豊田章男社長と一緒に社員食堂へ。食事中のエンジニアたちをつかまえて一緒にランチ。真面目な理系職員たちをイジりつつ、みんなで楽しく談笑する。 レーシングスーツに着替えた
bitFlyerは12月21日、次世代ブロックチェーン型データベース「miyabi」を開発したと発表した。 miyabiは、同社が独自に開発したブロックチェーンで、改ざんが難しく高い信頼性を持つブロックチェーン技術を、実際の取引に使用できるように実用化したもの。独自の高速コンセンサスアルゴリズム「BFK2」と、スマートコントラクト実行機構「理(ことわり)」で構成される。 BFK2では、世界最速となる秒間1500件以上のトランザクション処理が可能。契約や取引を柔軟に記述できる拡張性と安全性を持ちつつ、強固な暗号技術により改ざんを防ぐという。ブロックチェーンの堅牢性をキープしつつ、取引の確定や処理速度などの課題を解決したデータベースとなっている。 同社では、金融機関などにおける既存システムの置き換え、シェアリングエコノミーでの基盤システム、IoT時代の新データベース、新しい政府システムなどへの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く