山pの楽しいお勉強生活

勉強の成果を垂れ流していきます

Spring Bootを使ってWebアプリケーションを作成する(開発環境から)

はじめに 某所でお題として与えられ、楽勝!って思ったら完遂できなかったので、ハマった所を解消し、再挑戦した際のメモです。*1 最良、最適な方法ではないと思いますので、参考にする場合には自己責任でお願いします。*2 コードは一部しか記載しませんので…

GroovyでJSONをPOSTする

概要 ↓をGroovyでやりたい。 curl -v -H "Accept: application/json" -H "Content-type: application/json" -X POST -d '{"id":"abcdef","user":{"name":"tarou","age":20,"email":"example@example.com","result":true}}' https://script.google.com/macros…

JSONをPOSTしてGoogle SpreadSheetに書き込む

はじめに GAS(Google Apps Script)でPOSTを受け付けて、SpreadSheetに書き込む手順です。 認証はありませんので、URLがわかれば誰でもPOSTできてしまうので注意。 GroovyからSpreadSheetに書き込みたかったが、GData APIを使用するためのライブラリである…

We Are JavaScripters! @6thに参加してきた #WeJS #21cafe

はじめに 4月27日(木)に「We Are JavaScripters! @6th」という勉強会に参加してきた時の自分用メモです。*1 全てLTなので、資料見たほうが早いかと思いますw 概要 We Are JavaScripters! @6th【初心者登壇歓迎!LT大会】 「JSの勉強会って、登壇する人が…

JJUGナイトセミナーに参加してきた(4/24) #JJUG

4/24に開催されたJJUGナイトセミナーに参加してきた際のメモ。(後で追記予定 概要 名前 【東京】JJUG ナイト・セミナー 「テスティング特集」 日時 2017-04-24(月)19:00 - 21:00 会場 日本オラクル株式会社 本社 13階 東京都港区北青山2-5-8 募集ページ …

GrailsアプリケーションをTravis CI、Herokuと連携する

アジェンダ アジェンダ 概要 環境 前準備 Grailsのデフォルトアプリを作成 Herokuで動作させる GitHubにpush Travis CIと連携 メモ 参考URL 概要 タイトルの通りの事をやろうとしたら、結構戸惑ったためメモ。 Grails、Gradle、Travis CI、Heroku全てが全く…

退職します。

はじめに(っというか概要 エンジニアとして、人として、自分が得たもの、反省点とか、忘れないようにメモ。 基本ポエム。 2017/03/17が最終出社 在籍は3月いっぱい 退職にあたり、特に大きな不満があった訳ではなく、転職先に大きな魅力があった。 この辺り…

KotlinでHelloWorld

はじめに 先日、私の送別会の場でKotlinやるという話を聞いて、悔しかったので少しは触っておこうと思った次第です。 で、忘れないようにとりあえずblog書く。 Kotlinとは InteliJ IDEAで有名なJetBrainsが作成したJVM言語。 JavaScriptに変換や、Androidで…

はじめてMacを使って困ったことまとめ

はじめに 年末にはじめてMacを購入しました。(MacBook Pro 2016 13インチ) 10年以上ずっとWindowsのみだった*1私がMacを触ったら困ったことだらけだった上、基本的な事がわからない場合には、調べても出て事ないという事が結構ありました。 WindowsからMac…

Gebでファイルをダウンロードする

概要 Gebでファイルをダウンロードするコードです。 downloadBytes(java.lang.String)を使用することで可能。 コード @Grapes([ @Grab("org.gebish:geb-core:1.1"), @Grab("org.seleniumhq.selenium:selenium-chrome-driver:3.0.1"), ]) import org.openqa.s…

Groovyで今週の月曜日の日付を取得する

概要 今週の月曜日の日付を取得するという要件があったため色々考えましたが、シンプルになりませんでした。 もっとシンプルな方法があると思うのでどなたか教えてください。。。 コード def f = { it - (it.day != 0 ? it.day - 1: it.day + 6) } assert f(…

PhantomJSDriverは「com.codeborne」を使用する

概要 GebでChromeからPhantomJSに変えようとしたらハマったのでメモします。 PhantomJSを使う場合、「phantomjsdriver」のグループIDは「com.codeborne」を使用しましょう。 Web上でサンプルを探すと、1.1は「com.github.detro.ghostdriver」、1.2は「com.gi…

We Are JavaScripters! @3rdに参加してきた #wajs #21cafe

はじめに 1月30日(月)*1に「We Are JavaScripters! @3rd」という勉強会に参加してきた時のメモです。 今回で3回連続参加となった勉強会でしたが、今回も楽しめました。ただ、ちょっとした事という割にはそれなりにレベルが高くなっておりました。(ハイレ…

Groovyでメール送信

概要 Groovyのスクリプトでメール送信する機会がありました。 AntBuilderで飛ばせる的な記載はありましたが、意外とサンプルそのまま動かせるものがなかったのでメモしておきます。 コード @Grab(group='javax.activation', module='activation', version='1…

2017年の目標

ここ3,4年は目標立ててるものの、blogに書いてなかったので、今年は書いてみる。 基本的に、目標は低く緩く大雑把に立てるようにしています。 性格的に高すぎる目標は諦めてしまうので、やれば(頑張らなくても、時間かけずに)できることをやる。 それって…

We Are JavaScripters! @2ndに参加してきた(そして初発表してきた)

はじめに 12月26日(月)に「We Are JavaScripters! @2nd」という勉強会に参加してきた時のメモです。 外部勉強で初めて発表させてもらいました! 緊張する人なので、お酒飲んで発表できるのは凄く助かりました。 発表自体はグタグタでしたが、自分的に大き…

体力のない妻へ

お約束? この記事は「妻・夫を愛してるITエンジニア Advent Calendar 2016」の4日目の記事です。*1 書くことは特に定めておらずフリースタイルとなっています。 みなさん、それぞれの形で惚気て頂ければと思います。 っということなので、特にまとまりもな…

Gebをはじめる時に遭遇する例外の対処について #gebAdvent

お約束? この記事は「Geb Advent Calendar 2016」の3日目の記事です。*1 はじめに 私は、少し前にGeb(じぇぶ)を触ったことがありました。 ただ、久しぶりに再び触ってみたらやたらとエラーやら例外に遭遇したので、その例外と対処法を紹介します。 最初に…

We Are JavaScripters! @1st #wajs に参加したメモ

はじめに 11月24日(木)に「We Are JavaScripters!」という勉強会に参加してきました。 ※メモとってまとめてましたが、blogに書くの忘れてたので1週間遅れながらうpします。 概要 「JSの勉強会って、登壇する人がハイレベルな人ばっかりだな〜」 と思った…

デール・カーネギー・トレーニングに参加して

はじめに 2016/03/12 ~ 2016/06/11まで、12回に渡りデール・カーネギー・トレーニングに参加してきました。 約半額を会社に負担してもらったこともあり、自分が学んだこと、感じたことを社内勉強会で発表しました。 せっかくなのでそのスライドを一応blogに…

Grails3.0をWindowsではじめる

結論 ダウンロードして、PATH通せばOK。 はじめに WindowsにはSDKMANがない。 Grailsをはじめるぞー!何すればいいの?になった。 追記(2017/09/15) : Windows10ならBash on Ubuntu on Windowsが入ったので、SDKMANがいいかも。 Cygwin?なにそれ美味しい…

Groovyでのアスタリスクは便利!

Groovyはアスタリスクが便利に使えるのは知っていたけど、結局いつも忘れて使っていませんでした。 で、調べてみたら思った以上に機能があったのでまとめ。 assert 2 * 3 == 6 assert 3 ** 3 == 27 def i1 = 2 i1 *= 3 assert i1 == 6 def i2 = 3 i2 **= 3 a…

ユーザスクリプトで普段の業務を楽にする

はじめに 社内勉強会で「ユーザスクリプトのすゝめ」というタイトルで発表を行いました。 割りと良い反応をもらえたので、ブログ用に一部変更して公開したいと思います。 アジェンダ ユーザスクリプトとは 使いドコロ 実際に作ってみる Chromeの場合の使い方…

Groovyでも愛が生まれた

概要 Qiitaを見ていたら、面白いのがあったのでGroovyで行ってみました。 Stringだとビット演算子が使えないっぽいのでcharに変換しただけ。。。 コード def a = "生" def b = "死" println ((a as char & b as char) as char) 元ネタ 愛が生まれた PHPでも…

Googleドライブにファイルが追加されたらメール通知する

背景 子どもの写真をGoogleドライブで親達に共有しているのですが、遠方に住む義父から通知来ないといつ見ればいいかわからん!と連絡が。 さらに要望を聞くと、写真はフォルダ管理してるのですが、どのフォルダが更新されたかも教えて欲しいとのこと。 通知…

家庭内の写真、タスク(買い物リスト)の共有 #家庭を支える技術

お約束? 「家庭を支える技術 Advent Calendar 2015」の15日目の記事です。*1 はじめに 家庭を支える技術にエントリーしていますが、実はそれほど技術を駆使している訳ではありません。 結局なんだかんだあって、シンプルに使用しているというのが現実です。…

子育て中の時間の作り方 #childadvent

お約束? 「子育てプログラマ・ITエンジニア・Webデザイナー Advent Calendar 2015」の6日目の記事です。 昨日は渡邊タツアキさんの「まだ手作業で消耗してるの?時短家電で家事をKAIZENしよう:子育てエンジニアアドベントカレンダー」でした。 前置き 自分…

ハチイチ忘年会に参加してきた。 #1981s

ハチイチ忘年会って何? ハチイチ忘年会は 1981年生 のWeb・IT系エンジニアの人達が「幹事をする」 忘年会です ようは、ただの飲み会です。 atnd.org blog.yusuke.be 概要 毎年年末恒例のハチイチ忘年会に参加してきました。 昨年は全く覚えてないほど飲んで…

2つのリストボックス内でアイテムを入れ替えるBootstrapプラグイン「Bootstrap Dual Listbox」

概要 2つのリストボックス内でアイテムを入れ替えるBootstrapプラグイン「Bootstrap Dual Listbox」を使用したのでメモ。 このUIを言葉で説明するのは難しいので下記のサンプルを参照。 ちなみに、社内アプリケーション作成中に要件として必要だったので導入…

console.logの出力にスタイルを指定する方法

概要 cookpadを見ていてふと開発者ツールを開いたら、警告が表示された。 細かいところまで行き届いてるのか、はたまた、実際にコンソールで操作させて何か行わせた事例でもあったのか。 それとも、小粋な遊び心?(「cookpad.joinUs();」と実行するとcookpa…