開発事例に関するakachochinのブックマーク (37)

  • 24時間一人mrubyハッカソン - Qiita

    mrubyが対象(のひとつ)にしているデバイス系環境では、プログラムを格納するROMには余裕があっても、実行時メモリであるRAMには余裕がないという話をよく聞きます。ROMはフラッシュでメガ単位の容量があっても、RAMは数十KBとかいうケースも珍しくありません。 そこで、12/24から25にかけての24時間で、どれだけメモリ削減できるか一人ハッカソンを開催しました。ぼっち上等。 基戦略 今回のメモリ削減ハックの基となるのは、Cの文字列定数領域はfreeの対象にならないので、mallocした領域にコピーする必要はない、という戦略です。今回は3件の改善を行いますが、いずれもこの戦略を用いています。 static symbol まずは、symbolテーブルのmalloc量を削減しましょう。symbolの登録には mrb_intern(mrb_state *mrb, const char *s

    24時間一人mrubyハッカソン - Qiita
    akachochin
    akachochin 2013/12/25
    プログラマにとっては感服するクリスマスプレゼント。
  • グリーのインフラに Chef を導入した話 | GREE Engineering

    類似のソフトウェアとして、Puppet や Ansible といったものもあります。こういったインフラ自動化まわりのソフトウェアについてはペパボの宮下さんの インフラ系技術の流れ が参考になります。 Chef in グリー さて、グリーでのChefまわりの構成をご紹介します。下図が全体の構成です。 開発環境 開発は各個人のマシン上で仮想マシンを立ち上げて行なっています。クックブックの開発では、クックブックを開発する人が serverspec でテストを書くようにしていて、構築後のサーバが期待通り動くことをテストしています。一つのクックブックでも設定値などの条件によって動作が変わってくるため、test-kitchen を用いて複数の条件(ランリストやノードのアトリビュート(以下、「アトリビュート」)などの組み合わせ)でテストを行っています。 また、一部仮想マシンを使う必要がないテスト(att

    グリーのインフラに Chef を導入した話 | GREE Engineering
    akachochin
    akachochin 2013/12/23
    GREEのブログは最近読み始めたがなかなか興味深い記事が多い。いかに管理を楽にするのか、そこは規模の大小や開発分野の違いによる差異はあれども最近の現場共通で考えないといけないこと。
  • UTF-8のBOMとシェルスクリプト、エディタ、Vimなどの話題 - メモ

    UTF-8のBOMとシェルスクリプト、エディタ、Vimなどの話題 シェルスクリプトの一行目でエラーが出るなぁと思ったら、UTF-8のファイルの先頭に「EF BB BF」とかついていた。 colinuxのコンソールでcatすると「怯ィ」(ィは半角)とか頭に表示される。Puttyでは特に表示されないなぁ。 od -t x1でも確認できますね。 BOM(Byte Order Mark) とか呼ばれているもののようです。 Windowsのエディタで作成してUTF-8で保存したものを持ってきたからのようです。 これの削除でちょっとつまづきました。 ネットで調べつつ、これでいけるかなと思ったら、、、。 nkf -W8 -w80 test > test_nobom iconv -c -f UTF-8 -t UTF-8 test > test_nobom 無理でした。バージョンによるのかなぁ。(nkf 2

    UTF-8のBOMとシェルスクリプト、エディタ、Vimなどの話題 - メモ
    akachochin
    akachochin 2013/12/19
    他の人が作った日本語コメント入りのシェルスクリプトをnkfでUTF-8変換して実行したら「実行形式エラー. 間違ったアーキテクチャです.」と言われた。odコマンドで見たら先頭に「ef bb bf」が付加されてた。備忘のために。
  • ANA、国内線の旅客システムをオープン化、34年間のメインフレームの歴史に終止符 | IT Leaders

    30年以上にわたり使い続けたシステムを入れ替える。企業ITに携わる人間ならば、その困難さを想像するのは難しくないはずだ。このほどANAは、8年間の歳月をかけて、国内線の予約、発券、搭乗業務を支える旅客システムをオープン化。34年間、ビジネスを支えたメインフレームに別れを告げた。プロジェクトの指揮官に話を聞く(文中敬称略)。聞き手:田口 潤 IT Leaders発行人 Photo:陶山 勉 ――今回、8年間にわたる国内旅客システムの刷新という大規模プロジェクトを終えた訳ですが、もともと、いつ頃から検討を始めたのですか?金子:“次”を考え始めたのは、2000年頃だったと思います。30年以上にわたって、メインフレームを使い続けてきましたが、そのころから限界を感じ始めていたのです。 コストについては、必要経費ですから、それほど問題視していませんでしたが、むしろ、技術者の確保には頭を悩ませていました

    ANA、国内線の旅客システムをオープン化、34年間のメインフレームの歴史に終止符 | IT Leaders
    akachochin
    akachochin 2013/11/23
    開発はある程度仕様が固まった段階でとにかく実装にしてみることの大事さ。
  • データベースアプリケーション開発を炎上させる負のスパイラル

    毎度おなじみ、はてブのホットエントリに「SIをダメにする負のスパイラル」というタイトルのまとめが掲載された。きしだ氏とはかなり視点は違うものの、開発現場の問題点については少し思うところがあるので意見を書いてみようと思う。と言っても、以下の話の内容はデータベースアプリケーションに限定した話であり、またSIerだけに限った話ではないのでその点はご容赦頂きたい。もちろんSIer各位の案件はデータベースは必須なので、エントリで触れる問題点には該当するだろう。 Q.なぜ炎上するのか? A.正しいデータベース設計ができていないから結論から言おう。データベースアプリケーションの開発が炎上するのは正しいデータベース設計ができていないからだ。ここでいう「正しい」とは、論理的に証明できる正しさという意味ではない。「来こうするべき」といった意味で捉えて欲しい。 「炎上」というのは、例えばテストが通らない、バ

    データベースアプリケーション開発を炎上させる負のスパイラル
    akachochin
    akachochin 2013/11/17
    データベース系の開発のアンチパターンについて書いているが、本質的なところはデータベースでなくても一緒。
  • プログラマの開発効率向上が、世界を変える。海野弘成氏が『Qiita』『Kobito』を作るワケ。 | キャリアハック(CAREER HACK)

    今や『Qiita』『Kobito』を知らないプログラマはいないだろう。同サービスを開発したIncrementsのCEO海野弘成氏は自身がプログラマでもある。どんな問題意識からプログラマ向けサービスを開発するのか。海野氏が語ったのは「もっと楽しく、色々なモノが生まれる世界を作る」という野望だった。 すべてのプログラマを幸せにする。 日における職業プログラマ人口は約40万人(※)。 その中で技術情報共有サービス『Qiita』のユニークユーザー数はもうすぐ50万人に到達するというから驚きだ。 また、2012年4月にリリースされたMac技術情報記録ツール『Kobito』も利用者を増やし続けている。 同サービスを手がけるIncrementsは、国内最大級の総合プログラマコミュニティを生み出した、といって差し支えないだろう。 同社CEOの海野弘成氏は、自身もプログラマとして活躍する。海野氏は「プロ

    プログラマの開発効率向上が、世界を変える。海野弘成氏が『Qiita』『Kobito』を作るワケ。 | キャリアハック(CAREER HACK)
    akachochin
    akachochin 2013/11/09
    やはりこういう人がいるのを見ると、日本もまだ捨てたものじゃないな・・・もとい日本もまだ戦えると思う。
  • Google の Design Doc について - フリーフォーム フリークアウト

    移転しました http://please-sleep.cou929.nu/20091116.html

    Google の Design Doc について - フリーフォーム フリークアウト
    akachochin
    akachochin 2013/11/07
    GoogleでのDesign Doc。意外と細かい事柄まで書いているなと思う。ソース見れば分かることよりも「何故」を最も重視してソースコード内のコメントよりも表現力豊かなツールを使い考えをまとめていく。この過程が最も大事
  • 日本の全エンジニアに捧ぐ!現在公開されているAPI一覧【2013年版】 | Find Job ! Startup

    2013年のいま、API界隈が熱い! 今年に入り、官公庁の統計データやNHKの番組情報など、今までなかなか利用できなかったデータがAPIとして扱えるようになってきました。このエントリでは現在公開されているAPIを一覧でまとめます。いま使えるAPIはこれだけ読めば大丈夫。2013年の最新マッシュアップ事情をあますとこなく網羅します! HOT! API 総務省 次世代統計利用システム(国勢調査、人口推計、就業構造、企業統計、物価統計 etc.) NHK番組表(※未公開) 行政・自治体・公共サービス 郵便番号 郵便番号検索API郵便番号 → 住所) 郵便専門ネット(郵便番号 → 住所、郵便番号の簡易存在チェック) ぽすたん(郵便番号 → 住所、住所 → 郵便番号) IW3 PROJECT(郵便番号 → 住所、住所 → 郵便番号) 宇宙 Google+ JAXA PR(※現在一部の学生に限定公開

    日本の全エンジニアに捧ぐ!現在公開されているAPI一覧【2013年版】 | Find Job ! Startup
    akachochin
    akachochin 2013/11/03
    こういうのがあったのね。
  • はてなブックマーク記事のレコメンドシステムを作成 PythonによるはてなAPIの活用とRによるモデルベースレコメンド - データ分析がしたい

    私は情報収集にはてなブックマークを多用しており、暇な時は結構な割合ではてなブックマークで記事を探してます。しかし、はてなブックマークは最新の記事を探すのは便利ですが、過去の記事を探すにはいまいち使えません。個人的には多少過去の記事でも自分が興味を持っている分野に関しては、レコメンドして欲しいと感じてます。 ありがたいことにはてなAPIを公開しており、はてなブックマークの情報を比較的簡単に取得できます。そこでこのAPIを利用して自分に合った記事を見つけるようなレコメンド機能をRとPythonで作成してみたいと思います。 利用するデータは、はてなAPIを使って収集します。具体的には、はてなブックマークフィードを利用して自分のブックマークしているURLを取得し、そのURLをブックマークしているユーザをエントリー情報取得APIを用いて抽出し、そのユーザのブックマークしているURLを収集します。こ

    はてなブックマーク記事のレコメンドシステムを作成 PythonによるはてなAPIの活用とRによるモデルベースレコメンド - データ分析がしたい
    akachochin
    akachochin 2013/10/23
    これはまさに私がやりたかったこと。車輪の再発明でもいいから、実装してみよう
  • Gitサーバの引越し - NeverBlog::Likk::Unexistable;

    2年ぐらい使ってたVPSから、別のVPSに引っ越そうと思ってGitのリポジトリもそっちに移しました。 移そうと思って軽くググってもsvn -> git への移行の記事ばっかで gitサーバAからBへの引越しがあまり見当たらなかったけど、リポジトリまるっとコピーで行けました。 gitのリポジトリ自体はrsync でもscp でもなんでもいいのでディレクトリ構造まるっとそのまま新しいサーバに引っ越せば良い。 ワークスペースは、引越しさきからcloneし直しても良いし、リポジトリが重かったり作業中のブランチがあったりする場合は .git/config の [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = git://example.com/path/to/repos のurlを編集して新しいサーバに変えれば良い

    Gitサーバの引越し - NeverBlog::Likk::Unexistable;
    akachochin
    akachochin 2013/10/23
    Gitリポジトリをサーバまたいで移動させたいときには意外と楽かも。もっとごちゃごちゃやらないといけないかと思っていた。
  • Webサービス開発現場から / 近頃の開発のやり方 ・・・ Github と Pull Request とコードレビュー - naoyaのはてなダイアリー

    先日プレスリリースが出たのですが、KAIZEN platform という会社で技術顧問などをやっています。それから、一昨日自分も出たWebアプリケーション開発に関する勉強会 (資料) を開いたじげんという会社でも少し前から同じように顧問のような形で携わっています。 自分が関わっている会社のPRも含めて、すこし、2013年現在のWebサービス開発の現場感、やり方みたいなものを書いてみたいと思う。ただ、自分の利益があるところの話だけではフェアではないので、Webエンジニアならよく知っているであろう Qiita を運営しているインクリメンツの様子も合わせて紹介する。 KAIZEN platform KAIZEN platform が提供しているサービスは planBCD という A/B テストの SaaS で、Webサイトのコンバージョンだとかを画面の構成要素を変えて効果測定したいとか、そういう

    Webサービス開発現場から / 近頃の開発のやり方 ・・・ Github と Pull Request とコードレビュー - naoyaのはてなダイアリー
    akachochin
    akachochin 2013/10/13
    GithubやCIはもはや当たり前になりつつある。組み込み系の現場でもかなり遅れてではあるが、いろいろ入りつつある。もはや現代のプログラマは言語だけではすまされない。
  • ログファイルの圧縮方法

    圧縮レベル2と3では、bzip2よりずっと短い所要時間で高い圧縮率が得られています。興味深いのはレベル4で、所要時間が大きく増えたのに圧縮率が下がっています。xzはレベル4からLZ法の一致文字列を探すアルゴリズムが変わるので、これが裏目に出ているようです。 bzip2より2割以上高い圧縮率が得られるレベル7以上では、所要時間は5倍以上になります。ログファイルの圧縮方式が混ざるのは何かと面倒なので、5倍の所要時間でこの程度の圧縮率の差ではxzに変更する気にはなれないです。 圧縮率はそうでもないですが、xzの伸張速度の速さはとても魅力的です。デフォルトの圧縮率のファイルを伸張するのに、bzip2が1分22秒かかるのに対してxzは25秒しか掛かりません。ログを集計するときに伸張速度が3倍近く速いのはとても有利です。 もし圧縮方法を決め直せるならxzにするかもしれません。適宜レベルを調節してbzi

    akachochin
    akachochin 2013/10/11
    mmapたん・・・。
  • PaaSの作り方 Sqaleの場合

    OpenShift the Easy Way からの Hard? Way ちょいと早い忘年会 OpenShift.Run Winter 2020 #11 https://openshift.connpass.com/event/191402/

    PaaSの作り方 Sqaleの場合
    akachochin
    akachochin 2013/10/09
    クラウドまわりはチェックチェック。これからのOS屋には必要な技術のひとつとなろう。
  • はてなブックマークのAPI解説 (YuNo - labo)

    はてな」には開発者向けにいろいろなAPIが用意されています.(⇒はてな技術文書) 今回使用したAPIについて簡単に説明します. ◆はてなブックマークエントリー情報取得APIはてなブックマークエントリー情報取得API」は、あるURLを送信するとそのURLをブックマークしているユーザーのIDを返してくれます. (ご参考 ⇒ はてなブックマーク > Google) 上記と同じ内容のものがJSON形式で返されます. このAPIを使用して適当なURLからそれをブックマークしているユーザーを取得します.それを異なるURLで行い、ユーザーの集合を得ます.もちろんはてなのすべてのユーザーではありません. ◆はてなブックマークフィード 「はてなブックマークフィード仕様」では、ユーザーIDを送信するとそのユーザーがブックマークしているURLをRSSで返してくれます. このAPIを使用して上記のユーザーの

    akachochin
    akachochin 2013/10/06
    はてなブックマークを使ってもっと有効に情報を集めるために何かできることはないか?やっぱりプログラマらしくAPI叩いたり、その他のなにかと連携させてみたいところだ。ここが第一歩。
  • GUIアーキテクチャパターンの基礎からMVVMパターンへ

    Please select the category that most closely reflects your concern about the presentation, so that we can review it and determine whether it violates our Terms of Use or isn't appropriate for all viewers.

    akachochin
    akachochin 2013/10/06
    GitHubが採用した・・・とかなんとか。不勉強ながら、MVC以外知りませんでした・・・。
  • pythonでオフィス快適化計画

    23. OpenPyXL+BioPython •  OpenPyXL – Excel 2007 xlsx/xlsmを読み書きする パッケージ •  BioPython – PythonでBioinformatics(ゲノム配列や タンパク質立体構造を扱う) – PubmedAPI(xmlが返ってくる)にも対 応 25. コード from Bio import Entrez, Medline from openpyxl import load_workbook Entrez.email = ”_____@gmail.com" handle = Entrez.efetch(db="pubmed", id=["21982300"], re"ype="medline", retmode="text") records = Medline.parse(handle) record = list(r

    pythonでオフィス快適化計画
    akachochin
    akachochin 2013/09/23
    ほう。これは業務改善の手法として覚えておくのが良い。この手のExcel申請書とか仕様書がWordとか、よくある状況なので・・・。
  • YAPC::Asia 2013 で「社内ISUCONのつくりかた」を発表しました - 酒日記 はてな支店

    blogを書くまでがYAPCということなので… YAPC::Asia 2013 にて「社内ISUCONのつくりかた」を発表しました。朝一の同時間帯に魅力的なトークがひしめくなか、聴きにきていただいた皆様ありがとうございます。 毎回40分のトークで早口になるので今年はゆるふわにするつもりだったのですが、蓋を開けてみたら結局いつもの感じになってしまいました。ゆるふわ難しい。 資料はこちらです 技術評論社さんのレポートも書いていただきました。ありがとうございます。http://gihyo.jp/news/report/01/yapcasia2013/0002 YAPC::Asia は2006年の初回から8年連続参加していて、うち編トークは4年連続でやらせていただいていて、あらためてこう数えてみると結構な歴史を感じますね。 来年からはまた新しい歴史が始まることに期待して、一年間自分のできることを

    YAPC::Asia 2013 で「社内ISUCONのつくりかた」を発表しました - 酒日記 はてな支店
    akachochin
    akachochin 2013/09/22
    こういう競技で切磋琢磨するのもなかなか面白いアイデア。
  • perl な web application のためのテスト情報 を #yapcasia で話してきました - soh335 memo

    yapc::asia 2013 で perl の test 回りの話をしてきました。 去年からテストについて色々取り組んでいた所で、実際どういうモジュールでどうコードを書いてるかっていう説明が出来たと思います。 他の人がどういうテストを書いているかとかも気になるので、なにか気になったりしたら話したりしたいです。 継ぎ足しでスライドを作っていたら、 test::mock::guard のコードの説明がなくなっていて、なくなっていたと思ったら後ろから出てきたり、久しぶりに人前で喋ったせいか、珈琲のストローとマイクを間違えて喋ったりしました。 335さんこういうキャラの人だったのか。— ダメ人間 (@dameninngenn) September 20, 2013 335「びっくりだ!」聴衆(こっちがだ) #yapcasia— ひさいち (@hisaichi5518) September 20,

    perl な web application のためのテスト情報 を #yapcasia で話してきました - soh335 memo
    akachochin
    akachochin 2013/09/21
    自動テストの具体的な知恵。Perlだけれども、考え方はシェルスクリプトでも活かせる。
  • YAPCで「はてなブログの開発フロー」について話してきました - 大西ブログ

    今年も参加しました!YAPC ASIA TOKYO!今回は40分トークを応募して、はてなブログの開発フローについて話してきました。 プロジェクトの開発プロセスを健全に保つための タスク管理、ワークフロー テスト、CI リリース管理 を中心に、実際にチームで行っている開発フローやさまざまなとりくみについて紹介しました。 開発フローは、作るものやチームにとって最適なものを選ぶべきだと思いますので、この手法が誰にでも使えるものではないと思いますが、何かの参考になれば幸いです。 また、こんな事をやるといいよ、というあなたの工夫もぜひ教えてください!

    YAPCで「はてなブログの開発フロー」について話してきました - 大西ブログ
    akachochin
    akachochin 2013/09/21
    隣の晩ご飯ならぬ隣の開発フロー。エンジニアが素早く気持ちよく開発できるような工夫。プロセスや仕組みがエンジニアの足枷になっていないのが凄い。
  • YAPC::Asia 2013ではてなのサーバ管理ツールの話のはなしをしました - ゆううきブログ

    YAPC::Asia 2013で"はてなのサーバ管理ツールの話"というはなしをします - ゆううきブログ YAPC::Asia Tokyo 2013で、アルバイトで開発してたサーバ管理ツールのはなしをしました。 前半がサーバ管理ツールの開発思想で、後半がサーバメトリクス可視化の実装についてです。 キワモノツールであるRRDtoolの話は後ろに押し込んであるので、興味ない方は最初のほうだけ見てもらえればよいと思います。 感想 トーク後に結構話しかけられたりしてうれしかった。 トークの内容をブログに書いて、インターネット上で何か反響を得たことはあったけど、トークしたその後、直接話しかけられることは今まであまりなかった気がする。 コミュニティで認められるのに何か発表するのって大事だなと改めて思った。 RRDtoolをご存知の方が会場内でパッとみで1/4くらいいらっしゃったので、結構インフラ系の人

    YAPC::Asia 2013ではてなのサーバ管理ツールの話のはなしをしました - ゆううきブログ
    akachochin
    akachochin 2013/09/21
    いやあ、これは単なるInternalでなく設計における思考の過程が書かれている非常に貴重な資料だと個人的には思うのです。