タグ

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

  • Wandboxを支える技術(2017年版) - Qiita

    Wandbox は、オンラインでコンパイルや実行が試せるサービスで、主に私(@melponn) と @kikairoya で作っています。 以前 Wandboxを支える技術 というのを書いていたのですが、そこからかなり変わっているため、改めて今の中身がどうなってるかについて書いていきます。 Wandbox は、Wandbox 体と、各種コンパイラをビルドするための Wandbox Builder に分かれています。 ソースコードは wandbox と wandbox-builder にあります。 2019/9/26 追記: Wandbox のビルドを CMake に移行した話 を書きました 犬小屋と牛舎 Wandboxはバックエンドとフロントエンドで分かれていて、フロントエンド側が 犬小屋(kennel) 、バックエンド側が 牛舎(cattleshed) という名前になっています。 犬小

    Wandboxを支える技術(2017年版) - Qiita
    cignoir
    cignoir 2017/05/19
  • Android開発を受注したからKotlinをガッツリ使ってみたら最高だった - Qiita

    関連記事 この記事も古くなりましたね。執筆時の実装バージョンKotlin 0.12から1.0.2へのアップグレード対応をした際の知見を記事にしました。 Kotlinを実案件で使いました 先日、僕の勤め先のQonceptは『リアル鬼ごっこ』×富士急ハイランド 巨大遊園地からの逃走を開発、リリースしました。 富士急ハイランドで実際に鬼ごっこをする企画で、一般のお客さんがスマホで専用アプリを使いながらクリアを目指します。園内には鬼役のスタッフや、ゲーム進行に関わる設備などがあり、これらとスマホがiBeacon(BluetoothLE)を用いて連動することで、ダメージを受けたり、アイテムを使用したり、クイズを解いたりなどします。 Qonceptの開発範囲は、iOSアプリ(とAppleWatchアプリ)、Androidアプリ、サーバサイドでした。 受注確定となった時点で、残り日数と開発者リソースに対

    Android開発を受注したからKotlinをガッツリ使ってみたら最高だった - Qiita
    cignoir
    cignoir 2017/05/18
  • pythonの内包表記を少し詳しく - Qiita

    pythonの内包表記について nbviewerにも投稿済。 pythonといえば内包表記です。 <= 偏見? でも、慣れないと読みにくいので、少し詳しく読み方をまとめてみました。 通常のリスト生成 extension_1 = [] for i in range(10): extension_1.append(i) extension_1 #>>> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] リスト内包表記 基構文 [counter for counter in iterator] 僕は先に [i for i in] だけ書いてから修飾することが多いです。 extension_1と同等のリストを内包表記で生成する場合は

    pythonの内包表記を少し詳しく - Qiita
    cignoir
    cignoir 2017/05/16
  • ロシアの天才ハッカーによる【新人エンジニアサバイバルガイド】 - Qiita

    弊社に5年間在籍していたロシアの天才ハッカーが先日退職しました。 ハッキング世界大会優勝の経歴を持ち、テレビ出演の経験もある彼ですが、正直こんなに長く活躍してくれるとは思っていませんでした。彼のようなタレントが入社した場合、得てして日の大企業にありがちな官僚主義に辟易してすぐに退職するか、もしくはマスコットキャラとして落ち着くかのどちらかのケースがほとんどなのですが、彼は最後まで現場の第一線で活躍してくれました。 そんな彼が最後に残していった退職メールがなかなか印象的だったので、その拙訳をここに掲載します(転載について人同意済み。弊社特有の部分は一部省いています。) ああ、なんという長い旅だったろう。この会社で5年間もセキュリティを担当していたよ(諸々の失敗は許してくれ) 俺は他の退職者のように面白いことは書けないが、私のこの退職メールを読んでくれている人、特に新人エンジニアのために、

    ロシアの天才ハッカーによる【新人エンジニアサバイバルガイド】 - Qiita
    cignoir
    cignoir 2017/05/10
  • エンジニアはもう一度CSSとちゃんと向き合ってみよう - 詳細度編 - Qiita

    WHAT CSSには詳細度(Specificity)という概念があります. 詳細度は、どのプロパティ値が最もある要素に関係があり、適用されるかをブラウザが決定する手段です。 詳細度 - CSS | MDN 簡単に言うと,「スタイルが重複したとき,どのスタイルを優先するか」の優先度を定量評価したものになります. 詳細度はa, b, cのようなカタチで表されます. 細かい説明するのは面倒なので,ざっくりと以下にリストアップします. 全称セレクタ: a=0, b=0, c=0 * 要素,擬似要素: a=0, b=0, c=1 li, ::before, ::first-line, etc. クラス,擬似クラス,属性: a=0, b=1, c=0 .classname, :first-child, [type=password], etc. id: a=1, b=0, c=0 #idname あと

    エンジニアはもう一度CSSとちゃんと向き合ってみよう - 詳細度編 - Qiita
    cignoir
    cignoir 2017/05/08
  • Unity トゥーン調エフェクト - Qiita

    はじめに Unity5.5の標準Particle Systemを使ったトゥーン調エフェクトの話です。 Unityパーティクルが進化した Unity5.5からノーマルマップを使ったライティングが可能になりました。 左画像:ノーマルマップを使ってライティングしたパーティクル Toon Shaderパーティクルの作成 以前に紹介した3Dアニメ表現を応用しつつ、ライトの光源を利用したをトゥーンパーティクルを作ってみる。 Toon Shaderでアルファ抜き+ノーマルマップが出来るようにShaderを調整。 カラーはToonRampで調整していきます。 ToonRampの比率によってライトを当てた時の見え方が変わってくる。 ※全部同じライティングです カラーの割合と色味をこだわって調整すると良いです。 Image Effectsを付ける 最後にImage Effectsで発光と色調を整えて完成。 左

    Unity トゥーン調エフェクト - Qiita
    cignoir
    cignoir 2017/05/08
  • Rails5.1に向けてフロントエンド周りで起こっている革命まとめ - Qiita

    こんにちは Rails5.1に向けて、DHHのjqueryを依存から外す発言を発端にフロントエンド周りが急激に発展しているので、簡単にですがまとめてみました。 各issue, PRの詳細には踏み込みませんが、知見に溢れているので読んでみるの推奨です。 間違い、足りないものがあったら編集リクエストお願いします。 jQuery依存を無くす話が出る rails(issue): Drop jQuery as a dependency jquery-ujsはjqueryに依存しないようにする jquery-ujs: Drop jQuery as a dependency "jquery"-ujsじゃなくなったので名前変更 rails-ujs誕生 実際にRailsからjquery依存がなくなる rails: Drop jQuery as a dependency jsライブラリを入れる方法がnpmパッ

    Rails5.1に向けてフロントエンド周りで起こっている革命まとめ - Qiita
    cignoir
    cignoir 2017/04/28
  • VS Codeを使ったUnity開発 - Qiita

    はじめに 以前はXamarinでC#を書いてましたが、他の言語やプラットフォームで使用するエディタを変えたくなかったのと、UnityにPlug-inを追加することによってブレークポイントを利用可能ということでVSCodeに乗り換えました。 あと、MacでVisual Studioを使いたかったというミーハーな気持ちもあります。 環境 OSX 10.9.5 Unity 5.3.6 Visual Studio Code 1.4.0 VS Code Plug-inをUnityプロジェクトに追加 Assets/Plugins/Editor/VSCode.csへ追加する。 Unity側でVSCodeを設定する Unity > Preferences > VSCode > Enable Integration をチェックする Unity > Preferences > VSCode > Use Uni

    VS Codeを使ったUnity開発 - Qiita
    cignoir
    cignoir 2017/04/25
  • 【2017年度版】Webエンジニアでも最低限押さえておきたい、SEO施策のまとめと実装 - Qiita

    Webエンジニアでも最低限のSEO知識を持っておきたい ferretやferretOneといったウェブマーケティングのメディア、ツールを開発、運営している株式会社ベーシックで働いており、近々ECサイトphocaseにて格的にSEO施策を行うので、勉強がてらエンジニアが覚えておくべきだと思ったSEO周りの知識をまとめました。 この記事も書いていたら長くなってしまったので知らない部分をピックアップして読んでいただければと思います。 実装方法やSEO施策の詳細は貼ってあるリンクだけではなく、 別途Googleで検索するなどして複数の意見をインプットすることをおすすめします。 ###★この記事を読むとどうなるか マーケター、ディレクターとのやりとりがスムーズになる。 意図せず検索順位を下げてしまうコードに気づける様になる。 エンジニア側だけで動けるSEO施策を提案できる様になる。 なんとなくSE

    【2017年度版】Webエンジニアでも最低限押さえておきたい、SEO施策のまとめと実装 - Qiita
    cignoir
    cignoir 2017/04/25
  • pawoo.netから✗✗な画像を拾ってくるpythonスクリプト書いた - Qiita

    はじめに なんか最近mastodonって流行ってない?pawoo.netっていうインスタンスができたんだって?どれどれ... PAWOOOOOOOOOO!!!!! 機能 10秒おきにpublic timelineを取得してsensitive=Trueな画像をDLします。 #!/usr/local/bin python # -*- coding: UTF-8 -*- from urllib.request import urlopen from urllib.parse import urlparse import json import os from time import sleep _baseurl = 'https://pawoo.net' _api_public = '/api/v1/timelines/public' def main(): timeline = urlopen

    pawoo.netから✗✗な画像を拾ってくるpythonスクリプト書いた - Qiita
    cignoir
    cignoir 2017/04/17
  • NginxでWebサーバ間をトレースするrequest_id - Qiita

    $request_id Nginx 1.11.0 以降に限りますが、リクエスト毎に発番されるIDの変数として $request_id が追加されたようです。 http://nginx.org/en/docs/http/ngx_http_core_module.html#var_request_id この変数を利用することにより、Nginxコアだけでサービス間のトレースを簡単に行うことが可能になります。 シンプルな例 以下のように、$request_idをログに含めるだけでリクエスト毎のIDを記録できます。 http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "

    NginxでWebサーバ間をトレースするrequest_id - Qiita
    cignoir
    cignoir 2017/04/11
  • AWSのS3で性的Webサイトを公開する手順まとめ - Qiita

    禁止されるコンテンツ 以下を守れば、わいせつでない性的コンテンツ自体は可能のようです。 Amazon Web Services 適正利用規約 違法行為。賭博のサイトまたはサービスの宣伝、送信、その他の提供、あるいは児童ポルノの宣伝、促進、助長を含む、一切の違法行為。 有害または詐欺的行為。詐欺的な製品、サービス、仕組み、またはプロモーション(例えば、一攫千金スキーム、ねずみ講、マルチ商法、フィッシング、またはファーミング)の売り込みや流布、あるいはその他の詐欺的行為への関与を含む、他人、当社の事業、または当社の評判に有害となり得る行為。 第三者の権利を侵害するコンテンツ。知的財産権またはその他の所有権を侵害または濫用するコンテンツ。 不快なコンテンツ。児童ポルノを含む、獣姦に関連する、または非合意性行為を描くコンテンツを含む、中傷的、わいせつ、虐待的、プライバシーを侵害する、もしくは不愉快

    AWSのS3で性的Webサイトを公開する手順まとめ - Qiita
    cignoir
    cignoir 2017/04/04
  • あなたの開発、Hype(誇大宣伝) Driven Development になっていませんか? - Qiita

    去年ですがmediumで話題になっていた記事にHype(誇大宣伝) Driven Development(HDD)というものがあります。 国内でもこれで失敗している例をよくみかけますし、とても共感したので紹介できればと思います。 翻訳ではなく、自分なりに噛み砕いて個人的な考えなども入れています。 概要 HDDとは一言でいえば、技術選定という重要なプロセスを他人任せにしてはならないという啓蒙です。 誰かが良いと言っているという理由で技術選定をしてはいけません。 例えば以下を理由に技術選定するのは Hype Driven Development(HDD)です。 ・すごく偉い人がおすすめしていた ・カンファレンスですばらしい技術だと紹介されていた ・新しい技術だ ・人気が急上昇している ・超有名企業のA社が導入した その技術は自分たちのどんな問題を解決してくれるのか。 開発の規模に、自分たちのス

    あなたの開発、Hype(誇大宣伝) Driven Development になっていませんか? - Qiita
    cignoir
    cignoir 2017/03/24
  • TensorFlowを算数で理解する - Qiita

    TensorFlowは主に機械学習、特に多層ニューラルネットワーク(ディープラーニング)を実装するためのライブラリになりますが、その基的な仕組みを理解するのにそうした難しい話は特に必要ありません。 記事では、TensorFlowの仕組みを、算数程度の簡単な計算をベースに紐解いていきたいと思います。 TensorFlowの特徴 初めに、TensorFlowの特徴についてまとめておきたいと思います。 TensorFlowは、その名前の通りTensor(多次元配列、行列などに相当)のFlow(計算処理)を記述するためのツールです。その特徴としては、以下のような点が挙げられます。 スケーラビリティ PC、サーバー、はてはモバイル端末まで、各マシンのリソースに応じてスケールする。つまり、低スペックなものでもそれなりに動くし、GPUを積んだハイスペックなサーバーであればそのリソースをフルに活用した

    TensorFlowを算数で理解する - Qiita
    cignoir
    cignoir 2017/03/15
  • UnityのAsset販売のノウハウ - Qiita

    個人でAsset販売を行っているてんぷらです。 ここでは今までのAsset販売の経験を元に、そのノウハウを記したいと思います。 G2U4S  / Document SpreadsheetExcelで作成したゲームデータを1クリックでScriptやScriptableObjectに変換。 MVVM 4 uGUI / Document / Demo uGUIにMVVM(Model-View-ViewModel)パターンを導入。 SocialWorker  / Document Twitter、Facebook、Line、Instagram、メールへの個別連携が行える。 LitJson Ruler  / Document LitJsonを用いた通信処理をExcelで自動化。 はじめに 【Unity公式】アセットを販売する 【Unity公式】アセットストアへの公開 販売自体はとても簡単です。Un

    UnityのAsset販売のノウハウ - Qiita
    cignoir
    cignoir 2017/03/12
  • 外国人が語る:英語でクラスやメソッド等の名付け方 - Qiita

    アメリカ人です。 Hello 👋 この記事の目的 多くの日人は自分の英語力には自信がないではないでしょうか。残念ながら「英語がわからん」、「英語が全然できない」という声をしょっちゅう聞いています。でも、今まで英語ができて意味がちゃんと伝わる何人かの日人に会ったがあります。完璧な英語ではないけど(外国人も英語でミスる時もある...)、がんばって話そうとするので充分仕事ができる人たち。そういうがんばる姿勢はオープンソースのプログラムや英語圏のプログラムに手を出すためには一番大事なことだと思います(外国人側もすごく助かります)。日文化では「私はできる!」と自慢することは少ない中、この記事を通して、流暢に話せなくても自分のプログラミングの命名の仕方にはちょっとだけでも自信を持たせたいなと思います。完璧じゃなくていいです。Let's go! 合わせて読んでいただきたい 【日エンジニア

    外国人が語る:英語でクラスやメソッド等の名付け方 - Qiita
    cignoir
    cignoir 2017/03/06
  • Rails 5.1でreact環境を作ってみた - Qiita

    Rails 5.1.0.beta1 試してみた - Qiita こちらの続き js周りは、 yarnを使用 webpackを使用 rails/webpacker: Use Webpack to manage app-like JavaScript modules in Rails このあたりが変更点となり、モダンフロントを取り入れる形となっている (cf. Rails 5.1の変更点まとめ - Qiita) 所感 今までwebpack.config書いて、頑張ってRailsに統合していたモダンフロントがよしなに構築されている 実行環境 Rails 5.1.0.beta1 Ruby 2.4.0 node 6.10.0 作業履歴 Commits · kikunantoka/rails5-1-0-beta1 hello world from webpacker rails new --webpa

    Rails 5.1でreact環境を作ってみた - Qiita
    cignoir
    cignoir 2017/03/02
  • Rails5.1から導入されるwebpacker.gemは本当にRailsのフロントエンド開発に福音をもたらすのか? - Qiita

    Rails5.1が今betaで出ていますね。中でも目玉はwebpacker.gemによるモダンなフロントエンド開発がRailsに導入されることでしょう。 今までのRailsのasset pipelineとは別に、yarnによって依存性を管理しwebpackで結合する独立したjsのビルドシステムがサポートされます。 これによって、以下のような従来のasset pipelineでは解決がむずかしかった問題への解が示されました。 coffee scriptへの依存 npmによる依存性、バージョン管理が難しい javascriptのライブラリが野良gem化されてupdateされない問題 webpacker.gemはyarn/webpackの薄いwrapperとなっていて、加えて幾つかのrakeタスクを追加することでフロントエンド開発をサポートします。 具体的には以下のような機能が提供されます。 y

    Rails5.1から導入されるwebpacker.gemは本当にRailsのフロントエンド開発に福音をもたらすのか? - Qiita
    cignoir
    cignoir 2017/02/28
  • Railsが時代に合わなくなってきた

    追記 RailsでJS辛い問題に関しての結論:http://qiita.com/kaiinui@github/items/dad6180f1910c6a4bfd5 -- 近年、(1) Web/App両対応が増えてきたこと、(2) WebでもJSを多用するようになったこと、の二つがあり、以下の点でRailsが微妙になっている。 ViewのJavascriptRailsから独立している API層のサポートが微妙 最初に書いておきますが、特に決定的な解決策もなく、辛いから今後解消されてほしいよね、な話です。 ViewのJavascriptRailsから独立している Railsはとても堅牢。 モデル、コントローラ、ルーティングと、変にいじらない限りはほとんどテストが要らない。 必要なのは、モデルに新たにpublicメソッドを付けたときくらいだろう。 実際、バックエンドはそうそうバグが出ない。

    Railsが時代に合わなくなってきた
    cignoir
    cignoir 2017/01/17
  • Ruby のココがダメ - Qiita

    タイトルは釣りです。Ruby に盲目的に惚れている迂生には Ruby の痘痕(あばた)はエクボです。 それはともかく。 メソッド名の別名がありすぎ 「あなたは map 派? それとも collect 派?」っていう問いがまず嫌い。 いや,別名にも意義があるとは思うんだけど,記憶の負担が大きい。 自分では map しか使わなくても,他人のコード読むんだったら collect を知っていなくちゃならない。 しばらく前に reduce っていうメソッド見て,そんなのあったっけ?と思ったら inject の別名だった。 map/collect と inject/reduce の名前とその背景にある発想については,Rubyist Magazine に良い記事がある: そうかと思えば,Array#delete_if と Array#reject! みたいに,働きは基的に同じだけど,削除が行われなかっ

    Ruby のココがダメ - Qiita
    cignoir
    cignoir 2016/11/16