タグ

ブックマーク / techblog.timers-inc.com (21)

  • TestPlanの使い道 #testplan #xcode #hakata_test_night - Tech Blog

    一昨年の12月に博多に来て以来、丸一年ぶりに博多に来ています。 目的はSwift Days Fukuokaに参加するためです。 Swift Days Fukuokaとは 全国のSwiftに何らかの関係があるエンジニアが、福岡に一斉に集まって情報共有をする3日間(1/24 ~ 26)のイベントです。 第11回 HAKATA.swift x Swift愛好会~福岡と東京のSwift勉強会コラボ~ - connpassより引用 初日の今日は testnight.connpass.com です! イベントが発表されてすぐ登壇申し込みをしたんですが、特に発表する内容を考えていなかった中頑張って捻り出したのがTest Planの使い道です。 発表資料 Test Planとは Xcode 11から追加されたテストに関する新たな機能です。 これまでは端末の状態や設定を変更してテストをしようとすると都度スキ

    TestPlanの使い道 #testplan #xcode #hakata_test_night - Tech Blog
    invent
    invent 2022/03/11
  • iOSアプリのプロジェクトのSwiftとObjective-Cのコード量の割合をターミナルで出力するスクリプトを組んでみた - Tech Blog

    こんにちは!iOSエンジニアのすーです! 8月もあと少しで終わってしまいますね。 今回は、たまにはスクリプトも書いてみたいなと思って 「iOSアプリのプロジェクトSwiftとObjective-Cのコード量の割合をターミナルで出力するスクリプト」 を書いてみました。 最初からPure Swiftで立ち上げたプロジェクトなら不要なのですが、Objective-Cで立ち上げたプロジェクトで、徐々にSwiftに移行させている... なんていうときには、 どれだけ移行できたのか? 気になりますよね。 一応、Githubで管理しているプロジェクトなら、Github上で言語別の割合が見れますが、 他の細かい設定(.ymlとか.json)ファイルとかもHitしてしまう もし、CarthageやPods以下のファイル群もGithubで管理しているとそれも割合に 含まれてしまう といった問題が出てきます。

    iOSアプリのプロジェクトのSwiftとObjective-Cのコード量の割合をターミナルで出力するスクリプトを組んでみた - Tech Blog
    invent
    invent 2021/03/16
  • Zoomウェビナー勉強会開催指南書 #Zoom #オンライン勉強会 - Tech Blog

    こんにちは。オンライン勉強会主催の実績を解除した akatsuki です。先日potatotips #69を弊社主催でオンライン開催したので、その流れと知見を共有したいと思います。 ここではpotatotips体の話はしません。この勉強会自体について知りたい方は以下のページをご覧ください。 ブログ:potatotips #69 に参加しました (iOS/Androidブログまとめ) #potatotips by kumamo_toneさん Togetter:2020/4/27 #potatotips (iOS/Android開発Tips共有会) 第69回 by koogawaさん Zoomチャットログ:potatotips #69 チャット一覧 実施形式 Zoomのウェビナー機能を使いました。ウェビナーには以下の特徴があります。 Q&A機能が使える ロールはホスト、パネリスト、出席者 「

    Zoomウェビナー勉強会開催指南書 #Zoom #オンライン勉強会 - Tech Blog
    invent
    invent 2020/05/11
  • AndroidでもSign in with Appleしたい!#android #kotlin #sia #SignInWithApple - Tech Blog

    こんにちは、初めまして。 入社して3ヶ月経ち、家族向けアプリの開発に勤しむ中、最近、自分にも家族(子×2)ができたAndroidエンジニアのTsutouです。 AndroidApple IDでログイン? さて、弊社の事業であるFammでは、ログイン時のUX改善として、Sign in with Appleを導入しました。 背景として、Sign in with Apple(Apple ID でのログイン)はメールアドレスの秘匿によるプライバシー保護観点、ログインが簡単になるという点でとても良い機能です。 iOSではサードパーティログインを提供しているアプリにおいて実装が必須となっていること、昨今ではiPhoneからAndroidに乗り換えるユーザーも一定数いることから、両OS同時の導入を決定しました。 しかし、AndroidでSign in with Appleするには、iOSとは違い公式

    AndroidでもSign in with Appleしたい!#android #kotlin #sia #SignInWithApple - Tech Blog
    invent
    invent 2019/12/25
  • iOS 13/iPad OS 13に向けて対応した事 #ios13 #xcode11 - Tech Blog

    iOSDCの登壇が終わってホッとしているかっくんです。 先日リリースされたFamm 4.0.0 にてiOS 13/iPad OS 13向けの対応を行いました。 この記事ではどの様にして対応を進めたのかを共有します。 社内調整 WWDC 2019が終わり帰国してすぐに社内向けの調整を行いました。 ざっくりいうと「8月いっぱいはiOS 13/iPad OS 13向けの対応を行いたいのでiOSチームはよほど緊急対応が無い限りは他の案件はストップしたい」という事を伝え了承してもらいました。 恐らく、何よりもこの部分が難しい会社も多いだろうことは想像に容易いですが、快諾してくれたPO及び社内のメンバーには感謝しています。 新機能 Dark Mode iOSDCなどの登壇を見て頂いた方もいるかもしれませんが、WWDC 2019前1後2で僕はとてもDark Modeを推進していました。 さすがにこの状態

    iOS 13/iPad OS 13に向けて対応した事 #ios13 #xcode11 - Tech Blog
    invent
    invent 2019/09/20
  • AWS chatbot (チャットボット) で コストアラートをSlack通知 - Tech Blog

    はじめに エンジニアのウエです。Timers inc.では、ビジネス部門の一人として 配送・印刷・決済に関わる施策立案・業務改善を推進しています。また開発チームのプロダクトマネージャとして、顧客対応チームのマネージャとして、様々な役割でサービスに関わっています。 BizDevOps を通じた 効率化や改善に関わり、とても充実した日々を送っています。 今回の記事では、AWS Chatbot (チャットボット) を Slackへのコストアラート通知に利用した例を記載します。 前提 CloudWatch の Billing を利用するため、あくまでも概算です。 事前準備 ブラウザで Slack に bot用アカウントでログインします。 通知に利用する SNS トピック作成( us-east-1 )します。 手順 AWS chatbot から Client を作成します。 通知先として Slack

    AWS chatbot (チャットボット) で コストアラートをSlack通知 - Tech Blog
    invent
    invent 2019/08/01
  • WWDC Pre Party 2019を開催しました #timers_meetup #wwdc_preparty - Tech Blog

    GW中の予定が何も決まって無いiOSエンジニアのかっくん(@fromkk)です。 先日の4/23(火)に、もはや毎年恒例となっているWWDC Pre Party 2019を開催しました。 趣旨 WWDC Pre Partyは3回目の開催です。 初めてアメリカに行く人や、WWDCに参加する人は不安な事が多いと思います。 僕が初めてWWDCに参加した頃はiOS界隈の知り合いも全然いなかったので、色んな勉強会に参加してWWDCに参加すると言う方に片っ端から声を掛けて仲間を集めていました。 事前に知っておけば良かったと思う事が色々あったので、ミートアップを開催すれば多少不安も解消するのでは?と思いイベントを開催する様になりました。 前に不安解消駆動でイベント開催と言う記事を書いたので、良ければそちらも併せてご覧ください。 発表内容 yutaka_kubota | WWDCを楽しむTips10連発

    WWDC Pre Party 2019を開催しました #timers_meetup #wwdc_preparty - Tech Blog
    invent
    invent 2019/04/24
  • BathHausで開発合宿してみた #bathhaus #appsync - Tech Blog

    弊社では普段のスプリント内では出来ないタスクやUXの改善、バグ修正などのタスクをするタスクデーという日が2週間に一度あります。 今月は年末があるという事で最終週が全てタスクデーのタスクウィークになったので、その内1日を使ってAWS AppSyncを触ってみるという合宿を行いました。 BathHausとは BathHausは チル・アンド・ワークプレイス というコンセプトで初台と代々木公園駅の間ぐらいにあるコワーキングスペースです。 代々木公園駅から歩いた動画を撮ってみたのでよかったらどうぞ。 事前準備 今回は1 Dayで予約したんですが、予約するとSesameというアプリをインストールを促され、予約時のメールアドレスと一致したアカウントでログインすると鍵が表示される様になります。 当日のみ、その鍵でコワーキングスペース入れる様になります。 内装 地下がコワーキングスペースになっています。

    BathHausで開発合宿してみた #bathhaus #appsync - Tech Blog
    invent
    invent 2019/03/29
  • Firebaseを使っているiOS/AndroidエンジニアにAppSyncを触ってもらった - Tech Blog

    サーバーエンジニアの下川です。 突然ですが、AWS AppSync触りましたか? 昨年から「AppSyncがあればサーバーの工数が下がるらしい」「Firestoreにとって変わるものがついにAWSから!」の様な噂を耳にすることが多くなって来ました。 Fammではオンデマンド商品をいくつかユーザーに提供していることからもサーバーサイドの処理は不可欠となっており、新規機能開発でサーバーの工数の方がクライアントに比べて高い事もしばしばです。 そこで、AppSyncを入れてサーバーの工数が下がるなら導入したいと考えましたが、クライアントエンジニアに使い心地を聞かずには導入までは決められません。 ということで早速私が信頼するiOSとAndroidエンジニアを連れてコワーキングスペースで1日合宿して来ました。 AppSyncとは ・マネージドのGraphQLサービス ・データストアをDynamoDB

    Firebaseを使っているiOS/AndroidエンジニアにAppSyncを触ってもらった - Tech Blog
  • Material DesignとiOS Human Interface Guidelinesを両立させるためのメニューの条件 - Tech Blog

    Timersでプロダクトマネージャーしてます わた と申します。メガネとウイスキーとコーヒーを愛するメガネです。弊社オフィスの近所では、なかなか手に入らないと噂のイチローズモルトが売られていました。 さて、今回はAndroidとiOSのそれぞれでどのようにメニュー(コンテンツ)を配置すべきか?という話です。Material DesignとiOS Human Interface Guidelinesを読んでみて、特にメニュー部分に特化して考察してみようという試みです。 サービス提供者は、コンテンツの情報構造を整理せよ 当たり前すぎる話ですが、機能・コンテンツをどのようにセグメントし、優先順位をつけねばなりません。その上で、各ガイドラインに準拠した機能配置をすべきです。 例えば、子育て家族アプリFammであれば、現状(2017/4/17)時点での機能・コンテンツのセグメントは以下の通りです。

    Material DesignとiOS Human Interface Guidelinesを両立させるためのメニューの条件 - Tech Blog
    invent
    invent 2018/10/12
  • MVP休暇制度のご紹介 - Tech Blog

    お久しぶりです。先週末はtry! Swiftに3日間参加してSwiftやっていく気持ちのかっくん(@fromkk)です。 テックブログではありますが掲題のMVP休暇制度についてご紹介したいと思います。 MVP休暇とは 社内の定義によると 毎年10月・4月に審査を行い、該当者がいる場合、審査後直ちにその功績を全社員に公表し、賞品又は賞金及び連続3日間の旅行休暇を贈呈するもの との事です。 MVP受賞 来たる2017年11月に2017年下期のMVPの発表がありました。 MVP制度が始まってから過去に2回発表があったんですが、ずっと逃していたので悔しい思いがありましたが、3回目で念願のMVPを頂く事が出来ました。 副賞として「と泊まれる温泉1泊2日ペアチケット with MVP休暇」を頂きました。 宿は自分達で探していいよとの事だったんですが、と泊まれる宿はかなり限られてしまい探すのが大変だ

    MVP休暇制度のご紹介 - Tech Blog
    invent
    invent 2018/03/07
  • 気軽にプッシュ通知のテストがしたい【iOS10以降対応】 - Tech Blog

    お久しぶりです!iOSチームのかっくん(@fromkk)です。 iOS 10がリリースされましたね! 様々な機能が搭載されましたが最も目につくのはプッシュ通知に画像が表示出来たり直接返信が出来る機能じゃないでしょうか? 新しい機能を試してみたりするのも楽しいですが、プッシュ通知って気軽にテストし辛いですよね。 特に弊社の場合サーバーチームとiOSチームで分かれていて、しかもプロジェクトも多忙だったりするとちょっとした修正も頼み辛いので、サーバーに変更が必要な事って試し辛かったりするんですよね。。 でもプッシュ通知ってIPアドレスで制限されていたりするわけじゃないので自分で作ってしまえばいいじゃない!ということで Docker を利用して作ってみました。 構築したものは こちら です。 Mac OSに Docker がインストールされている事を前提にしています。 構築する環境は下記の通りです

    気軽にプッシュ通知のテストがしたい【iOS10以降対応】 - Tech Blog
    invent
    invent 2017/08/25
  • チーム開発の成功に大切なこと - Tech Blog

    こんにちは、サーバエンジニアのひっしーです。 この7月でTimersに入社して1年の自分が、この度プロジェクトマネージャ(PM)にチャレンジします。当然、強制ではなく自身の希望で、プロダクト開発に関わる様々な経験を積んでみたいという気持ちからです。そしてそれをGoしてくれる会社、なんて柔軟なんだ…ありがとうございます。 というわけで今回、エンジニアからPMまで経験する私がチーム開発について書いてみます。 Timersのプロジェクトチーム体制 1年かけて学んだ、成功のために大切なこと ポジティブ 日々の会話 自責 Timersのプロジェクトチーム体制 Timersでは、プロジェクトを推進するにあたり各プラットフォームからメンバーが集まりチームを組織します。 プロジェクトマネージャ(PM) デザイナー Androidエンジニア iOSエンジニア サーバエンジニア的に各プラットフォームから

    チーム開発の成功に大切なこと - Tech Blog
    invent
    invent 2017/07/11
  • AndroidのCIサービスをCircleCIからBitriseへ移行しました - Tech Blog

    こんにちは。Androidエンジニアの斎藤です。 先日業務でFammのAndroidのCI移行を担当しました。そこで移行するに至った背景や、選定基準、移行ハマったところについて書くことにしました。Bitriseの具体的な登録方法やビルドステップ設定方法については割愛させていただきますのでご了承ください。 なぜ移行するのか CircleCIのビルドコンテナのメモリ上限の4Gに引っかかるようになってきました。たまに発生していた現象が頻繁に起こるようになってきました。その度にcircleci.ymlのパラメータを修正していましたが、いよいよ限界を感じ移行するに至りました。 新CIサービスの選定基準 選定基準は大きくあげると下記2点ありました。 使用メモリに上限を設けていないこと。 今までと同様のCIフローを再現できること。 メモリ上限についてはいうまでもありません。もう1つの現在のCIフローの再

    AndroidのCIサービスをCircleCIからBitriseへ移行しました - Tech Blog
    invent
    invent 2017/06/21
  • Xcode 9からテストが大幅に進化します! #wwdc2017 - Tech Blog

    どうも!引き続きWWDCの4日目に参加中のiOSチームのかっくん(@fromkk)です。 先ほど What's New in Testing というセッションを聴講してきて良い感じに進化していたのでシェアしたいと思います。 異なるアプリを跨いでUIテスト これまでは1つのアプリケーションしか開けませんでしたが、 XCUIApplication から複数のアプリを開いてテストを実行する事が出来る様になりました! class XCUIApplication { init(bundleIdentifier: String) init(url: URL) } アプリを切り替える時は activate() メソッドを実行すれば切り替えられる様です。 それに伴い state というプロパティが増えました。 class XCUIApplication { enum State { //The appli

    Xcode 9からテストが大幅に進化します! #wwdc2017 - Tech Blog
    invent
    invent 2017/06/09
  • 6ヶ月間ライブラリを作り続けて得られたもの - Tech Blog

    こんにちは、iOSエンジニアのちぎらです。 先月になりますが、表題に関係する内容で登壇しました。 第5回スタートアップiOS勉強会 (発表資料: スター数689のライブラリを作る為にやった事) 年末ですし、今回は少しエモい話をさせていただきます。 経緯 2016年の10月までの6ヶ月間、一月にひとつライブラリを作るというルールを作り、細々とやっていました。初めはただライブラリを作るだけだったのですが、作ったものをより多く、海外の人にも見て使ってもらいたいという欲求が芽生えてきました。そこで、スター数を基準にして成果の評価をしようと決めました。 ありがたいことに最後の月に作ったライブラリが伸びました。 View2ViewTransition 一つだけルールを決めた 「スターください🌟」を言わない。 ライブラリやREADMEの分かりやすさを評価したかったので、甘えちゃいますし、言わないと決め

    6ヶ月間ライブラリを作り続けて得られたもの - Tech Blog
    invent
    invent 2017/03/19
  • GAEで画像リサイズ処理を書いてみた - Tech Blog

    サーバーエンジニアの下川です。 先日のre:inventでもあったとおり、最近サーバーレス・アーキテクチャについて耳にする事が多くなってきました。 TimersでもLambdaを使用して写真リサイズ等の処理をサーバレス化し運用しています。 今回は写真のリサイズをGoogle App Engine(以下、GAE)で実装するとどうなるのか?というのを試してみました。 言語はGolangを使用しました。 環境構築 せっかくDockerを学習中なので、Dockerfileで書いてみました。 また、2017年2月時点でのGAEでのgolangのバージョンは1.6.2です。 FROM google/cloud-sdk RUN rm /bin/sh && ln -s /bin/bash /bin/sh RUN apt-get update -y && \ apt-get install -y --no-

    GAEで画像リサイズ処理を書いてみた - Tech Blog
    invent
    invent 2017/02/18
  • 何故TimersのiOSチームではモダンアーキテクチャを採用しないのか - Tech Blog

    明けましておめでとうございます!年もよろしくお願いします! 年末からを飼い始めてなるべく早く家に帰りたいかっくん(@fromkk)です。 最近iOS界隈ではMVC以外のアーキテクチャが流行ってますね。 ベースは昔からあるMVCですが、MVPやMVVM、VIPER、Clean Architecture等など... どれもメリット/デメリットあるかと思いますが、弊社のiOSチームではどれも採用せずに昔からのMVCでプロジェクトを進めています。 何故他のアーキテクチャを採用しないのか 一言で言うと学習コストが高いのが大きいです。が、それだけでも無いので細かく記述したいと思います。 学習コスト 先述しましたが今と違うことをしようとするとどうしても学習コストが高くなります。 また、一人ならいいですが複数人いる場合はチーム内の皆も同じく学習する必要があります。 個々人のスキルに差が合ったり、メンバ

    何故TimersのiOSチームではモダンアーキテクチャを採用しないのか - Tech Blog
    invent
    invent 2017/01/21
  • Realm Mobile Platformを触ってみた - Tech Blog

    お久しぶりです!iOSチームのかっくん(@fromkk)です。 9月末(28日〜30日)に皆で毎年恒例の「数字の上がらない開発合宿」に行ってきました! 名前の通り通常の業務から離れて、普段出来ない事・課題には感じているんだけどやれずにいた事を3日間で片付けようという趣旨の合宿です。 僕も事前にいくつか自分でタスクを考えていたんですが、合宿の前日にRealm Mobile Platformの発表がありこれはビッグウェーブが来る!!!と思ったので触ってみる事にしました。 Realm Mobile Platformとは Realm Mobile Platformは簡単に言うとサーバー(macOS, Linux)にデータベースサーバー(Realm Object Server)を構築し、クライアント(iOS/Android)とリアルタイムに同期するという仕組みです。 ネットワークに関する処理は全く書

    Realm Mobile Platformを触ってみた - Tech Blog
    invent
    invent 2016/10/08
  • Swiftのビルド時間を減らしてCI環境でのデプロイも早くしたお話 - Tech Blog

    iOSエンジニアのすーです! あちらこちらでWWDC2016ネタで盛り上がっている中、それとは関係のない記事を投稿させて頂きます...! 現在弊社のFammでは、もともとObjective-C Onlyで書かれたプロジェクトでしたが、 新規機能は基的にSwiftで書くようにして、少しずつ既存のコードをSwift化することで、Swiftプロジェクト全体の約45%を占めるようになりました。 そこで浮上してきた問題が、 ビルド時間 です。。 差分ビルドが有効とはいえ、開発中のブランチを行ったり来たりしたり、ちょっとObjective-C側のコードを書き換えたりしてタイミングが悪いと差分ビルドが働かずまた一からSwiftのソースコードをコンパイルしてってなって...。 まだ、自分の使っているマシンの性能が良い方なので、そこまで気にはならないのですが、これがCI環境となるともっと悩ましいことにな

    Swiftのビルド時間を減らしてCI環境でのデプロイも早くしたお話 - Tech Blog
    invent
    invent 2016/07/10