タグ

ブックマーク / qiita.com (83)

  • Xcode の力を借りない Swift の Dynamic Library の作成とビルドを試す - Qiita

    この記事は ドワンゴ Advent Calendar 2019 の 5 日目の記事でしたが、遅刻しました 去年の今頃はサーバサイドエンジニアとして GraphQL サーバおよびクライアントの設計・開発等 に携わっていましたが、今年の6月から iOS エンジニアとして働きはじめました。雑多な技術系のメモは普段は scrapbox に載せています。 今秋、チームのメンバー数名と iOSDC Japan 2019 に参加し、Swiftにおけるインポートとリンクの仕組みを探る を拝聴したことで今までふんわりしていたライブラリやインポート周りへの知識を深める機運が生まれたため、今回は周辺知識を改めて整理しつつ、最終的には得た知識で持って、Xcode を利用せずに手作業でライブラリの作成とビルド, 実行までを試してみよう!という記事を書いていきます。 モジュールやインポート、ライブラリについて理解しつ

    Xcode の力を借りない Swift の Dynamic Library の作成とビルドを試す - Qiita
    nobuoka
    nobuoka 2020/02/25
    Swift や Objective-C のモジュール周りがまとまってる
  • Docker Ubuntu18.04でtzdataをinstallするときにtimezoneの選択をしないでinstallする

    docker imageのベースイメージをubuntu18.04に上げた時に tzdata を apt-get install するところで止まってしまってハマったのでメモしておく 素のubuntu17.10の場合 Sending build context to Docker daemon 2.048kB Step 1/2 : FROM ubuntu:17.10 ---> e4422b8da209 Step 2/2 : RUN apt-get update && apt-get install -y tzdata ---> Running in dbe30f24e997 Get:1 http://security.ubuntu.com/ubuntu artful-security InRelease [83.2 kB] Get:2 http://archive.ubuntu.com/ub

    Docker Ubuntu18.04でtzdataをinstallするときにtimezoneの選択をしないでinstallする
    nobuoka
    nobuoka 2019/03/17
    “DEBIAN_FRONTEND=noninteractive” なるほど
  • コードで見る graphql-java 関連ライブラリの関係性 - Qiita

    graphql-java を Spring Boot などで使う場合、簡単に使えるようにする場合 graphql-java 以外にも色々なライブラリを読み込む必要があります。 これは graphql-java はプリミティブな API しか持っておらず、web 側との繋ぎとか、subscription の対応をそれ単体ではできないためです。 この辺りの関係性が自分の中でも結構曖昧だったり、ドキュメントの情報しか読んでなかったので、コードリーディングしてわかったことをこの記事にメモします。 前提 Spring Boot + Kotlingraphql-java-tools を使う場合で考えます。この辺りについては会社のブログの方でも書いたので、こちらもよければご参考にしてください。 以下のライブラリを使います。 graphql-java https://github.com/graph

    コードで見る graphql-java 関連ライブラリの関係性 - Qiita
  • Ktor on Android - Qiita

    この記事は リクルートライフスタイル Advent Calendar 2018 の9日目の記事です。 日は、ホットペッパービューティーのAndroidアプリ開発を担当している @oxsoft が、KtorをAndroidで使ってみた話を書いてみたいと思います。 Ktorとは? Kotlin製のWebフレームワークで、DSL形式で簡単に書くことができます。先日Ktor 1.0がリリースされました! https://ktor.io/ Welcome Ktor 1.0, a connected applications framework built by the Kotlin team! Create asynchronous, high-performing, and lightweight web servers and build non-blocking multiplatform

    Ktor on Android - Qiita
    nobuoka
    nobuoka 2018/12/09
    Ktor を Android で動かす、なるほど
  • Goodbye `shape` - AndroidのMaterialButtonがすごい良かった話

    概要 Material Design Theming対応を各アプリで進めるのは、AndroidX対応と依存して難しいところはありますが、そもそも対応するとどういいのかみたいな情報があまりなかったので、同じことをするにしても新しいのだとどうよくなるのか?みたいな話を書きたいと思ってます。 Material Deisgnのライブラリで、MaterialButtonとか他にもStyleが入ってきて、今まで作ってきていたオレオレのshape drawable(XMLで作っていたDrawable系のファイルを纏めて指している)を作らなくてもだいたいの事ができるようになったよねという話です。 Material Themingとは? MaterialDesignを、実際のアプリに合わせてカスタマイズできるように少しやわらかくしたもの。 MaterialThemingを実装した各プラットフォームごとの実装

    Goodbye `shape` - AndroidのMaterialButtonがすごい良かった話
    nobuoka
    nobuoka 2018/09/28
  • フリーランスエンジニアの単価を決める - Qiita

    記事概要 書いた目的 フリーランスエンジニアの単価設定に「情報の非対称性」ある フリーランスは市場動向掴んで「売り手」になるべき エンジニア応援したい、優秀なエンジニア年収伸ばせば良いし、キャリアミスマッチしてるエンジニアは再構築すれば良い 読者想定はフリーランスエンジニア、qiitaに多そうだから投稿 記事の内容 1. 自分のプロフィールと単価を公開 前職年収900万円で、フリーランス日額6.5万円〜10万円 40社ぐらい営業して、1/3は話が進む 2. この単価設定にした根拠を説明 前職基準、採用市場、派遣、フリーランス市場、英語圏 3. 終わりに 「こんな人材求められてるんじゃないかな」、「こうしたらキャリア積めるかも」を記載 正社員に戻って修行するなら、開発チームが強い(CTOが役員として存在)イケてるWeb企業で正社員キャリア積むことを目指すべき フリーランスのままでも「チーム

    フリーランスエンジニアの単価を決める - Qiita
    nobuoka
    nobuoka 2018/09/13
    参考になる
  • kotlin内でkotlin scriptを実行する - Qiita

    kotlin 1.1 でjavax.script API(JSR-223)がサポートされています。 https://kotlinlang.org/docs/reference/whatsnew11.html#javaxscript-support これにより、kotlin上でkotlin(script)ソースをコンパイルして実行することができます。 公式にサンプルソースがありますので参照ください。 https://github.com/JetBrains/kotlin/tree/master/libraries/examples/kotlin-jsr223-local-example 以下、おおまかに説明します。 下記内容は kotlin 1.2.10 で確認しています。 目次 準備 実装 2.1 単純な実行 2.2 変数を渡す 2.3 コンパイル 2.4 eval 応用例:簡易テンプレー

    kotlin内でkotlin scriptを実行する - Qiita
    nobuoka
    nobuoka 2018/01/28
    お、おおお。 Groovy みたいに Kotlin でも実行時コンパイルさせたいと思ってたんだけど、Kotlin を実行時に JS にコンパイルして使うって方法があるのか!!! と思ったけどこれは JS にコンパイルするわけではなさそう
  • Amberで検討されているJava構文の変更 - Qiita

    Amberとは Java言語を拡張するプロジェクトです http://openjdk.java.net/projects/amber/ Amberのブランチ records データ保持用のクラスです sealed-types シールドタイプ newesapes line blockのエスケープ対応 patterns パターンマッチの全体的な開発 patterns-deconstruction パターンマッチでのデコンストラクション patterns-stage-1 instanceofのみのパターンマッチ pattern-runtime パターンマッチのランタイム? local-methods ローカルメソッド lambda-leftovers ラムダで_使えるようにする concise-method-declarations メソッド定義の簡略化 enhanced-enums 拡張enu

    Amberで検討されているJava構文の変更 - Qiita
    nobuoka
    nobuoka 2018/01/24
    気になりますね
  • WSLから名前付きパイプ経由でDocker for Windowsに接続する方法 - Qiita

    概要 MSの公式ブログWindows Command Line Tools For Developersで紹介されている。 [Cross Post] WSL Interoperability with DockerWindows Command Line Tools For Developers この方法を使えば、Docker for Windowsでtcpのポート2375を晒さなくても利用できる。 WSLから直接接続するのではなく、Windowsの名前付きパイプ(Named pipe)に通信するNpiperelay.exeとWSLのソケット通信ツールのsocatを使って、Docker CLIからのUnix socketへの接続を変換する仕組み。 (上記ブログより) ざっくり手順 go, socat, Docker CEをインストール goでNpiperelay.exeをビルドし、W

    WSLから名前付きパイプ経由でDocker for Windowsに接続する方法 - Qiita
    nobuoka
    nobuoka 2018/01/17
    おおっ、ええやん
  • 非エンジニアのマネージャがエンジニアチームと上手くやる方法 - Qiita

    近頃の世の中の流れは恐ろしい。全業種ソフトウェア企業にならないと競争力が維持できない。 “寝たときは製造業、朝起きたらソフトウェア企業” by Werner Vogels(CTO, Amazon.com)at AWS re:Invent 2017 Key Note という恐ろしい話は管理職に落ちてくるので、「寝たときは製造業のマネージャ、朝起きたらソフトウェア企業のマネージャ」になれるのか?を考え始めるべきです。 元銀行員で非エンジニアで、いつのまにか開発ツールベンダーにどっぷりの私の経験からのTips を共有します。 エンジニアの方は、非エンジニアのマネージャにしれっとリンクを送ってあげてください(笑) 結論: 目標もバスの走らせ方もバスに乗せた優秀な人たちに任せて、バスの整備をする人になる。 マネージャが「何をつくるか?」の決定権を持てるのは彼/彼女が優秀なエンジニアの場合だけです。非

    非エンジニアのマネージャがエンジニアチームと上手くやる方法 - Qiita
    nobuoka
    nobuoka 2017/12/22
    納得感ある。 『「ちゃんと動く」では勝てない。「エッジが立った(特色のある)」製品が勝つ。』 はい、って感じだ。 (ちゃんと動くもの作れない人間もいる……)
  • 働きながら好きなことを続けられた3つの秘訣 - Qiita

    ex-mixi Advent Calendar 2017の20日目担当の @henteko です。 突然ですがみなさん、社会人になってから一度はこんなこと思ったことありませんか? 「社会人になってから学生の頃好きだった趣味が全く出来ていない」 「仕事から帰ってきたら疲れて寝るだけで何もする気が起きない」 自分も一時期このような状態になっていたことがありました。 しかし今では個人的に好きなことを会社で働きながら続けられていてとても楽しいです。 このエントリではこのような状態になっている社会人の方に向けて、自分が実際に行った「3つの秘訣」を紹介します。 これを読んで少しでも好きなことが再開できる人が増えたら嬉しいです。 注意: これを書いている @henteko は現時点では独身です。結婚したり子供ができたらこの方法は通用しなくなるかもしれません。 3行まとめ 好きなことを続けられる環境が一番

    働きながら好きなことを続けられた3つの秘訣 - Qiita
    nobuoka
    nobuoka 2017/12/20
    環境が一番大事!!!
  • Goのnet/httpで、認証Proxyを超えてみる - Qiita

    package main import ( "net/http" "net/url" "encoding/base64" ) var ( user string password string proxyUrl string ) // IDとPW auth := user + ":" + password // base64に変換 basic := "Basic " + base64.StdEncoding.EncodeToString([]byte(auth)) // Transportを用意 tr := http.Transport{} parseProxyUrl, _ := url.Parse(proxyUrl) tr.Proxy = http.ProxyURL(parseProxyUrl) // httpClientを作成 client := &http.Client{Transp

    Goのnet/httpで、認証Proxyを超えてみる - Qiita
    nobuoka
    nobuoka 2017/12/13
    Go で HTTP リクエストを投げるときにプロキシサーバーを経由したい場合は、プロキシ設定した `http.Transport` オブジェクトを `http.Client` の生成時に渡してやればいいって感じかな。
  • 会社勤めのエンジニアが開発したサービスを買い取って独立した話 - Qiita

    なぜかミクシィ社でエンジニアだった人々がアドベントカレンダーを書くことになってしまったex-mixi Advent Calendar 2017、12月11日担当の @tnj です。 一般的に、会社を退職することになったら退職届というものを会社に提出することになります。その退職理由には「一身上の都合」と書くのが通例だと思いますが、私はちょっと変わった退職の経緯を持っているので、今回はそれについて共有してみたいと思います。思いのほか長くなってしまいましたが、社会人歴10年目のソフトウェアエンジニアのキャリアの変遷の一例としてお楽しみください。 TL;DR Android開発者としての自分の経験を基に新規事業を立ち上げることになり、エンジニアとして参画したつもりが気がつくと事業責任者になり、果ては事業を買い取って経営者になった 好きでやってる話だしまあなんだかんだ乗り越えていけるよねと思ってたら

    会社勤めのエンジニアが開発したサービスを買い取って独立した話 - Qiita
    nobuoka
    nobuoka 2017/12/11
    大企業の中だからこそ立ち上げやすい一方で、(成長していて黒字化できる事業でも) 会社の求める規模が大きすぎて継続できないこともあるよなー、と。 買い取って独立
  • Windows Subsystem for Linux + VcXsrv + RubyMine でWindowsでも快適なRails開発環境を作ろう - Qiita

    Windows Subsystem for Linux + VcXsrv + RubyMine でWindowsでも快適なRails開発環境を作ろうRailsRubyMineVcXsrvBashOnUbuntuOnWindowsWSL 以前からWindowsでのRailsアプリケーション開発は、Rubyのバージョンやnative extensionに悩まされることが多く、WindowsにVirtualBoxやHyper-VでLinuxの仮想環境を構築して開発しているという方も多いんじゃないでしょうか。 しかしここに来て、Windows 10 Creators Updateにより、Windows Subsystem for Linux(Beta)とVcXsrv(あるいはXming)、そしてRubyMineを使った簡単かつ快適なRailsアプリケーション開発の環境が現実的になってきました。 W

    Windows Subsystem for Linux + VcXsrv + RubyMine でWindowsでも快適なRails開発環境を作ろう - Qiita
    nobuoka
    nobuoka 2017/12/06
    Windows の RubyMine と Windows Subsystem for Linux 上の Ruby を組み合わせて使う方法を探していたはずが、気づいたら Windows Subsytem for Linux 上に Linux 向けの RubyMine をインストールする記事にたどり着いていた……
  • 偏差値以外の観点で大学を選んでみる - Qiita

    はじめに 僕が高校生だったとき、どの大学を受験するかは自分の偏差値をベースに考えた。 以下のような表が高校の教室の後ろに貼ってあって、それを見ながら志望校を決めた気がする。 まぁ、妥当な決めかただったと思うけど、もっと違う軸で大学を見てみても面白かったかなと今更思って、今回は機械学習の勉強がてら違うパラメータで大学を見てみたいと思う。 進学に大事な要素 今回は、私の独断と偏見で以下の4つの要素で大学を評価する。 将来のお給料 理由:大事だよね(笑) パラメータ:卒業生の平均年収 ソース:DODA 男女比 理由:キャンパスライフの充実度はこれに尽きる! パラメータ:学生の男女比 ソース:パスナビ 授業料 理由:奨学金もらうひともいるしね パラメータ:入学初年度の授業料の平均 ソース:パスナビ 大学が都会にあるか田舎にあるか 理由:バイトするにしてもデートするにしても就活するにも都会の方がいい

    偏差値以外の観点で大学を選んでみる - Qiita
    nobuoka
    nobuoka 2017/11/16
    卒業者の年収とか男女比、授業料や所在地の都会度みたいなところで分析。
  • Kotlin 1.1とMyBatis 3.4.1+で@Paramを排除できる!! - Qiita

    昨日投稿した「Spring Boot 1.5からPlatformTransactionManager用のCustomizerが追加される」が今年の書き納めだと思っていたのですが・・・ 書きたいことをみつけてしまったので、ほんとに今年最後の投稿をしま〜す ネタとしては・・・ 2017 1Q(1〜3月)にリリース予定のKotlin 1.1とMyBatis 3.4.1+(Java SE 8から追加された-parametersオプション使ってコンパイルするとMapperメソッドの引数名がバインド変数名になるバージョン)を組み合わせると、@Paramを使う必要がなくなるよ〜という話です。 Note: 2017/03/02 Kotlin 1.1が正式にリリースされたので、リリース版ベースに全面的に修正しました!!(内容は基一緒です) Kotlin 1.0の場合は? Kotilin 1.0.xの場合は

    Kotlin 1.1とMyBatis 3.4.1+で@Paramを排除できる!! - Qiita
    nobuoka
    nobuoka 2017/11/15
    クラスファイルにコンパイルされるときにパラメータ名が `arg0` みたいになるのを防ぐオプションがある。
  • 【デザイナー向け】これからAndroidのデザインをする人へ - Qiita

    はじめに 自己紹介 私は日Androidが上陸したAndroid 1.6の時代(2009年頃)からAndroidの開発者としてAndroid7系になった今も(執筆時2017年)Androidエンジニアを続けています。 Android歴史をずっと側で見守り続けた私がエンジニア目線で思っている事を述べるので、これからAndroidのデザインをするデザイナーに見て頂きたいです。 ※ この記事の内容は一個人の意見で所属先は一切関係ありません 一番言いたいこと まず、普段iPhoneを使っているデザイナーは最新もしくは1つ前のOSが入ったAndroid端末をメイン端末とまではいかなくても2台持ちにして常用して下さい。 ハッキリ言ってこれが全てです!! 良さ気なUIのアプリを一通り入れて数十分触るだけでは全く意味がありません。 Androidの良さは通知やIntentと呼ばれるアプリ間の密な連携

    【デザイナー向け】これからAndroidのデザインをする人へ - Qiita
    nobuoka
    nobuoka 2017/03/08
    まずは Android 端末を常用するところから
  • AnyEvent ベースでテストを書くシリーズリンク集 - Qiita

    この1,2年くらい仕事やプライベートで使ってるいろいろです。 Test::X1 - テスト定義 リポジトリ https://github.com/wakaba/perl-test-x1 紹介 https://raw.github.com/wakaba/perl-test-x1/master/doc/intro.ja.hatena Test::AnyEvent::Servers - テスト用サーバー管理 リポジトリ https://github.com/wakaba/perl-test-anyevent-servers 紹介 https://raw.github.com/wakaba/perl-test-anyevent-servers/master/doc/intro.ja.hatena Test::AnyEvent::plackup - Plack ベースのサーバーをテスト用に起動 リポ

    AnyEvent ベースでテストを書くシリーズリンク集 - Qiita
    nobuoka
    nobuoka 2017/03/06
    Perl でテストを書くときに便利。
  • 最強のSSH踏み台設定 - Qiita

    追記:openssh-7.3 以降なら ProxyJump や -J が使えます ホスト名を + で繋げることで多段Proxy接続も簡単に、がコンセプトだったエントリの設定ですが、OpenSSH 7.3 から ProxyJump という設定が使えるようになったので、使えるなら ProxyJump を使う方が健全だし柔軟で使い勝手も良いのでそちらを覚えて帰ることをオススメします。 使い方は簡単で以下のような感じです。多段も行けるし、踏み台ホスト毎にユーザ名やポート番号を変えることも出来ます。 # 1. bastion.example.jp -> internal.example.jp ssh -J bastion.example.jp internal.example.jp # 2. bastion.example.jp -> internal.example.jp -> super-de

    最強のSSH踏み台設定 - Qiita
    nobuoka
    nobuoka 2017/02/08
    おー、これはいいな。 必要になったら使わせてもらおう
  • TypeScript 2.1のkeyofとかMapped typesがアツい - Qiita

    About me @Quramy フロントエンドエンジニア的なことをして生きています。 TypeScript + AngularでSPA作ってます。 2.1 RC is coming! 2016.11.08現在、2.1 RCがリリースされた。 TypeScript blogによると、 async/awaitのDown transpileがES5/ES3でも利用可能に(~2.0ではES2015以上をtargetにしないと使えなかった) 型推論がより賢くなった と書いてある。 2.1.1にどのような変更が入ったかは、 @vvakame先生の記事 に詳しく記載されてる 2.1.4 2.1のRoadmap を読むと、 Static types for dynamically named properties Mapped types というのが載っている。今日の題はこいつら。 Static ty

    TypeScript 2.1のkeyofとかMapped typesがアツい - Qiita
    nobuoka
    nobuoka 2017/01/21
    TypeScript 2.1 の変更あんまり追ってなかったけどこれは良い。 typed superset of JavaScript を謳う TypeScript らしさを感じる。