kojiro-sのブックマーク (1,299)

  • pandasで1000万件のデータの前処理を高速にするTips集 - Qiita

    はじめに 当社にアルバイトに来ていた人(来春に新卒入社の予定)に「pandasを高速化するための情報は無いですか?」と尋ねられました。 このパッケージの使い方は多数の書籍やWebで体系立った記事で書かれています。 しかし、高速化に関しては体系的な情報源が思いつかなかったので、「実際に書いてみて、1つ1つチューニングするしかないです」としか答えられませんでした。 そこで、この方を始め、来春(2019年4月)にデータアナリストまたはデータサイエンティストになる新卒へ向けて、pandasの高速化に関する私の経験をTips集にしてお伝えしたいと思います。 この記事は今後も内容を充実させるために、Tipsを追加していきます。 この記事を読んだ後にできるようになること pandasでレコード数1000万件のデータでも1分以内で完了する前処理が書けるようになります。 その結果、1日中実行し続けなければな

    pandasで1000万件のデータの前処理を高速にするTips集 - Qiita
    kojiro-s
    kojiro-s 2018/12/22
    pandas
  • 「awkでデータ処理する際、空白判定はNULLによってできます」は罠 - 53歳限界プログラマの憂鬱

    awkでスクリプト書いてて嵌ったので簡単に記事を書く フィールドに何もない時、処理を変えたいとき、いろいろググると d.hatena.ne.jp このようなので、 if ($2==NULL) とか if ($2!=NULL) とか $3!=NULL { とかやって一見うまく動くのですが・・・・ フィールドが空白ではなく、0 が書かれていても 0==NULL なので、期待通りには動かない(これで嵌って悩んだ) 空白判定は $2==NULLではなく $2=="" でやる方が安全です

    「awkでデータ処理する際、空白判定はNULLによってできます」は罠 - 53歳限界プログラマの憂鬱
    kojiro-s
    kojiro-s 2018/12/22
    awkで空白判定
  • エンジニアと1on1をするときの事前面談シートテンプレート - $shibayu36->blog;

    はてなのチーム横断のエンジニアメンター制度 - Hatena Developer Blog で紹介していますが、はてなにはチーム横断のエンジニアメンター制度があります。僕も最近までメンターとして5~6人ほどのメンティーを持っていました(今は事情があってメンターをやっていないのですが)。 メンターとして1on1をする時には1on1ミーティングに備えるアンケート - しるろぐを参考にし、事前にメンティーに面談シートを書いてきてもらうという工夫をしていました。その面談シートは改善を少しずつ加えながら運用していたのですが、一度知見共有も兼ねて最近使っていた面談シートテンプレートを公開してみようと思います。 面談シートテンプレート 以下のようなフォーマットで書いてもらっています。1on1の前にメンティーに1on1Google Docsに追記していってもらっています。1on1Google Docs

    エンジニアと1on1をするときの事前面談シートテンプレート - $shibayu36->blog;
    kojiro-s
    kojiro-s 2018/12/18
    面談シートテンプレートが参考になりました。気になったことの範囲を少しずつ広げるというやり方も。
  • システム開発ノウハウを丸ごと無償公開、TISの狙い | 日経 xTECH(クロステック)

    TISが自社のシステム開発ノウハウを丸ごと外部に公開した。大手IT企業でもSI事業の中核的な開発ノウハウを全て無償公開するケースは珍しい。公開しても、一部のドキュメントやツール類にとどめるのが通常だ。 公開に踏み切った大きな理由は「イメージを変えたい」ことだ。金融機関向けの基幹システム開発を主力としてきた同社は、旧来型のSIerのイメージが強かったという。そこでアジャイル開発やWebアプリ開発などを取り込んだ最新の開発ノウハウを外部に開示し、デジタルトランスフォーメーション(DX)分野での存在感を高めたい考えだ。 Webサイト「Fintan」で無償公開 公開を開始したのは2018年10月。「SIの中核的な開発ノウハウを丸ごと公開した」と、北直人執行役員戦略技術センター担当兼インキュベーションセンター担当テクノロジーエンジニアリング部長は説明する。具体的にはWebサイト「Fintan」を

    システム開発ノウハウを丸ごと無償公開、TISの狙い | 日経 xTECH(クロステック)
    kojiro-s
    kojiro-s 2018/11/30
    チェックしてみるか
  • 【感想】『Google AdSenseマネタイズの教科書』が神本である5つの理由 - 俺の遺言を聴いてほしい

    Google Adsenseマネタイズの教科書』が素晴らしいでした。 これまで何冊もアドセンスSEOを読んできましたが、ダントツで濃い内容でした。 仮の話ですが、の執筆陣の方々が『マネタイズの教科書』の内容をnoteに書いて、 「カリスマアドセンサーが教える、10年先もグーグルアドセンスで稼ぐ10のコツ」 みたいなタイトルをつけて、「序」「破」「急」に分けて発売すれば、それぞれの価格が4,800円でも飛ぶように売れたでしょう。 『Google AdSenseマネタイズの教科書』の内容でセミナーを開けば、一回につき一人10,000円以上の価格でも、満員御礼となっていたように思います。 このには、それくらいの価値は間違いなくあるといえます。 なぜなら、に書かれている内容を繰り返し読んで、真摯に実践していけば、必ず投資分の元は取れるであろうことが容易に予想できるからです。 これは

    【感想】『Google AdSenseマネタイズの教科書』が神本である5つの理由 - 俺の遺言を聴いてほしい
    kojiro-s
    kojiro-s 2018/11/29
    よんでみる
  • 無料で爆速なWebアプリケーションを作ろう! - Qiita

    動機 日語にはこんな格言があります。 「ただより高いものはない」 「時は金なり」 じゃあ、無料サービスで爆速Webアプリケーションを作れば最高じゃない?? →作りました。 Qiita-Trend-PWA Qiitaいいね数ランキング表示サイト ランキング上位タグの可視化 構成 サーバ 『now』(Node.jsサーバ) データストア 『Firebase』 フレームワーク 『Next.js』+『next-offline』 『now』(Node.jsサーバ) 役割 SEO対策+パフォーマンス対策のためのSSR メリット OSSプラン - FREE → 無料 サブドメイン取得可能 HTTP2対応済 → 爆速 HTTPS対応済 『Firebase』 役割 Qiitaいいね数スクレイピング結果の取得 (CloudFirestore + CloudFunctions + CloudHosting)

    無料で爆速なWebアプリケーションを作ろう! - Qiita
    kojiro-s
    kojiro-s 2018/11/28
    参考にしたい
  • 日本のITはなぜ弱いのか? 日米でこんなに違うプログラマーの扱い - まぐまぐニュース!

    アメリカIT業界の場合、プログラマーはプロアスリート並みに丁重な扱いを受け、新しいものを生み出す環境が備わっているそうです。それに比べると、労働時間や環境も含め、あまりにもぞんざいな扱いを受けている日プログラマーたち。メルマガ『週刊 Life is beautiful』の著者で世界的プログラマーの中島聡さんは、「日ITが弱い理由」について、このプログラマーの扱いの違いこそ日米の差に表れていると厳しい口調で指摘しています。 日ITは何故弱いのか 知り合いから紹介されて、「あるソフトウェア工学者の失敗、日ITは何故弱いか」という論文を読みました。京都大学の林普博士が書いた文章です。 数学からITの世界に入り、関数型プログラムの自動生成の方法などを研究していた方ですが、最後には「日ITが世界で通じない理由は、技術的・産業的なものではなく、社会的・文化的なものである」と結論づ

    日本のITはなぜ弱いのか? 日米でこんなに違うプログラマーの扱い - まぐまぐニュース!
    kojiro-s
    kojiro-s 2018/11/26
    ほうほう
  • 大量のテキストを食っても速い Markdown Editor 作った - mizchi's blog

    もう人生で何個目かわからない markdown エディタ作った。が、今回のは結構気に入っている。 https://markdown-buffer.netlify.com/ で遊べる。 用途としては、GitHub か Qiita か はてなブログかわからないが、なにか書こうと思ったときに、どのサービスも中途半端に重いので、とりあえずのバッファが必要、という感じで作った。なので速度重視。 ブラウザのストレージで永続化してる。オフラインで動く。できるだけエディタとしてはスコープを大きくせず、単に編集バッファ(textarea)でしかない、というのを意識している。 結構頑張って作り込んでしまった https://nedi.app が色々肥大化してしまっていて入力時にラグを感じるので、編集体験を見つめ直す自戒もある。 機能 数式対応 コードハイライト対応 バックグラウンドで自動保存 改行を br に

    大量のテキストを食っても速い Markdown Editor 作った - mizchi's blog
    kojiro-s
    kojiro-s 2018/10/24
    webworker
  • AWSのコストを監視する仕組みを実装したお話 | Basicinc Enjoy Hacking!

    こんにちは、ベーシックのDevOpsエンジニア 奥山です。 普段は主に弊社が運営しているサービス ferret One の開発・保守の他、インフラ周りの保守運用をやっています。 今回は私がDevOps業務の一つとして行っているAWSのコスト監視についてご紹介します。 コストを監視する仕組みを導入した背景 AWSのコストは何らかの要因で急激に増加することがあります。それはサービスのインフラ周りの変更や、急激なアクセス増加が要因だったりします。 その時にできるだけ早く異変に気づける仕組みが必要だったのと、コストの無駄を詳細に分析できる体制が必要だったため、ベーシックではコストを監視する仕組みを導入しました。 コストを監視する流れ AWSにはもともと請求アラート機能やコストを分析できるコストエクスプローラーという機能がありますが、通知や分析を柔軟に行えるようにするためベーシックでは独自にコスト監

    AWSのコストを監視する仕組みを実装したお話 | Basicinc Enjoy Hacking!
    kojiro-s
    kojiro-s 2018/10/20
    コスト可視化
  • Nuxt.js でバックもフロントもこれ一本

    要約 いまさらNuxt.js使ってみたらすごくいい感じだったので、その導入部分をご紹介。 あらまし 動機 ちょっとしたwebアプリを作りたかったんです。3Dデータファイルの変換をサーバーでやってくれて、変換結果をダウンロードできるやつ。スマホアプリとかから機能を利用できるAPI(別にパーミッションとかユーザー認証は要らない)があって、ついでに手動で簡単に操作できるSPAっぽいフロントエンドもあったらいいな。ああでも面倒クサいです。こんなちんまい機能のアプリこさえるのに時間かけたくないけど、一人でバックとフロント両方やらんといけん。どうしよ。 何使う 以前DjangoVue.jsでこんなことしましたけれど、正直Pythonとjs書き分けるのもダルいです。それにプロジェクト設定も多くて面倒。あー、一つの言語で両方書けてコマンド一発でいい感じに設定されたプロジェクト作ってくれるやつないかなー。

    Nuxt.js でバックもフロントもこれ一本
    kojiro-s
    kojiro-s 2018/10/19
    興味ある
  • 毎秒1万リクエストの負荷試験をした話 - pixiv inside

    はじめまして。ピクシブで広告関連のプロダクトを開発しているeastです。今回は、社内で運用している広告配信サーバーの負荷テストを実施したので、その話をしたいと思います。 経緯 ピクシブの広告配信サーバーは、pixiv体を中心に複数のサービスに対して広告配信を行なっています。現在私はこの広告配信サーバーの大規模改修を行なっているのですが、先日ついに広告配信サーバーの改修がほぼ完了したので、試しに負荷試験を行なってみたいと思い立ちました。 目標は毎秒1万リクエスト ピクシブの広告配信サーバーへのリクエスト数はDailyで 4〜6億req もあり、これは毎秒平均に直すと約 5,000RPS(Request Per Second) になります。さらに、ピークタイムである休日の深夜帯には 12,000RPS にも達します。つまり新しい広告配信サーバーにも、毎秒12,000のリクエストを捌く性能が必

    毎秒1万リクエストの負荷試験をした話 - pixiv inside
    kojiro-s
    kojiro-s 2018/10/19
    Locustで秒間いちまん
  • Makefileを自己文書化する | POSTD

    私たちのプロジェクトではいつも、非常に長い Makefile を使用して、インストールやビルド、テスト、デプロイメントの処理を自動化しています。ターゲット名はほとんど標準化されていますが( make install 、 make deploy )、中には説明が必要なものもあります( make run-dev 、 make restart-api )。そして、詳細なmakeターゲットを追加するほど、それらの処理内容をテキスト形式で大量に記載しなければなりません。私たちのプロジェクトでは通常、このような文書を README ファイルに書いています。 しかしCLI(コマンドラインインタフェース)を用いる場合は、主に自己文書化ツールを使っています。 make と打つだけで、利用可能なコマンドとその説明が一覧表示されたら便利だと思いませんか? それを実現するのは、実はとても簡単です。まずは各ターゲッ

    Makefileを自己文書化する | POSTD
    kojiro-s
    kojiro-s 2018/10/12
    便利そう
  • 「手を動かしながら2週間で学ぶAWS基本から応用まで」がとっても分かりやすくて良かった - むらじゅん風呂具

    カリキュラムが終わったので感想。 結論はとっても良かった! www.udemy.com 受ける前の僕 オンプレ のサーバ維持運用業務を4年くらい経験。 「これからはクラウドじゃ!!」と思い立ち、AWSの資格(SAA、Sysops)を取得。 しかし、実務経験はなく、ばっちり動かしたいと思っていたところに巡り会えたので、とてもタイミングが良かった。 主要サービスを手を動かしながらバッチリ操作 EC2、VPC、RDSなどの主要サービスを講師の説明を聴きながら手を動かす。 Linuxサーバを触って業務したことがある方なら特に操作は困らないかと。 動かしながら行うことで頭に入りやすかった。 ちなみに講師に質問することも可能。 個人的におもしろかったのがCloudwatch 環境構築の自動化ができることは知っていたが、実際に作ると「すげえ!」ってなったw 運用面での話もあり、これでリソース管理を行うな

    「手を動かしながら2週間で学ぶAWS基本から応用まで」がとっても分かりやすくて良かった - むらじゅん風呂具
    kojiro-s
    kojiro-s 2018/10/10
    個人的におもしろかったのがCloudwatch←たぶん、cloudformation
  • 2018年の最先端DevOpsエンジニアになるためのロードマップ

    @rana_kualuさんの 2018年の最先端フロントエンドエンジニアになろう 2018年の最先端バックエンドエンジニアになろう という翻訳記事のDevOps版という感じですが、HackerNoonに投稿されたThe 2018 DevOps RoadMapという記事が個人的に大変参考になりましたので、翻訳してみました。 ちなみに関連記事として 2018年の最先端バックエンドエンジニアに必要なスキルについて考えてみました。 という私の記事もございますので、併せてご参照頂けますと幸いです。 はじめに DevOpsは最近非常にホットなトピックで、私の友人や同僚、シニア開発者のほとんどは、DevOpsエンジニアになるために非常に熱心に取り組んでおり、組織やチームの中で「DevOpsのチャンピオン」として自分自身をセルフプロデュースしていいます。 私自身は、ソフトウェア開発とデプロイプロセスの改善

    2018年の最先端DevOpsエンジニアになるためのロードマップ
    kojiro-s
    kojiro-s 2018/10/10
    ロードマップ。書いてあることは分かるレベルでした
  • ビジネスモデル2.0図鑑 #全文公開チャレンジ|チャーリー|note

    前置きが長くなりましたが、ここからビジネスモデル2.0図鑑のスタートです。 ※当記事の情報を転載、複製、改変等は禁止いたします ビジネスモデル2.0図鑑 目次(note簡易版)● はじめに ● 序章「ビジネスモデル2.0」とはなにか? ・生き残るビジネスモデルには「逆説の構造」がある ・ビジネスモデル1.0と2.0を分けるもの ・「起点」「定説」そして「逆説」を考える ・「ポプテピピック」のどこが革新的か? ― 逆説の構造、3つの事例 ・「非常識」をいかに実現するか? ・逆説が強いほど「高度な仕組み」が求められる ・「逆説の究極形」がイノベーション ・「社会性」「経済合理性」「創造性」― 理想はすべてが揃ったビジネスモデル ・逆説だけでは感動するビジネスモデルは生まれない ・「八方よし」の考え方が必要になる ・「ソーシャル」と「ビジネス」と「クリエイティブ」 ・「バランスシートに載らない価

    ビジネスモデル2.0図鑑 #全文公開チャレンジ|チャーリー|note
    kojiro-s
    kojiro-s 2018/10/10
    すごいまとまっている
  • Laravel × Vue.js × axiosでTODOリストを作るよ! その1 | とんよー。ブログ

    はい。とてつもなくシンプルですね(笑)。 タスクを識別するためのキー「id」。主キーで、オートインクリメント。 タスク名を入れる「title」。 ………以上!! …あ。バリデーションは面倒なのでナシで(汗)…。 開発環境について 記事は下記の環境を想定して書いています。 お使いのPCの環境と異なる場合は、適宜調整してくださいませ。 macOS High Sierra ver.10.13.5 Composer – 1.6.5 npm – 5.6.0 Laravel – 5.5 Vue.js – 2.1.10 axios – 0.16.2 laravel-mix – 1.0 LaravelVue.js・axiosでTODOリストを構築する手順 変更があるかもしれませんが、流れとしてはだいたい下記のようなカタチになるかと。 Laravelのインストール・セットアップ Vue.jsとaxios

    Laravel × Vue.js × axiosでTODOリストを作るよ! その1 | とんよー。ブログ
    kojiro-s
    kojiro-s 2018/10/05
    vue
  • [SpringBoot]RestController正常時と異常時で別の型のJSONを返却する

    SpringBootでは@RestControllerを使えばお手軽にJSONを返すコントローラーが作れて大変便利。 @RestController public class HogeController{ @Autowired EmpRepository empRepository; @GetMapping public List<Employee> getEmp(){ return empRepository.findAll(); } } こんな感じにしてあげればEmployeeクラスのリストをJSONにして返却してくれる。 でもでも、エラーのときはエラー情報返してあげたい。 そんでもってその時の型はEmployeeのリストじゃなくてエラーメッセージとかエラーコードとかを返したい。 もちろんHTTPステータスもつけたい。 戻り値の型をStringにしてJSON文字列に変換して・・・なん

    [SpringBoot]RestController正常時と異常時で別の型のJSONを返却する
    kojiro-s
    kojiro-s 2018/09/27
    例外なるほど
  • [レポート]レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡 #DDDAlliance | Developers.IO

    こんにちは。プロダクトグループのshoito(しょいと)です。 9/26(水)に開催された レガシーコードにドメイン駆動設計で立ち向かった5年間の軌跡 に参加してきたのでレポートします。 当日のtwitterのハッシュタグ#DDDAllianceのツイートがTogetterでまとめられています。 BIGLOBEにおける、5年間のDDDへの取り組みと今後について ビッグローブ株式会社 西 秀和さんより 30年間、事業を支えてきた業務システムをDDDで刷新する。 そのためには、組織的、エンジニアのレベルなど多くの問題があります。 その壁をどう乗り越えたのか? そして、壁の向こうで得た恩恵とは何のか? 5年という期間を経て、得ることのできた気づきや組織的な変化をお伝えしたいです。 アジェンダ DDD導入に至るまで 導入時の苦労 導入による効果 今後の目標 BIGLOBE販売システムについて、DD

    [レポート]レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡 #DDDAlliance | Developers.IO
    kojiro-s
    kojiro-s 2018/09/27
    ビッグローブ
  • レガシーシステムの大規模リプレイスで分かった「Vue.jsでSPAならNuxt.jsが有力」 #エンジニアHub - エンジニアHub|若手Webエンジニアのキャリアを考える!

    レガシーシステムの大規模リプレイスで分かった「Vue.jsでSPAならNuxt.jsが有力」 10年以上前に作られたレガシーシステムをVue.jsで大規模リプレイスしたエムスリーに、導入して感じたVue.jsのメリットや、活用法を伺いました。 JavaScript(JS)のフレームワークは、何を使うのがベストなのでしょうか。ここ3年ほどで数々のJSフレームワークが誕生していますが、ReactAngularという二大巨塔を超えるものはなかなか現れていません。 そんな状況の中、GitHubではReactを上回るスター数を誇っている1のが、2014年のリリース後、着実に進化を重ね、日でも採用事例が増えてきているVue.jsです。「JavaScript ベスト・オブ・ザ・イヤー」に2016年、2017年と2年連続で選ばれているほか、Ruby on RailsRails)やLaravel とい

    レガシーシステムの大規模リプレイスで分かった「Vue.jsでSPAならNuxt.jsが有力」 #エンジニアHub - エンジニアHub|若手Webエンジニアのキャリアを考える!
    kojiro-s
    kojiro-s 2018/09/25
    “Nuxt.js”
  • SpringBootでSpring WebFluxのAnnotation-based Programming Modelを試す - abcdefg.....

    SpringBootでSpring WebFluxのAnnotation-based Programming Modelを試してみたメモです。 Spring WebFlux SpringFramewark5(SpringBoot2)からSpring WebFluxが追加されます。 Spring WebFluxはリアクティブプログラミング(非同期でイベント駆動なノンブロッキングアプリケーション)のフレームワークです。23. WebFlux framework WebFluxではAnnotation-based Programming ModelとFunctional Programming Modelがあり、 Annotation-based Programming ModelはSpringMVCと同じようにアノテーションベースでプログラミングを行います。 今回はAnnotation-bas

    SpringBootでSpring WebFluxのAnnotation-based Programming Modelを試す - abcdefg.....
    kojiro-s
    kojiro-s 2018/09/10
    webflux