iOSアプリクラス設計の個人的見解

iOSアプリの仕事をしているとよくクラス設計の話になりやすい。基本的にモバイルアプリは設計が自由なためアプリごとにアーキテクチャが異なる。 そのためMVC, MVP, MVVMなどのUIアーキテクチャやClean Architectureなどのシステムアーキテクチャなどの選択…

2019年度 iOSアプリの勉強方法

前回のサーバサイドエンジニアからiOSエンジニアへ転向したの記事に書いたとおり現在はiOSの開発を主にしている。その中でどのように勉強したのかを書いていく。 iOSエンジニアの状況について 勉強方法の前にiOSエンジニアがどのような状況なのかを説明した…

サーバサイドエンジニアからiOSエンジニアへ転向した

そういえば最近WebからiOSの開発にシフトしたのでそのことについて記事を書いていく。 内容としては以下の2点を中心に書こうと思う。 なぜiOSエンジニアにシフトしたのか どうやってiOSエンジニアにシフトしたのか なぜiOSエンジニアにシフトしたのか Web技…

要件定義・設計・実装の全部が必要です

結論 上流工程がプログラミングよりも価値がある時代は終わった 要件定義・設計・実装を全て出来るようにならないといけない アジャイルが主流に tech.nikkeibp.co.jp 上の記事にもあるようにアジャイル開発が大手SIerでも採用されるようになってきた。これ…

Kururu - テスト管理ツールをリニューアルした

今年に入ってからずっと開発していたKururuのリニューアルを昨日リリースした。 この記事ではリニューアルした意図と内容を書いていく。 リニューアルのきっかけ 去年の12月の段階で既にリリースはしていたが、自分の中でまだ人に勧められるものではないなと…

Kururu - テスト管理ツールをなぜ作ったのか【後編】

前編の記事は以下です。 Kururu - テスト管理ツールをなぜ作ったのか【前編】 - cassette いきなり結論から書いてしまうと、今までのテストの実施方法がアジャイルに適していないと考えているからだ。 アジャイルでのテストについて アジャイルについて全て…

知っていることと経験してみることは違う

今回は技術とか何も関係のない普通の記事です。 最近改めて知っていることと、経験してみることは違うと実感する。 例えば、最近Twitterで正社員とフリーランスどっちがいいかという議論が活発に行われていた。実際はそれぞれメリデメあるよねというのが真実…

Kururu - テスト管理ツールをなぜ作ったのか【前編】

自分が実はテスト管理ツールを作っているというと、多くの人の反応は「そうなんだふーん」というリアクションが多い。もちろん、個人開発をしている人の多くがこういう反応をされる。 正直こういう反応は慣れていてとくに問題があるわけではないが、エンジニ…

TypeScriptとevent.persist()

備忘録 ReactとTypescriptの組み合わせで、event.persist()を型付けをしたい場合。 以下のように書けばコンパイルが通った。 const handleChange = (event: React.SyntheticEvent<EventTarget>) => { event.persist(); ~~~ }; 取り急ぎ細かい理由はわからんが。。 理由は</eventtarget>…

2018年の振り返りと2019年に向けて

2018年についての振り返り Kururuのリリース Kururu - テスト管理ツール 非常に時間がかかった。。結局、前年作っていたのはやめて再度企画も含めてやり直しをした。再度実装したことで遅くなっと指摘されることもあったが初回リリースまでは自分のエゴ(納得…

サーバサイドの人間がiPhoneアプリ開発に入門した

今回は普段Web側で開発している私がiPhoneアプリ開発を経験した内容を書いていきたいと思います。 iPhoneについて知る 元々、AndroidユーザーということもあってiPhone自体の固有の動きが知識が不足してました。細かいことを言うとここをタップするとこうい…

GraphQLのメリット・デメリット

2019年9月追記しました! 最近GraphQLを扱うことが多かったのでその印象をまとめておこうかと思います。 現在、2018年10月の印象なのでここで上げたデメリットは今後解消されるかもしれないので悪しからず。 メリット エンドポイントをいちいち設定しないで…

金額計算の設計に挑む

cassetteの延澤です。 今回はみんなが大好きなお金、、の設計について書いていきます。 きっかけ 皆さんは金額を扱うアプリケーションを構築したことがありますか? 私は何だかんだ最近までお金を扱うアプリケーションを構築したことがあまりありませんでし…

プログラムの効率的な読み方

casstteの延澤です。 今回はプログラムの読みかたについて書いていきます。 まず既存のシステムに新規の機能を追加する時に、 「あなたはどのファイルから開きますか?」 この質問について答えていくのが今回のブログの内容になります。 何故読み方が大事な…

企業勤めでは評価と年収に相関性はそこまでないんじゃないかな

cassetteの延澤です! 以下の記事を読んで少し引っ掛かることがあったので記事を書きます。 logmi.jp 簡単な要約 技術力ばかり上げていたら、相手から求めていることとの乖離が起きて評価が上がらないよというお話。後半の時間と目標については前半の話とあ…

ReactとVue.jsを状態管理から見た選び方

今回はReactとVue.jsのどちらを選定するかについて状態管理という観点で書いていこうと考えてます。 結論 いきなり結論ですがReactは関数型視点でコンポーネントを設計していく。Vue.jsはオブジェクト指向視点でコンポーネントを設計していく。 以上終わり。…

PhoenixでpryをDockerと併用して使う

久しぶりに普通の技術ネタを一つ。 今、ElixirのPhoenixを使って開発をしています。PhoenixはRuby on Railsの弟分みたいな存在でRailsを使用したことある人なら学習コストが低めで開発出来ると思います。 そこでpryをdockerと併用して使う方法の説明になりま…

6年間SEO対策に携わってみて

タイトルは釣りだ。流石に6年間ずっとSEOをやってきたわけではない。しかし、SEOについてエンジニア側から発信の情報は少なかった。その中で私がSEO対策をしていて気づいた原則を今回書いていきたい。 SEOは最適化であって上位にあげる手段ではない SEOの本…

現実的なオブジェクト指向でツラいところ

cassetteの延澤です。 最近、Elixirにハマっている。モダンな言語らしく痒いところに手が届く良い言語だなと感じる。個人としては今まで色々な言語で書いてきて得意な言語はあるけど、好きな言語というのはなかったので良かった。関数型だがモナドを用いない…

2017年度の振り返りと2018年度に向けて

総括 前職を退社して今月でちょうど1年になるので今年度の振り返りと来年度の目標を書く。 結果で言えば技術は大きく飛躍した。しかし、本来自分がやろうと考えていたことに関しては色々と見直さなければならない。来年度も今年度の延長線上で進めていくの…

ウォーターフォール・アジャイル以外の第三の道

cassetteの延澤です。 今回は「ウォーターフォール・アジャイル以外の第三の道」について書いていきたいと考えてます。ウォーターフォールとアジャイルのメリデメを簡単に紹介して、最後に私の考えを載せております。 ここでアジャイルについて言及してます…

テスト合宿に参加した

cassetteの延澤です! 本日はテスト関連のイベントに泊まり込みで参加した感想とそこから得た考えを書きます。 どんなイベント 以下のイベントに参加しました! WACATE2017 冬 ~すべてがTになる~ 開催概要 - WACATE (ソフトウェアテストワークショップ) …

サーバサイドの人間が最新のフロントエンドに入門した

cassetteの延澤です! 今回は「サーバサイドの人間が最新のフロントエンドに入門する」について書いていきます。 私自身普段はサーバサイドのプログラミングがメインです。しかし、最近事情がありフロントエンドの開発もしております。 元々、マークアップエ…

WEB開発したいならUbuntuを使う!

cassetteの延澤です。 今日は環境構築についてお話をしたいと思います。 とくにこれからプログラミングしたいと考えている方向きの内容になります! 以前、書いた通り環境構築を習ってしまえば初期のの学習コストは恐ろしく減ります。 そこで私が効果的だっ…

Pythonが人気になっている理由

cassetteの延澤です! 今回、pythonが何故注目されてきているのかについて書いていきます。 まず、以下の記事をご覧下さい。 www.publickey1.jp pythonが人気言語の1位になっております。以前はランキングに対して私はそこまで興味を惹かれませんでした。し…

プログラミングが苦手だった私が、苦手を克服した分割統治法という考え方

cassetteの延澤です! 前回、PHPの掲示板をフルスクラッチで3カ月かかった内容を書きました。 (参照:プログラムを書くことに絶望したら、環境構築をやればいいよ) しかし、この経験からある重要な概念を学ぶことが出来ました。 それは、エンジニアとして重…

プログラムを書くことに絶望したら、環境構築をやればいいよ

cassetteの延澤です! 今回は表題にある通り、「プログラムを書くことに絶望したら、環境構築をやればいいよ」というテーマについて書いていきます。 これは私の初めて就職した際のエピソードが元になります。そのエピソードとは、初めて就職した際に全然プ…

フリーランスに興味ある方必見!エンジニア視点の、3つのポイント!

cassetteの延澤です!現在、私はフリーランスエンジニアとして某企業に4月から常駐しています。フリーランスに興味はあるけれど、 「やっていける技量があるかわからない」「どうやって仕事を探したらいいの?」そんな人たちに役立つ(かもしれない)記事を…

何故、プロジェクトは炎上するのか?<解決編>

cassetteを運営する延澤です! developer-cassette.hatenablog.jp 前回の解決編を書きます(すごい日にちが空いてしまった) 振り返り 前回のポイント プロジェクト管理の本質は「人同士の関わり方」である 過去にも未来にも同じプロジェクトは存在しない 以上…

何故、プロジェクトは炎上するのか?<問題編>

cassetteを運営する延澤です! 今日はタイトルにある「何故、プロジェクトは炎上するのか?」を私のエンジニア経験から考察したいと思います。 プロジェクト管理の本質 世の中には今もどこかで炎上プロジェクトがあります。「人月の神話」というプロジェクト…