.gitignore を設置 GitHub に .gitignore のテンプレートがあるのでそれを使うとらくです。 github/gitignore .gitignore をコミット チームで開発していたり、複数のマシンで編集する可能性がある場合は、他の環境でも同様にこれらのファイルを無視してくれるように、.gitignore 自体をコミットしてしまいましょう。
Gitのコミットメッセージの書き方 自分なりにまとめてみました。Git歴浅いので、意見募集中です。 (2014年12月17日追記) 想像以上にたくさんの方にストックなりはてブなりいただいたので、はてブでなるほど!と思ったコメントをもとに少し修正・加筆してみました。 (2022年1月4日追記) 最新の書き方をこちらに書きました。 https://zenn.dev/itosho/articles/git-commit-message-2023 原則 以下のフォーマットとします。 1行目:変更内容の要約(タイトル、概要) 2行目 :空行 3行目以降:変更した理由(内容、詳細) 日本語でも英語でもOKですが、リポジトリで統一してください。 1行目 コミット種別と要約を書きます。フォーマットは以下とします。 [コミット種別]要約 コミット種別 以下の中から適切な種別を選びます。 (多すぎても悩むので
ICFPC 2021 にチーム「グレースたなか」として参加しました。 メンバーは cos, nojima, qwerty, seikichi の4人です。また、チームのリポジトリは https://github.com/seikichi/icfpc2021 にあります。 問題 今年の問題はポーズをうまく変形して穴をくぐるというものです。穴をくぐることができれば成功で、ポーズの良さに応じた点数を獲得できます。穴の各頂点にポーズの頂点が近いほどそのポーズは良いとされています。以下の gif を見るとイメージしやすいでしょう。 ポーズは好きなように変形できるわけではありません。辺の長さが大きく変わるような変形は禁止されています。どれぐらいなら辺の長さが変わってよいかは問題ごとに定められています。また、頂点の座標は整数でなければなりません。 問題の一覧は公式サイトにあります。 1日目 今年の IC
漢は黙ってシングルファイル C/C++ ライブラリですね! シングルファイル C/C++ ライブラリとは, ヘッダファイル .h ひとつだけで機能が実装されているライブラリ(もう少し条件をゆるくして .cc も含む)のことです. header-only とも言われれたりします. このあたりの元祖は nothings 先生 http://nothings.org/ ですね. 最近は github にコードをあげています. https://github.com/nothings/stb シングルファイル系のライブラリまとめ一覧もあります. シングルファイル系が便利すぎてやばいので, 自分でもいくつか作りました. TinyObjloader(Wavefront .obj loader) https://github.com/syoyo/tinyobjloader TinyEXR(OpenEXR
An open source Git extension for versioning large files Git Large File Storage (LFS) replaces large files such as audio samples, videos, datasets, and graphics with text pointers inside Git, while storing the file contents on a remote server like GitHub.com or GitHub Enterprise. Getting Started Download and install the Git command line extension. Once downloaded and installed, set up Git LFS for y
先日GitHub Universeをダラダラと聞いてたら、Git LFSの1.0がリリースされてGitHub上で使えるようになったらしいので試してみました。 追記 2016/8/20: まだベータでしたがBitbucketでも使えるようになってました。試したら詳しく追記します。 2017/5/20: git lfs initがgit lfs installにrenameされていたのでその旨追記しました。 概要 Git LFSはGitHubが中心となって開発しているラージファイル(画像・音声・映像等)を扱うための拡張機能です。gitレポジトリにはテキストファイルのポインタを保存しておいて別の場所にラージファイルの実態を保存しておくことができます。これによって不要なファイルのpullやfetchをすることなくgitレポジトリの最新化ができるようになったりします。 先日のGitHub Unive
リスト1.8のhelloアクションを書き換え、「Hello, world!」の代わりに「hola, mundo!」と表示されるようにしてみましょう。課外作業: Railsの表示では「非ASCII文字」もサポートされています。スペイン語特有の逆さ感嘆符「¡」を含む「¡Hola, mundo!」を表示してみましょう (図1.19)20。 リスト1.8のhelloアクションを複製して、第2のアクションgoodbyeを追加しましょう。このアクションは、「goodbye, world!」というテキストを表示します。リスト1.10のルーティングを編集して、ルートルーティングの割り当て先をhelloアクションからgoodbyeアクションに変更します (図1.20)。 出所)Ruby on Rails チュートリアル:実例を使って Rails を学ぼう
最近、AWSとセットで導入されるBIツール「Tableau」について、基本的な使い方をまとめてみました。「Tableau」は非常に簡単なツールなので、エクセルを使える人なら簡単にデータを可視化することができます。 2019年8月3日追加 情報を一部アップデートし、再編集したものを自身のブログに公開しました。こちらをご覧ください。 https://tadaken3.hatenablog.jp/entry/tableau-map 「Tableau」については以下のサイトもご覧ください。 Tableau公式サイト Tableau Desktopで出来る事のまとめ Tableau Publicのご紹介 ~Web上で使える可視化に優れたBIツール~|分析環境を考える 今回は無料で使えるtableau Publicを使用しています。製品版のtableau Desktopと機能的にはほとんど、変わりませ
Haskell は簡単に無限ループを作れる。 もちろん他の言語でもwhile(1)とすれば簡単に作れるけど、じゃあその無限ループから脱出するbreakに相当する機能をHaskellでも作れるだろうか。 (`・ω・´) 実際に作ってみた。 import Control.Monad.Cont main :: IO () main = do putStrLn "Start" withBreak $ \break -> forM_ [1..] $ \i -> do liftIO . putStrLn $ "Loop: " ++ show i when (i == 5) $ break () putStrLn "End" where withBreak = flip runContT pure . callCC
はじめにLibVMIはXenならびにKVMを対象としたVMIライブラリである.ここでは,その基盤と応用についてまとめる. libxcそもそもXenにおけるVMIの研究ではかねてより,各ドメインの制御機能ないしハイパーコールを提供するlibxcというライブラリが用いられてきた.libxcという名称はthe Xen Control libraryの略称であり,Xenによって公式に提供されている(tools/libxc/).なお,libxcとして提供されている関数はxc_というprefixを備えている. このうち,VMIと密接に関連があるのはxenctrl.hとxenguest.hである.なかでもxenctrl.hはlibxenctrlとも呼ばれ,PFNの参照やハイパーコールの追加などの機能が提供されている. LibVMIのソースコードにgrepを掛けると,libxcに由来する構造体と関数が多く
その他の購入オプションについては、各商品詳細ページを確認してください。価格やその他の詳細は、商品のサイズや色によって異なる場合があります。
MacPeopleの公式ブログで4年以上も前に書かれたにもかかわらず、現在でも一定のアクセス数を稼いでいる記事がある。「Macを無線LANポイントにする方法」というエントリーだ。OSが2世代前のSnow Leopard時代のものなので、現行のMountain Lion環境で同じ内容を再現してみよう。とはいえ、基本的な操作方法は以前と変わらない。 ■AirMacベースステーションをMac本体で代用 要は「ネットワーク共有」というOS Xの機能を利用して、Mac本体をAirMacベースステーションの代わりとして使うわけだ(下図参照)。このテクニックはAirMacベースステーションの調子がおかしい時や、旅先のホテルに有線LAN環境しかないような場合に、iPhoneやほかのMacなどからワイヤレスでネット接続したいときに有効だ。 ■「共有」パネルで設定 ネットワーク共有は、「システム環境設定」の「
File Not Found. 該当ページが見つかりません。URLをご確認下さい。 お知らせ 事件・事故のジャンルを除き、過去6年分の主な記事は、インターネットの会員制データベース・サービスの「京都新聞データベース plus 日経テレコン」(http://telecom.nikkei.co.jp/public/guide/kyoto/)もしくは「日経テレコン」(本社・東京 http://telecom.nikkei.co.jp/)、「ジー・サーチ」(本社・東京、 http://www.gsh.co.jp)のいずれでも見ることができます。また、登録したジャンルの記事を毎日、ネット経由で会員に届ける会員制データベース・サービス「スカラコミュニケーションズ」(本社・東京、http://scala-com.jp/brain/) も利用できます。閲読はともに有料です。 購読申し込みは下記のページから
bashで変数の値を変数名にする方法を紹介します。 1.bashの間接参照を利用する bashでは「!」を使って間接参照することで、変数の値を変数名として利用することができます。 #!/bin/sh foo=hoge bar=foo echo ${!bar} これを実行すれば hoge と出力されます。 ただしFreeBSDやSolarisではこのテクニックは使えないようです。 よって、プログラムを他のOSに移植する可能性がある場合は次項のテクニックを使った方がよいでしょう。 2.evalを使った間接参照を利用する evalは変数を評価した後、引数の文字列をコマンドとして実行する機能があります。 evalを利用した間接参照で、変数の値を変数名として利用することができます。 #!/bin/sh foo=hoge bar=foo eval echo \"\$$bar\" これを実行すれば ho
プログラムを組んでいくと、なんども同じような処理を繰り返すことがあります。例えば、画面に決まったフォーマットで表示する、といった機能などです。こうしたよく使う機能を関数としてまとめることは、シェルスクリプトでも可能です。 ユーザー定義関数の使い方 今回は関数のお話をしましょう。シェルスクリプトでも関数が使えます。ところで「関数」とはなんでしょうか? 通常プログラムの世界で関数というと、ほかのプログラムから呼ばれる「共通部品」のことを指しますね。オブジェクト指向プログラミング(C++、Javaなど)の普及で古い言葉になってしまいましたが、昔は「サブルーティン」などと呼んでいました。もちろん厳密な意味では少し違うところもありりますが。 ではシェルスクリプトの世界ではどうでしょう? ここでも関数は同じようにシェルスクリプトから呼ばれる共通部品のことです。シェルスクリプトから呼ばれるものというと?
Startups Facebook Buys Instagram For $1 Billion, Turns Budding Rival Into Its Standalone Photo App Facebook has just finished a deal to acquire mobile photo sharing app Instagram for approximately $1 billion in cash and stock. Instagram will remain an independently branded standalone app that’s separate from Facebook, but the services will increase their ties to each other. The transaction should
Shohei Yoshida I'm Shohei Yoshida, living in Tokyo, Japan. I use nickname syohex at github, twitter etc. Profile I'm software engineer. Resume Japanese English Activity github: https://github.com/syohex twitter: https://twitter.com/syohex linkedin: linkedin Blog(Japanese): https://syohex.hatenablog.com/ CPAN: http://search.cpan.org/~syohex/ Presentation: https://speakerdeck.com/syohex hashnode: ht
■ 64bit環境に適したBitboard、RBBが何故必要なのか? 将棋盤は81マスあり、Bitboardでこれを表現しようと思うと81bit必要です。64bit環境であれば、64bitレジスタが使用できるのですが、81bitは64bitレジスタ1つには収まりません。そこで、64bit変数1つと32bit変数を1つのようにBitboard構造体を構成するのが普通です。 struct Bitboard { u64 p1; u32 p2; }; Bonanzaのように3段ごとに32bit変数1つに入れないと、自陣にある駒だけを対象にforeachしたいときに、困ります。 しかし、x64環境では、bsf自体が1命令で出来るので、p1には、64マス分を詰め込みたいのです。そうするとp2は、残り81-64=17マスのみになります。これでは自陣にある駒を列挙しようとするときに、p1とp2にまたがるた
技巧の作者とは何者なのかについては以下の記事をご覧ください。 電王トーナメントに「技巧」という強すぎるソフト現る。参考文献に多くの棋書、人間に近いタイプの可能性 http://shogi1.com/denou-tournament3-gikou/ 技巧、floodgateでPonanzaと初対決し勝利。Ponanzaの独創的序盤に振り飛車穴熊で対抗 http://shogi1.com/gikou-vs-ponanza-in-fg/ いくつか上の記事を補足しておきます。 5五将棋の「技巧ミニ」は、将棋の棋譜なしに自力学習ですね。 これは、適当に局面を生成し、N手詰みの局面から1手詰みの局面までは最善手のはずなので、それを教師とし、それ以外のところは自力で探索してその指し手に一致するようにするということですね。半教師付き学習に分類されます。 私が「ひまうら王」として棋譜なしでどこまで自力学習で
電王トーナメントに「技巧」という強すぎるソフト現る。参考文献に多くの棋書、人間に近いタイプの可能性 2015/11/18 2015/11/19 棋戦 コンピュータ将棋, 電王トーナメント 2015年11月21~23日に開催される第3回将棋電王トーナメントに出場する予定のソフトの中で、あるソフトが「強すぎる」という話が持ち上がっています。 そのソフトとは「技巧」。 開発者は出村洋介さん。詳しい経歴はわからないのですが、以前は東京大学大学院法学政治学研究科に在籍されていた(後述)ようです。 PR文書は以下。 コンピュータ将棋ソフト「技巧」(ニコニコ動画) ※PDFです あまり聞き馴染みのないソフトですが、コンピュータ将棋関係者に衝撃を与えているようです。 強すぎやろ 今回の電王トーナメントの優勝最有力候補と見られているPonanzaの開発者、山本一成さんは以下のようにツイート。 今年も最後の最
前編(「ビッグデータは“リアルタイム”でこそ価値がある」)では、リアルタイムなビッグデータ解析プロジェクト「CET(Capture EveryThing)」が始まったきっかけから、いまのチームまで組織に焦点を当てました。 後編では、いよいよビッグデータ解析のシステムについて深掘りしていきます。 Amazonのクラウドサービスを活用して作り上げた現状のシステムを捨て、Googleで作る構成に変えようとしているそう。その意図とは。 クラウドサービスのコストパフォーマンスなど、エンジニアやアーキテクトには気になる情報が満載です。 「CET」で基盤構築や分析・集計アプリケーションの開発を行っている、吉田啓二さんに聞きました。 聞き手/構成/編集/写真:小川楓太(NEWPEACE Inc.) AWSで本格的に運用するのは厳しいかなという印象です —— 今回構築された基盤の具体的なシステム構成はどのよ
前々回の記事「PureScript ver. 0.7.0 以上での Hello, World!」、前回の記事「PureScript ver. 0.7.0 以上で “ブラウザーで” Hello, World!」に次ぐ記事。 NPM の package.json とか Bower の bower.json とかに依存を書いてビルドを簡単にするのが今回の目的。 おさらいと前提 ファイル一覧。 > dir /b src > dir /b src index.html Main.purs ファイルの中身。src\index.html は下記。 <html><head><script type="text/javascript" src="main.js" ></script> src\Main.purs は下記。 module Main where import Control.Monad.Eff.
第二次世界大戦時のCIAの秘密資料。題してSimple Sabotage Field Manual。要は、敵国内のスパイが、組織の生産性を落とすためにどのような「サボり」ができるか、という「サボり方ガイド」である。2008年に公開された。(なお、正確に言うと、CIAの前身組織、Office of Strategic Servicesの作成文書である。) 以下、一部を抜粋した意訳です。本文は意訳の後に。 「注意深さ」を促す。スピーディーに物事を進めると先々問題が発生するので賢明な判断をすべき、と「道理をわきまえた人」の振りをする 可能な限り案件は委員会で検討。委員会はなるべく大きくすることとする。最低でも5人以上 何事も指揮命令系統を厳格に守る。意思決定を早めるための「抜け道」を決して許さない 会社内での組織的位置付けにこだわる。これからしようとすることが、本当にその組織の権限内なのか、より
構文を解析するプログラムをパーサと呼びます。実装方法にはいくつか種類がありますが、今回はパーサコンビネータという方式を取り上げます。既存の実装を使うのではなく、1から実装しながら説明します。 C++ではBoost.Spiritが有名ですが、この記事ではHaskellのParsecを参考にしています。もちろんHaskellやモナドの知識は前提としません。それと断らずにモナドに由来する何かは出て来ますが、それが見抜けなくても問題ありません。興味があれば以下の記事を参照してください。 Haskell 構文解析 超入門 2015.07.31 今回はラムダ式を多用するためC++11以降を対象とします。ラムダ式なしで実装するとあまりにも冗長になり過ぎて、便利さよりも煩雑さが勝ってしまうためです。興味があれば、以下のリポジトリを参照してください。 https://bitbucket.org/7shi/p
Paul Graham managed to put a very important question, the one of the English language as a requirement for IT workers, in the attention zone of news sites and software developers [1]. It was a controversial matter as he referred to "foreign accents" and the internet is full of people that are just waiting to overreact, but this is the least interesting part of the question, so I'll skip that part.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く