ぜったいってなに

Software Engineerのブログです。

今後やること

前回の続き。 今回も書き散らしで申し訳ないですが、 自分のエンジニアとしての市場価値を上げる方法を考えました。 できなければならないこと IT周りの能力を磨く プログラミング能力 スピード アウトプットが速い 質 可読性が高い パフォーマンスを考慮し…

今の自分の能力と今後のキャリアについて

RubyKaigi2017に参加させていただきました。 いろんな発表を聞いて、自分のエンジニアとしての価値について考えることがあったので、今後のキャリアも含めて考えたことをつらつらと書いていきます。 現状の自分のエンジニアとしての価値 1. プログラミング能…

Ruby on Rails 画面表示情報に関する悩み

Railsを書いていて、画面に渡す情報が変わったときに、やりたいことはシンプルなのに内部ロジックの変更は多くて、しかも自分のやり方が正しいのかどうかもわからないのでいつもすごくもやもやする。 抽象化できてなくてわかりづらいと思いますが、備忘録と…

Play Scala ViewからDBレコード追加

モデル追加に続いて、ViewからDBレコードのCLUDができるようにする。 前回に引き続き、こちらを参考に。 qiita.com routesの設定 /conf/routes 1 # Routes 2 # This file defines all application routes (Higher priority routes first) 3 4 GET / controll…

Play Scala モデル追加

DB connectionができたので、次はモデルを記述して、 モデルからテーブルのレコードをCRUDできるようにする。 こちらの記事をまるっと参考にさせていただきました。 qiita.com まずは昨日時点のevolutionファイルを修正する。 PostgreSQLでは大文字小文字が…

Play Scala DB connection その2

昨日の続き。 現状こんなかんじ。 /conf/application.conf db { slick.dbs.default.driver="slick.driver.PostgresDriver$" slick.dbs.default.db.dataSourceClass = "slick.jdbc.DatabaseUrlDataSource" slick.dbs.default.db.properties.driver = "org.pos…

Play Scala DB connection

やってみる。 Play * slick * PostgreSQL 設定 /build.sbt こんなかんじ。 name := """play_test""" version := "1.0-SNAPSHOT" lazy val root = (project in file(".")).enablePlugins(PlayScala) scalaVersion := "2.11.7" libraryDependencies ++= Seq( c…

Play Scala周りで出てくるよくわからん単語を整理していく

Scalaを触ってると聞いたことない単語がバンバン出てくる。 参考となるドキュメントを漁ってみても、Java上がりの人向けに書いてる記事が多く、 業務でJavaを使ったことがない人間からしたら結構ツラい。 それでもPlay ScalaでDBアクセスをしようとがんばっ…

テーブルカテゴライズ

業務でテーブル設計をレビューしていただいて、色々考えることがあったので、例え話で書きます。 繰り返しますが全て例え話です。 前提 Appleの製品をRDBMS上でテーブルとして扱いたい。 扱いたい製品はiPhoneとiPadの2種類で、それぞれシリーズによって分類…

Play Scala 触っててわかったこと

標題の通り。 activator runでサーバ立ち上げた後、下記は次のアクセス時にオートロードされる。 ファイルの中身変更 ファイル名変更 ファイル新規作成 オートロードされるというか、次のリクエストが飛んできたら project内にファイルないしコードの差分が…

レアジョブに申し込んでみようとした

「エンジニアに最も必要な言語は英語」ってどっかで読みました。 WritingやReadingはある程度自分ひとりでできますが、会話は相手がいないとできないですね。 英語が普通に喋れるようになりたい。仕事で使えるようになりたい。 でも時間はないし金はかけたく…

Play Scala Controller, Viewの追加

やること Controllerを定義する。 Viewを定義してブラウザ上で表示させる。 設計はこちらを参考に。 やったこと /app/controllers下にArticleController.scalaを作成する。 書き方は既存のサンプルのControllerに倣う。 package controllers import javax.in…

転職ドラフト

登録しました。 job-draft.jp 明日ドラフトだって聞いたのでレジュメ頑張って書いたんですけど 審査通らなくて、修正して再申請したけど駄目だったんで今回は諦めます。 これで自分のおおよその市場価値をはかろうと思ったんですがそもそも土俵にすら立てて…

Play ScalaでWebアプリケーションを作る

標題の通り。 ブログっぽいものを作る予定。 「Play ScalaをRailsみたく触れるようにする」が目的。 ゆくゆくはGraphQLでAPI実装とかやる。 アプリのテーブル設計はこんな感じ。 超シンプル。(sqldesignerで書きました) user: ログインユーザ article: 記事 …

今週はおやすみ

今更ですが今週は業務が忙しすぎるのでブログおやすみします。 毎日書くって伝えた方々、すみません。 土日に色々考えます。 そもそも毎日書くかどうかとか。 忙しい時期は内容の質が下がってしまうがどうするかとか。 1週間の基本スケジュールを決めたりと…

AWSのプロビジョニングツール

同環境のAWSサーバを複数構築したい、という状況が発生した。 調べたことをメモしておく。 イメージとしてはVagrantfileやDockerfileのように 設定ファイル書いてコマンド叩いたらはいできたー、っていうのが理想。 方法1 AWS CloudFormationを利用する。 そ…

Scalaのpimp my libraryを試す

参考文献 Implicit · Scala研修テキスト pimp my libraryとは ScalaのImplicit conversion (暗黙の型変換) の機能の中のひとつ 既存のクラスにメソッドを追加して簡単に拡張できる 例えばこんな具合 implicit class RichString(val src: String) { def smile…

Scalaのyield

今度はScalaのyieldについて調べてみる。 下記ページがわかりやすかった。 Scala forメモ(Hishidama's Scala for Memo) 引用すると、 基本的なfor式では戻り値は無い(戻り型がUnitなので常に「()」が返る)が、yieldを付けることによって、繰り返した本体の演…

yieldを使ったメソッドを書けるようにする

Amazonに電話する時間がなかったのでASK開発はおやすみ。 Scalaの勉強をしていてyieldという単語が出てきた。 こいつ、業務で書いているRubyでもよく見かけるけど、なんなのかよくわかっていない。 そこで今日は、Scalaは一旦置いといて、「Rubyでいうyield…

ASK(Alexa Skills Kit)を触ってみる その2

ASKを触ってみるという記事を書きました。 その後も触ってみてはいるのですが、前段階で色々と調べる必要があることが多く進捗がよろしくないため、 ある程度形になってからまとめて投稿しようか迷っていました。 が、毎日投稿しないと続かなさそうなので、…

ASK(Alexa Skills Kit)を触ってみる

標題の通りです。 音声アシスタントはスマートフォンの次のプラットフォームとして期待されていて、 海外では既にかなり普及しているようです。 Amazon EchoやGoogle Home、LINE Clova、 NTT docomoのpetocoなど、いろんな企業が市場に参入されてますね。 AS…

GraphQLに対する私見

先日催されたRejectKaigi2017にて、gfxさんがGraphQLをRailsで使う、というお話をされていました。 blog.bitjourney.com 本家を見てみてると、Rubyではこんな感じで使えるみたいです。 ありがたいことに閉会後gfxさんとお話する機会があり、 RESTful APIに対…

自己紹介

はじめまして。 zettaittenani と申します。 Webエンジニアです。 業務ではRubyを、プライベートではScalaを触っています。 開発に限らず詰まったこと、わかったことなどを書き記していこうと思います。 よろしくお願いいたします。