Webアプリケーションのコードも歴史的経緯から歪な形へとなっていくもの。 私の担当しているサービスでは同じPEARライブラリが重複を気にせずたくさん入れられ、 一筋縄では解けないほどの複雑なファイル依存関係が出来上がりました。 一度ハマってしまえば二度と抜け出せない底なし沼のような依存関係を解…
![10年を超えるレガシーwebサービスの重複ライブラリを削除してコード量を2:3にした話](https://cdn-ak-scissors.b.st-hatena.com/image/square/a11208398fcbadfa4d355d4a888607145a40291b/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F184032d79b7c408ca10dd88947113443%2Fslide_0.jpg%3F6532663)
Webアプリケーションのコードも歴史的経緯から歪な形へとなっていくもの。 私の担当しているサービスでは同じPEARライブラリが重複を気にせずたくさん入れられ、 一筋縄では解けないほどの複雑なファイル依存関係が出来上がりました。 一度ハマってしまえば二度と抜け出せない底なし沼のような依存関係を解…
サーバーサイドエンジニアの@Hirakuです。 2016年7月16日(土)、 PHPカンファレンス関西2016 にて基調講演をしてきましたので、その報告と補足をします。 トーク動画は後日公開されると聞いていますので、口頭で補足した内容などはそちらをご期待ください。 内容について 講演内容は今年2月に公開した記事 光遅い問題を克服してcomposerを10倍速くした話 – Mercari Engineering Blog をもう少し詳しく解説したものです。 基調講演ということだったので、Composer自体の細かい話をするよりも、なぜこんなことに時間を費やしてきたのか、自分より若いエンジニアに何か伝えるものがないか、というようなことを考えて、エモ全開の内容になりました。 改善活動だけを話すとComposerを貶す内容になってしまいます。詳しい事情も知らない人にDISの口実を与えるのも嫌だった
皆大好きLOAD DATAについてのお話です〜 LOAD DATAコマンドはinsertと比較して10倍以上のパフォーマンスでデータを取り込む事ができます。しかし、いろいろ癖があるため、扱いにくい点があります。 本題は日付型にnullをセットする事ですが、この際いろいろ見て行きたいと思います。 LOAD DATAでトランザクションは効くか LOAD DATAする時にデータの加工もできるか LOAD DATAでnull値を設定する方法その1 LOAD DATAでnull値を設定する方法その2 LOAD DATAでトランザクションは効くか ずばり効きます。 しかし5.1等の古いバージョンでは効きません。もし効かない場合、beginとcommitの間にALTER TABLE 等のDDLが挟まってないか確認して下さい。 DDLは暗黙commitが実行されるため、トランザクションは強制コミットされま
「面白かった!」と思える本に出会うのはたやすいけれど、人生を変えるほどの衝撃を与えられることはめったにない。ネットでよくオススメされている本は悪くないけれど、優等生的すぎる。人生が本で変わるのはもっと生々しい、読んでいて声が出るような体験だ。 ask.fmで「影響を受けた本は何ですか」と質問いただくことも多かったので、私の人生を変えてしまった30冊の本をリストアップした。私の人生を変えた本で、もしかするとあなたの人生も変わるかもしれない。できるだけ無料版の文献へURLを貼ったので、いますぐ手元で楽しんでくれたら嬉しい。 日本文学 海外文学 読者を選ぶ変わり種 おわりに 日本文学 ちいさいモモちゃん (講談社文庫) 作者: 松谷みよ子 出版社/メーカー: 講談社 発売日: 2011/11/15 メディア: 文庫 購入: 1人 クリック: 7回 この商品を含むブログ (16件) を見る 読書初
5年前に買った『Java並行処理プログラミング ―その「基盤」と「最新API」を究める―』をようやく読んだ。買った頃には Perl やシンプルな JavaScript ばかり書いていたので並行プログラミングなんてほとんど気にすることがなく、実感がなくて読むのも途中で止まってしまっていた本で、家を掃除しているときに見つけたもの。その後も趣味で Android アプリを書くなど Java に触れる機会はあったけれど、せいぜいが AsyncTask を使うくらいで、マルチスレッドを強く意識してコードを書くこともなかった。 Java並行処理プログラミング ―その「基盤」と「最新API」を究める― 作者: Brian Goetz,Joshua Bloch,Doug Lea出版社/メーカー: ソフトバンククリエイティブ発売日: 2006/11/22メディア: 単行本購入: 30人 クリック: 442回
この記事はSymfony Advent Calendar 2015 17日目の記事です。前日の記事は@teematsuさんの「Symfony 2.8とPHP-DIのAuto Wiring」でした。 こんにちは。はじめまして。tarokamikazeです。 すっかりSymfonyおじさんと化した私は、数々の後輩たちにSymfonyに関する相談を受けてきました。 そのなかでも、社内でよく聞かれることをまとめます。 導入編 The Symfony Book を読んだ人、ブログチュートリアルをやってみた人向けです。 01.この案件にSymfony2を使いたいんですが 下記のような条件では、Symfony2はおすすめです。 専用サーバーを使える。 他のPHP フレームワークを触ったことがある。 ビジネスロジックが複雑になりそうなシステムを作る。(業務アプリ等) テストは当然書く。 1 プログラミング
イントロダクション¶ このチュートリアルは、 Symfony2 を使用して、いろんな機能を備えたブログサイトの作成方法をガイドします。 Symfony2 フレームワークの標準ディストリビューション(Standard Distribution)を使用します。 Symfony2 の標準ディストリビューションは、実際にウェブサイトを作成する際に必要なメインのコンポーネントを含んでいます。このチュートリアルは、いくつかのパートに分かれており、それぞれのパートは Symfony2 フレームワークや Symfony2 コンポーネントに関する内容をカバーしています。このチュートリアルは、 symfony1 の Jobeet チュートリアルのようなものを Symfony2 で作成することを意識して執筆されています。
この記事はSymfony Advent Calendar 2015 10日目の記事です。前日の記事はtsuboさんの「簡単デバッグ」でした。 こんにちは。宇都宮です。今日は、社内勉強会で使用した、Symfony入門者向けの資料を共有します。 Symfonyの歩き方 Symfonyの学習方法について、特に公式ドキュメントの読み方に焦点を当てています。 Symfonyの公式ドキュメントは、Symfonyの学習リソースとして第一級の資料ですが、量が多く、初心者のうちはどのドキュメントから読めばいいか分からないと思います。膨大な公式ドキュメントのうち、どの文書を優先的に読めばいいのかわかれば、効率的に学習していくことができます。 5分でわかるSymfony Best Practices Symfony公式ドキュメントの中で、The Symfony Bookと並んで重要なのがSymfony Best
Services Platform.sh for Symfony Best platform to deploy Symfony apps SymfonyInsight Automatic quality checks for your apps Symfony Certification Prove your knowledge and boost your career SensioLabs Professional services to help you with Symfony Blackfire Profile and monitor performance of your apps
InnoDBなテーブルのお話です。 とあるテーブルで、いくつかあるカラムのうち、ただひとつのカラムがunique keyになり得るものだとします。 こういうときは、そのunique keyは無条件でprimary keyにしたほうがイイ!と思ってたんですが、調べてみると必ずしもそうでないようなので、今のところのモヤモヤをまとめてみます。 教えて! 偉い人!! 予備知識 High Performance MySQL 作者: Baron Schwartz,Peter Zaitsev,Vadim Tkachenko,Jeremy D. Zawodny,Arjen Lentz出版社/メーカー: Oreilly & Associates Inc発売日: 2008/06/01メディア: ペーパーバック購入: 4人 クリック: 33回この商品を含むブログ (8件) を見るからの超抜粋。しかしこの本は神本
「ON DUPLICATE KEY UPDATE」という構文がMySQL独自のものと知ったときは軽くショックを受けました*1。 まあ、そんなことはどうでもいいんです。 通常、「INSERT INTO 〜 SELECT 〜」ってGROUP節を使って集計したものをどっかのテーブルに入れるとかっていう時に使うと思うんですが、その集計結果が既にあるときにUPDATEする、ということがしたいですよね。 例えば次のようなクエリで。 INSERT INTO total (id,count) SELECT id, count FROM daily GROUP BY date 私は最初次のようにやってみましたが、これはエラーになります。 INSERT INTO total (id,count) (SELECT id, count FROM daily GROUP BY date) t ON DUPLICAT
たくさんのデータを大小関係に従って、小さい順(昇順)や大きい順(降順)に並び替える作業はソート(整列)と呼ばれ、ソフトウェア・プログラムではよく使われています。このようなソート作業を行うために並び替えの方法を手順化したのが「ソート・アルゴリズム」で、アイデアを理解すると「ほほー、なるほど」と思えるのですが、複雑すぎて理解しづらいものもあります。そんなソート・アルゴリズムの中でも有名で、仕組みを理解しておきたいものばかりを題材に、なんとフォークダンスに合わせてアルゴリズムを表現するムービー集「AlgoRythmics」が公開されており、学習効果があるかどうかは脇に置いて、思わず見入ってしまう魅惑のムービーとなっています。 最も有名なソート・アルゴリズムの一つである「バブルソート」をハンガリーのフォークダンスにのせて表現するのが「Bubble-sort with Hungarian ("Csá
1. Mroongaの特徴¶ 1.1. Mroongaとは¶ Mroongaは全文検索エンジンであるGroongaをベースとしたMySQLのストレージエンジンです。 MySQLではver5.1からPluggable Storage Engineインタフェースが採用され、以前よりも柔軟に独自のストレージエンジンを利用できるようになりました。そこでGroongaにストレージエンジンインタフェースを実装し、MySQL経由でもGroongaを利用できるようにしました。 Mroongaを経由することでGroongaをSQLコマンドでも利用することができるようになります。 1.2. Tritonnの後継¶ MySQLで日本語全文検索を実現するための方法として、MySQLにGroongaの前身である全文検索ライブラリSennaを組み込んだプロダクトをTritonnプロジェクトから開発・リリースされて来ま
プロキシサーバー(Squid)は、一度読み込んだWebページを保存しておき、次回からの同一Webページへのアクセス時には保存してあるWebページをクライアント側に返すことにより、内部からの高速なWebアクセスを可能にするためのサーバー。 [root@centos ~]# vi /etc/squid/squid.conf ← Squid設定ファイル編集 # Deny CONNECT to other than secure SSL ports http_access deny CONNECT !localnet !SSL_ports ← 外部への443番以外のポートへのアクセスを拒否(内部の一部サービスでHTTPSアクセスに443番以外のポートを使用するため) # Uncomment and adjust the following to add a disk cache directory
この春からプログラマーとして働くようになりました。今まで色々と開発系の勉強を中心にしていましたが、最近はもっぱら高校数学を独学しています。 勉強しようと思ったきっかけ、教材として使っている『長岡の教科書』の紹介について書いていきます。 勉強しようと思ったきっかけ まず前提として、僕は高校を中退しています。空白期間を経て情報系の専門学校に入ったのですが、その際に取った高認も、英語だけを受験して取得したという経緯もあり、高校以降の勉強の知識がごっそり抜けてしまっています。 その後、専門学校に入ってから基本情報技術者試験を受験することになったのですが、そこで出てきた集合や対数、数列といった知識が全くないため(Σってなに状態)、数学の知識の欠如を感じたものです。 なんとなく数学コンプレックスを抱えたまま過ごしている折に、2014年10月発売のWEB+DB PRESS Vol.83のインタビューにて
アイドル顔識別のためのデータ収集 をコツコツ続けて それなりに集まってきたし、これを使って別のことも…ということでDCGANを使ったDeep Learningによるアイドルの顔画像の「生成」をやってみた。 まだだいぶ歪んでいたりで あまりキレイじゃないけど…。顔画像を多く収集できているアイドル90人の顔画像からそれぞれ120件を抽出した合計10800件をもとに学習させて生成させたもの。 分類タスクとは逆方向の変換、複数のモデル定義などがあってなかなか理解が難しい部分もあったけど、作ってみるとそこまで難しくはなく、出来上がっていく過程を見るのが楽しいし とても面白い。 DCGANとは "Deep Convolutional Generative Adversarial Networks"、略してDCGAN。こちらの論文で有名になった、のかな? [1511.06434] Unsupervise
We have been busy adding more and more features to Peachpie and benchmarking them against standard versions of PHP, but we also think it is important to share our thoughts on Microsoft Roslyn, which made Peachpie possible. Microsoft Roslyn: The Modern Compiler Platform Back when we were developing Phalanger, there were a few crucial issues that we weren't able to solve - or at least not very effi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く