the industrial

都内で働くITエンジニアの日記

program

Rails5 + Cropper.js + carrierwave で作る画像クロップ処理

作ったもの よく、SNSで利用するようなアイコンをアップロードする際、好きな箇所で切り取る処理を作成してみたのでメモがてら書いていく。 こんな感じの動き。 開発環境について 前回作成した下記エントリーの開発環境をそのまま利用。 omiend.hatenablog.j…

ぼくのかんがえたさいきょうのRuby on Rails開発環境

はじめに 6月に新しい会社に来て以来、会社ではRuby on Railsばかり触っている。 RoRの開発・Ruby自体初めてなので(本当はScalaやりたい)、開発環境構築をやってみたのだが、「これ本当に必要なの?」などなど分からないことだらけで、何度かハマった。 …

railsのransackでハマった話

ソースはすべて雰囲気(動作確認してないっす)。 今日ハマってた所。 例えば、 parents TBL と childes TBL があったとして、 CREATE TABLE `parents` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) EN…

git ftp

割りと頻繁にFTPすることがあり、流石に無料のCyberDuckでは辛くなってきたので、思い切ってYammy FTP Proの購入を検討。 基本的なFTP機能はもちろん、アップロードの速度は早いし、何よりサーバー上のファイルを直接編集できちゃうのも良い。 1ヶ月の試用…

XAMPPのvhosts設定方法

自分のメモ以外の何モノでもないです。 今お手伝いしているサイトの更新作業。(よく言うと)オーソドックスなスタイルで更新しており、HTMLファイルを設定するんですな。 PHPでできているので、ローカルでの更新内容確認はXAMPPを利用している。 XAMPPをイ…

Realm Browserで、ローカルのRealmDBを読み取る方法

今個人的に作っているiOSアプリでは、ローカルのDBにRealmを使おうと思っている。 そんな中、Realm BrowserというDBクライアントが良さそうだったので使おうと思ったのだけど、iOS Simulatorに保存されたDBファイル(.realmファイル)がどこにあるかわからな…

英語が話せないクソエンジニア(僕)が、なんとかAWSのロックされた2段階認証を解除して貰った話

タイトル通りなのだけど、この歳になって英語で電話したのが初体験だったので、記念パピコ。 セキュリティを考慮して、AWSコンソールにはGoogle Authenticatorを使って2段階認証をかけていたんですわ。 先日、‪iPhoneを7に変えたら、いつの間にかそのAWSの2…

iPhone/iPad アプリ開発逆引き大全 500の極意

久しぶりに技術書買った気がする。 ちょっとiOSアプリ開発の話があって、僕としては、iOSアプリ開発はど素人なので、どうせなら技術書買おうと。 基本的にやりたい事(要件)を実現するための方法は全て載ってるので助かってる気がする。 なんだけど、誤字脱…

2年間働いたビズリーチを、本日、卒業させていただきました。

2年間働いたビズリーチを、本日、卒業させていただきました。 元々、Scalaをやりたいというワガママで入社させていただいたのですが、Scalaの実務経験がない僕でも暖かく迎えてくださり、そしてやりたかったScalaの仕事(サーバーサイド)に限らず、フロント…

Scalaで、Javaのメソッドを関数オブジェクトにする方法

まあ、当たり前かもしれないのだけど、「あ、できるんだー」という気づきがあったのでメモ Javaのメソッドに対してもアンスコで関数オブジェクトにできる(カリー化するときにも使う方法) val driver = new ChromeDriver() val fByName = driver.findElemen…

ハッカーと画家

Yahoo!Storeを作った、Lisp界の貴公子ポール・グレアムさんが書いた、真のハッカーとはといったエッセイ集。 話題なのと、会社のイケメンワカモノエンジニアくんが貸してくださったので読んだ。 結構長いのだけど、ポールさんが如何に先見の明を持っていたの…

その2 ファイル分割してみる - golang製Web Framework 「echo」事始め

続き 前回の予告どおり、echoのサンプルプロジェクトのcrudモジュールについて、ソースファイルの分割をしてみる。 なお、普段からgolangを書いている人にとってはつまらない内容かもしれない。 けれども、なかなかどうしてimport何かではまったりして楽しか…

golang製Web Framework 「echo」事始め

はじめに なんだか今日は早く目が覚めてしまったので、久しぶりの朝活。 golang 最近 golang が気になり過ぎているのと、Webアプリ作るフレームワークも出てきている様なので、Java、Scalaときて、第三の言語として扱えたらいいなーなんて思い、今年は真面目…

Supersetを試してみる

Supersetとは Superset 宿泊施設マッチングサイトAirBnB(エアビーアンドビー)が提供する、データ可視化ツール Supersetをインストールし、DBとつなぎ、Queryを書き、ヴィジュアライズしてダッシュボードを構築することで マーケティングなどに役立てること…

Team Geek

会社のパイセンから借りた、グーグラーによるチームビルディングのお話。 久しぶりの読書がこれでヨカッタ。 人間はプログラムで動いているわけでは無く、感情で動いているので、適切なマネジメントと、チームビルディングをしなければならない。 みたいな事…

Riot.js を利用してTODOアプリケーション構築のハンズオンを作成しました #riotjs

Riot.js Advent Calendar 2016 の2日目! 1日目はkuwahara_jsngさんの「今年1年真剣にRiot.jsと付き合ってきたので振り返ってみた」です。 さて、ついにv3がリリースされたRiot.jsですが、実は以前、社内向けに作ったハンズオンがあるので、Riot.js Advent…

ScalikeJDBCでDDD的な

大したことではないのだけど、便利そうだったのでメモ。 Long値である従業員IDを明示的に型として保持したいニーズがあるとして、こんな case class があったとする。 case class EmployeeId(value: Long) SQLのWHERE句を組み立てる際、下記の様になる val w…

メールアドレスをあらわす正規表現について

今日、個人的に信じていたメールアドレスの正規表現に穴があった。 どういうものかというと、 input type=email – e-mail address input control (NEW) - HTML5 で仕様とされている \b[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*\b…

IntelliJ IDEAのsbtビルドがコケまくった話

会社のMacに入れているIntelliJ IDEAのsbtビルドが盛大にずっこけるようになり、プロジェクトの作り直した等していたら、そもそもソースコード自体開けなくなった。 原因を言ってしまえば、例のXcodeのAgreeをしていなかったから。 最近OSをSieraにしたので…

知らなかったPythonのSimpleServer

まず、MacOSにはデフォルトでPythonが入っていること。 そしてコマンド一発でローカルサーバーが立っちゃう事。 pythonの確認 $ which python /usr/bin/python 例えば、下記の様なディレクトリがあったとして、当該ディレクトリをカレントにして・・・ $ cd …

riot.jsやってます

思ったよりも人間は「憧れ」というのがモチベーションになるんだなと、最近よく感じます ああいうエンジニアになりたい! だとか、 あの言語扱えるようになりたい! ってのが僕のソレで、実際目指すところにたどり着けなくとも、目指してみると割と良い所ま…

サーバーサイドエンジニアが、Reactを始めて1週間でどこまでできるか

d-cube.connpass.com にて、 「サーバーサイドエンジニアが、Reactを始めて1週間でどこまでできるか」というタイトルでLTしました。 1週間でもここまで行けるのは普通かもしれないし、ぶっちゃけ大した内容ではないのですが、久しぶりのLTで楽しかったです…

プログラマ冥利に尽きる、本当に些細なこと

僕が携わったプロダクトが初めてメディアに取り上げられたのは、確か新卒2年目に携わった某メガバンクの合併に伴う顧客情報統合プロジェクトについてでして、その時は日経コンピューター(紙媒体)さんに、本当に本当にごくごくわずかな1文程度のものだっ…

Dockerの環境構築で"Please check your TLS client certification settings"とかいうエラーが出た話

最近Dockerが楽しいっす。 いろいろやりたいことがあって、でもまあとりあえず学習がてらcontainerを幾つか作り、ローカルでいろんなアプリを動かしたいなと。 Dockerの環境構築には、昨今のDocker界隈における定石通り、Docker Toolbox | Dockerを使ってい…

第15回 Elasticsearch勉強会 2016/03/15 その2 #elasticsearchjp

今日はこれに来てます 第15回elasticsearch勉強会 #elasticsearch #elasticsearchjp - elasticsearch勉強会 | Doorkeeper その1はこちら omiend.hatenablog.jp 一応メモっては見たものの、やっぱり適当 Elastic, Jun Ohtani タイトル:Elastic{on} 2016 参…

Elasticsearch 2016/03/15 その1 #elasticsearchjp

今日はこれに来てます 第15回elasticsearch勉強会 #elasticsearch #elasticsearchjp - elasticsearch勉強会 | Doorkeeper その2はこちら omiend.hatenablog.jp 一応メモっては見たものの、結構適当 Preferred Networks America, Inc. CTO 久保田展行(Kubota…

Elasticsearch入門してます (5日目) とっとこAggregations

まごまごせんと、とりあえず1回Aggregations試そうぜ!ということで、今日はAggregations周りしかやらない。 Elasticsearchの本当にすごいところってたぶんlucene由来の全文検索なんだと思っているのだけど、そこまでたどり着いていない僕がゴイスーと思っ…

Elasticsearch入門してます (4日目) しょぼいPRで名前を残した話と勉強会に参加した話

タイトル通り、僕がElasticさんに送ったPullRequestがマージされたお話。 とはいっても、内容は保育園児でも出来そうなちょーしょぼいものなのでなんの自慢にもならないのだけど、PRを送る方法は決められた手順をもってやっているので、一応書き残しておこう…

Elasticsearch入門してます(3日目) IndexとMapping周りを今一度

というわけで、あけおめです。 ブログであけおめなどとボヤくのは何年ぶりかしら。 2016年のお仕事も始まったわけなのだけど、初日の通勤電車(1時間)では Elasticsearch の学習が3日坊主にならないように、オフィシャルサイトのドキュメントを眺めて…

Elasticsearch入門してます(2日目) データの登録〜簡単なクエリー実行

今日は家に一人でいるのでゆっくりと勉強。 みんなが年末年始で浮かれている間、僕は少しでもElasticsearchに詳しくなって筋肉むきむきになるのだ(しぼうフラグ)。 1日目は、ElasticsearchのインストールからIndexの作成・削除までやった。 引き続き、今…