へなちょこSEの考察

0x21歳のへなちょこSEが、日々思うことを考察します。自社内、金融系を経て現在法人系PKG開発に従事。

【React Native/Expo】アプリを多言語対応するためにやったこと

こんにちは。 「Fast Template」という定型文のメールやSMSの作成を素早く簡単に行えるソフトを作っています。 Fast TemplateHaruya Nakamura仕事効率化¥120apps.apple.com Fast Template LiteHaruya Nakamura仕事効率化無料apps.apple.com 今回、アプリを多…

【New Release】素早く定型文送信できるアプリ、「Fast Template」をリリースしました!(iOS)

新しいアプリをリリースしました! 「Fast Template」という定型文を送信するアプリになります。 Fast TemplateHaruya Nakamura仕事効率化¥120apps.apple.com Fast Template LiteHaruya Nakamura仕事効率化無料apps.apple.com ちなみに、初めから海外でも使…

Privacy policy for "Fast Template"

Privacy Policy Haruya Nakamura built the Fast Template app as a Commercial app. This SERVICE is provided by Haruya Nakamura and is intended for use as is. This page is used to inform visitors regarding my policies with the collection, use,…

個人開発でアプリを作るときに考えたこと2(何を使うか)

こんにちは。 前の記事では個人開発を始めるにあたり、何を作るかをどう考えたかを書きました。 henahena.hateblo.jp 今回は「何を使うか」ということで、技術選定の話を書きます。 初めてのスマホアプリ開発なら、「React Native + Expo」一択 異論は認めま…

個人開発でアプリを作るときに考えたこと1(何を作るかとか)

こんにちは。 個人開発で「セワシタ?」というアプリを開発しています。 セワシタ? - お世話を記録・共有できるアプリHaruya Nakamuraライフスタイル無料apps.apple.com play.google.com まだリリースから3ヶ月(2020年1月現在)ほど、ダウンロード数もよ…

【Expo (React Native)】React NavigationのHeaderをやめてReact Native ElementsのHeaderを使う

React NavigationのHeaderを使っていたのですが、StateやらPropsと絡めていろいろやろうとすると面倒だったのでやめることにしました。 代わりにReact Native ElementsのHeaderコンポーネントを使うことにします。 react-native-elements.github.io React Na…

【Expo / React Native】ExpoをSDK36に上げたらAndroidでreact-native-swiperが動かない

ExpoをSDK36に上げたところ、Androidでアプリが起動しなくなった。 事象としては下記のものと同じだった。 ViewPagerAndroid has been removed... on 1.6.0-nightly.5 · Issue #1108 · leecade/react-native-swiper · GitHub react-native-swiperが新しいRea…

【Expo / React Native】mobx-persistを使ってクラスを永続化した場合に、setter/getterが動かない

React Nativeで永続化したくて、Mobxの永続化が可能なmobx-persistを使いました。 mobx-persistはプリミティブ型なら特に問題なく永続化/読み出しが可能ですが、オブジェクトなどは注意が必要です。 基本的にはプリミティブ型に変換してstoreに保存し、取り…

【Expo (React Native)】Expo SDK 36が出てたので更新してみた

ふと見たらExpoSDKのv36がリリースされてました。 これまでは35を使ってたので更新してみました。 blog.expo.io こちらの記事を参考に実施。 まずはブランチ切り替え うまくいかなかったらやなので、ブランチ作りました。 名前はSDK36。まんまです。 ブラン…

【Chrome拡張】Twitter Timerをリリースしました。

Google Chromeの拡張機能、「Twitter Timer」をリリースしました。 chrome.google.com Twitterをついつい使いすぎてしまうツイ廃の方に、現実との接点の時間を増やしてもらうことを目的とした拡張機能です(?)。 何ができるのか この拡張機能をインストー…

【セワシタ?】カレンダー機能とグラフ機能を追加しました。

個人開発中のセワシタ?アプリにカレンダー機能とグラフ機能を追加しました。 どちらも全然きれいに作ってないのですが、もうちょっと修正したらGitHubで公開してみたいところです。 グラフ機能 グラフ機能 シンプルな折れ線グラフが書けるReact Native用コ…

【React Native/firebase】firestoreのページネーションを使ってみた

作っている「セワシタ?」アプリでチャットルームの機能を提供しています。 ユーザー(家族)同士で会話したり、誰かがお世話を実施したことを登録すると、ペットが「お世話してくれてありがとう!」と言ってくれる機能です。 (将来的にはLINE連携にしたい…

【セワシタ?】グラフ機能を追加しました。

セワシタ?アプリのアップデートを行いました。 タイトルの通り、グラフ機能を追加しています。 グラフ機能を追加するにあたり、グラフの描画コンポーネントをreact-native-svgを使って自作しました。 まだ自分に必要な機能しか付加してませんが、とりあえず…

React Nativeで開発するならExpoなんだけど、OTAアップデートが逆に困る件

React Nativeで開発をするなら、Expoはとっても便利です。 最高なのは実機での確認がすごく簡単なこと。 特にiPhoneでの開発には通常はMacが必須なわけですが、普段使うのはWindowsなんだよなぁなんて自分みたいなエンジニアには、Windowsで開発しながら即時…

React Native ElementsでOverlayを使ったらキーボードで入力エリアが隠れた

タイトルの通りです。 OverlayにはKeyboardAboydingViewが効かないらしく、どうしても隠れてしまいました。 最終的にOverlayの中の一番下に、「react-native-keyboard-spacer」を追加して対応しました。 GitHub - Andr3wHur5t/react-native-keyboard-spacer:…

スマートフォンアプリ「セワシタ?」をリリースしました

ペットのお世話を管理しつつ、家族のつながりを強くするアプリ、「セワシタ?」をリリースしました。 iOS版 セワシタ?Haruya Nakamuraライフスタイル無料apps.apple.com Android版 play.google.com 簡単に言うと、お世話の予定を登録し、実施した記録を入力…

【Expo (React Native/Android)】BottomTabNavigation + Admob + GiftedChatでキーボードが入力エリアを隠してしまう問題

React Nativeアプリを開発中に、タイトルの問題に当たって解決したので記録しておきます。 開発環境 事象 対策1:KeyboardAboidingViewの追加 対策2:ReactNavigationのヘッダーの高さ分Offset設定 対策3:ステータスバーの高さ分Offsetを追加 対策4:Ad…

Reactで親子間の制御をする方法

Reactを試してみていて、親子間で制御をする方法に困っていろいろ調べたので簡単にメモ。 やりたかったこと Material UIを使ってモーダル的なDialogを表示したり閉じたりしたかった。 公式サイトのやり方だと子供(つまりDialog側)のコンポーネントに開いた…

DBMS_SCHEDULERをPL/SQLの中で使うとトランザクションが効かない

DBMS_SCHEDULERを使っているPL/SQLで、エラーが起きた際にロールバックしようとしたが、ロールバックできない事象が発生した。 いろいろ試してみた結果、ExceptionをCatchした中でDBMS_SCHEDULERのDROP_JOBを呼んでいたのだが、これが呼ばれるとトランザクシ…

herokuでPlay Framework 2.6(Scala)を動かした話

備忘録を兼ねて。 Herokuに登録する辺りの話は書きませんがこちらを参考にしました。 qiita.com あとPlay Frameworkを動かすのはこちらを参考に。 途中まではそのままです。最後にちょっとつまずきました。 qiita.com Play Framework 2.6の準備 特に環境作成…

Redmineのチケット番号を指定してソース差分を取る

Redmineのチケット番号を指定してソース差分を取る ソースの差分を取るとき、Redmineのチケット番号を指定したいなと思ったので、バッチを作りました。 チェックアウトしたフォルダで実行して、チケット番号をカンマ区切りで複数指定したら勝手にその前後の…

Oracleの分析関数とWITH句を同時に使えない Oracleで分析関数(Rank)とWith句を同時に使用しようとしたら、 SELECTを実行するだけで 「ソケットから読み込むデータはこれ以上ありません。」 とか言われて接続が切れてしまった。 ググってみてもあまり情報が…

iPhoneの「iPhoneのロック解除パスコードを○分以内に変更してください」問題

今日、突如としてiPhoneにこんなメッセージが。 「iPhoneのロック解除パスコードを60分以内に変更してください」 何この怪しさバツグンのメッセージ。 即座にネットで調べてみると、どうにも対処法が出てない。 参考にしたのはここ http://unsolublesugar.co…

iBatisのDynamicタグを使う際の注意点

iBatisのDynamicタグを使う際の注意点 iBatisなんて使ってる人いないかもですし、 MyBatisもそうなのか知りませんが、 今日つまずいたのでメモ。 isNotEmptyのprependを使った WHERE句の直後に来るかもしれないところで、 必要だったのでprependを使いました…

「アジャイル開発とスクラム」を読んで

「アジャイル開発とスクラム」という本を読みました。 アジャイル開発とスクラム 顧客・技術・経営をつなぐ協調的ソフトウェア開発マネジメント作者: 平鍋健児,野中郁次郎出版社/メーカー: 翔泳社発売日: 2013/01/18メディア: 単行本(ソフトカバー)購入: 1…

要件定義についての幻想

仕事の話。最近お客さんのところに行っていて思うことは、要件定義で用件が固められるなんて幻想は抱いてはいけないということ。これはやり方の問題ではなく、「不可能」だと認識する必要がある。8割も決められれば御の字、実際には6〜7割程度しか決めること…

就職活動の問題点

就職活動は、インターネットの登場で大きく様変わりしました。 就職情報サイトに登録し、気になる企業にエントリーし、履歴書を送ったりWEBテストを受けていく。 面接を受けていくスタイルは変わらないと思いますが、それを同時に何社もこなしていくという形…

iBatisで同じSQLを流用する際の問題

iBatisが変な動きをした。※正確には、TERASOLUNA 一つのリクエストの中で、同様のSQLを二回発行する必要があったので、二度使った。 SelectDAO seDao1 = new SelectDAO(); seDAO1.setXxxCd("aaa"); SelectResult [] result = query.executeForObjectArray("s…

どこまで教えるか、いつまで教えるか

今年2年目になる後輩がいます。 自分が育成担当なのでいろいろ教えながら働いているのですが、さていつまでどこまで教え続ければいいかなと悩んでいます。ある程度年次が経っている後輩なり同輩に教えるなら、「ここはこうでこれこれこういう理由でああなっ…

MS Project と Redmineの連携

MS Project と Redmine を連携させてみた はじめに プロジェクトの管理をしなければならなくなった。 これまでは一開発者だったんだけど、プロジェクトの同時進行が増えてきたために、ついにそのお役が回ってきてしまった感じ。 まぁいい機会なので頑張って…