ときどきの雑記帖'

最新ページへのリンク
目次ページへのリンク

一つ前へ 2012年12月(下旬)
一つ後へ 2013年1月(中旬)

ホームへ

2013年01月10日

■_

3位がこれとはちとびっくり。 2012年コンピュータ書売上冊数ランキング第3位:光成滋生『パターン認識と機械学習の学習 ベイズ理論に挫折しないための数学』 - 『このコンピュータ書がすごい! 2013年版』最新情報 - compbookグループ

■_ trap

シェルスクリプトで trap を忘れちゃいませんか - 理系学生日記 を、ついった経由で知り、 そういやあ最近もどこかでtrapネタ見たよなあと記憶と履歴を辿って調べた → Using Exit Traps In Bash

んで、redditでもそこそこの賑わい。

How "exit traps" can make your bash scripts way more robust and reliable : programming

This is damn useful information that I wish I knew about long ago.

The funny thing is, this technique has been available since before Bash even existed. 
Yet error handling in shell scripts is something most people just never quite figure 
out.

In case you're stuck using Bash, another fun thing you might try is "set -e" 
at the top of your script. It does something like trap-exit, but is more concise and 
built in (why it is not the default is known only to history).

■_ スイカの品質

なんのことかと悩んだけどこれの話だった。 【14-B-3】自動改札機の運賃計算プログラムのデバッグ手法 ~10の40乗のパターンをいかにテストするか~:Developers Summit 2013 自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編) - Publickey 自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(中編) - Publickey 自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(後編) - Publickey

行きたいなあ

■_ PHP には

PHP needs a vision | Hacker News が盛り上がっていたので元記事を見る

php.internals: Was Reflection annotations reader - We Need A Vision

Stas,

On Wed, Jan 9, 2013 at 11:58 AM, Stas Malyshev <smalyshev@sugarcrm.com>wrote:

> I seriously hope it never comes to this in PHP

Would you shut up with this rhetoric already? All it does is show that
you're completely and utterly out of touch with the reality of modern
development.

Frankly, I'm getting sick and tired of seeing these recurring themes of
"PHP is not java" and "I never want this". If you never want this, then
don't contribute to the discussions at all.

(略)

PHP NEEDS a vision. It needs something to guide development. Not everyone
will agree with it. And that's the point. It levels the playing field for
contributions and discussions. Rather than every developer playing for
themselves and saying "I hope this never happens", it puts it in the
context of "I don't believe this fits our vision". Note the difference in
tone between them.

It's an ongoing joke about how abusive and unproductive the internals list
is. I for one am sick of it. And rather than keeping ignoring it (or
walking away), I'd rather see it fixed.

Anthony

で、Rasmus の回答

php.internals: Re: Was Reflection annotations reader - We Need A Vision

On 01/09/2013 09:45 AM, Anthony Ferrara wrote:

> PHP NEEDS a vision. It needs something to guide development. Not everyone
> will agree with it. And that's the point. It levels the playing field for
> contributions and discussions. Rather than every developer playing for
> themselves and saying "I hope this never happens", it puts it in the
> context of "I don't believe this fits our vision". Note the difference in
> tone between them.

The vision has been the same for years. A general purpose scripting
language with a focus on web development. You are simply saying you want
the vision to be more specific than that because everyone has a
different view of what web development means. But even if we narrow the
vision, it will still be open to a lot interpretation. We try to strike
a balance between the different and changing views of web development
the same way we strike a balance between appealing to weekend warriors
and top-100 trafficed sites. No vision statement is going to answer the
question of whether annotations should be in docblocks or in the core
language. That's simply not what vision statements do.

-Rasmus

■_ What I expect from a programming language

プログラミング言語の設計について

What I expect from a programming language | eiffelroom

What I expect from a programming language

Perhaps I have just been exposed to too much Python in the recent months. But somehow, I feel like I
have to express the qualities that I expect from a good programming language. Eiffel has these, most
others don't.

    Programs have to be easier to read than write: Code not only communicates a solution from a
    programmer to a computer. It communicates a solution to other programmers or even a future self.
    You never understand a problem as good as in the moment you solve it. Capture that knowledge in
    clean and expressive code, and it is never lost.
    プログラムは書きやすいよりは読みやすいものでなければならない
    コードとはプログラマーからコンピューターへsolutionを伝えるだけのものでははない。
    未来の自分自身へsolutionを伝えるものである。


    Don't allow the language to trick yourself: The language must protect us from fooling ourselves.
    Dangling elses allow you to see wrong control flow. Tabs and spaces cannot be distinguished, so
    they should carry the same meaning. A single equal sign should express equality, as we have
    learned in school.
    トリッキーな記述ができてはいけない(超訳)


    One way to do things: Multiple ways of doing the same thing only leads to confusion. It has no
    benefit. Software is complex enough without thousand variations of the same logic.
    物事を行うにはやり方は一つ
    同じことを行うやり方が複数あっても混乱を招くのみである。そうすることに利益はない。
    ソフトウェアは同一のロジックに基づく数千のバリエーションがなくとも複雑すぎるものだ。


    As much static checking as possible: Static checking is good. Did you ever write a larger piece
    of code in one go, compiled it and it produced tons of errors? All these error would still be
    there, if you would not have static checking. You err much more than you think.
    可能な限り多くの static checking
    

    No warnings: Every error free program should be a valid program. If it is not valid, an error
    should be raised. If it is valid, the compiler should shut up and compile it. Warnings create
    noise. Noise hinders understanding.
    警告がない
    エラーのないプログラムはすべて正当なプログラムであるべきである。
    プログラムが正当でないのなら、エラーとなるべきである。
    プログラムが正当であるなら、コンパイラーは何も云わずそれをコンパイルすべきである。
    警告はノイズを発する。
    ノイズは理解を妨げる。


    Coding conventions are part of the language: Whoever thinks that a language is purely defined by
    "what the compiler accepts" is wrong. The job of the compiler is to translate a language
    into what some CPU needs for execution. A language is a culture of expressing yourself. Coding
    conventions are part of that culture. Syntax high-lighting and indention styles are not arbitrary.
    コーディング規約が言語の一部である

It is a relief to express these thoughts. Now I sulk back to my job and do Python and Java. 

ちょっと議論を呼ぶ箇所もあるかな。

■_

2013年01月09日

■_

連絡がないってことは選から漏れたんでしょうねえ。しょぼーん。

■_ DDJ

この記事 The Rise and Fall of Languages in 2012 | Dr Dobb's

The Rise and Fall of Languages in 2012 | Dr Dobb's

In general-purpose scripting languages, Python continues to grow slowly, JavaScript and Ruby are
treading water, and Perl continues its long decline. According to Google trends, the number of
searches for Perl is 19% of what it was in 2004. Its declining role in open-source communities
further cements the perception that it's in an irretrievable tailspin. One should always be careful
pronouncing a language dead or dying, because rare resurrections have occurred: JavaScript and
Objective-C being two stand-out cases. However, Perl is unlikely to see such a new lease on life
because of direct competition from Python, which is considerably more popular (whereas Objective-C
and JavaScript had no direct equivalents when they came back).

(略)

Other quick thoughts: Lua and Tcl, the two languages most used for embedding in C and C++, continue
to head in opposite directions. Lua is widely used in gaming and the advent of the new, screamingly
fast LuaJIT has made it an attractive option even in performance-sensitive contexts. Tcl meanwhile
continues its decline, which has been attributed by insiders to core design issues, slow releases,
and poor marketing decisions.

In 2012, we covered several emerging languages we thought had good potential for breaking into the
mainstream, notably D, Go, and Dart. While they have not yet entered the premier tier, they are
slowly working their way forward and gaining adherents. We will examine more new and interesting
languages this year and report on their progress as they vie for developer love.

JavaScript and Ruby are treading water って表現がすぐにはどういう意味か理解できなかった。 こういう表現するのねえ。にしても Perl に対する意見が厳しい。

Tcl は組み込み用途(と書くと誤解されそうだ)ではまだ広く使われている? そもそもそういう用途がどのくらいの需要を持っているのかわからんけれども。ああでも Tcl meanwhile continues its decline 減少し続けていると。 slow releases, and poor marketing decisions. ふむ。

mainstream での注目株として D、Go、Dart と。

The Rise and Fall of Languages in 2012 | Hacker News

■_ Category

The categorical distribution's algebraic structure

■_ 未来へつなぐ デジタルシリーズ

二つ三つ、このシリーズで買ってるものが。 土曜日にジュンク堂行ったときにでもチェックしよう。

未来へつなぐ デジタルシリーズ | 共立出版

未来へつなぐ デジタルシリーズ | 共立出版

続刊テーマ

「グループウェアと知識社会」
宗森 純・由井薗隆也・井上智雄 著

「C言語」
今野 将・久保田 稔・河口信夫・佐藤文明・打矢隆弘・杉浦茂樹 著

「可視化」
藤代一成・伊藤貴之・小山田耕二・高橋成雄 著

C を題材に何を書くんだろう…

■_ 演算子がいっぱい

なにがなにやら

■_

わたしのtwitterのTLで大人気だったこの記事 2013年、ITエンジニアは英語を学ぶべきか? - QA@IT公式ブログ

Twitter / yukihiro_matz: @fk_programmer ...

…あれ、何を書こうと思ってたんだっけ

■_

■_ A Developer's Checklist

A developer's checklist - Mario's coding blog

A Developer's Checklist

Jan 8th, 2013

    Care about the code you write. Your goal should be to write code that works (Of course), that
    it is clean and readable. Leave one of the tree and you're going to regret the day you choose
    to become a developer. An high quality codebase is going to improve both the quality of your
    work and your productivity.
    自分の書くコードに注意を払う。


    Use the right tool for your job. When you start a new project spend some time to understand what
    is the best tool you can use. Do I really have to tell you why it is so important?
    自分のしている仕事に対して正しいツールを使う。


    Use source control. It should be obvious, but it is better to be safe than sorry and be sure that
    you use it. Be aware that Dropbox (I saw someone using it) does not count as source control. You
    should use git or mercurial. Subversion is better than not using any source control system, but
    why would you use it when better alternatives are available?
    ソースコントロールを使う。


    Automate everything. Is there something that your computer can do instead of you? Have it do it!
    It is way better than you at building your project, running tests and producing reports. If you
    think that your effort is required to do any of these tasks I bet that you are doing them wrong.
    Instead of wasting your time doing repetitive tasks automate them and build new stuffs or just
    have more fun!
    すべてを自動化する。


    Keep track of bugs and get rid of them. You should always know what is not working. And, since
    you don't want to deliver something broken, you either have to fix it or get rid of it.
    バグとその除去の記録を残す。


    Work on what you are supposed to deliver, one bite at time. Set up a kanban board, follow its
    (very few) rules and get the work done. It's easier to get things done if you finish what you
    started before switching to something else.


    Keep yourself updated. Once in a while check Hacker News and reddit programming to get some
    fresh news. I always find amazing things linked there. I also follow other coders on twitter.
    Be aware that is may be addicting, so you really need to find the right balance.
    自分自身を update する。


    Read books for coders. For a list of the readings I recommend you should keep an eye on my book
    reviews. However, don't forget to read also something non technical. No matter how much you like
    coding, there is life outside programming and make sure you are not missing it.
    coder 向けの本を読む。


    Start a coding blog. I write mine mainly because it is fun. Apart from that it gives me the
    (much needed) chance to practice my writing, to share with others the things I discover and to
    get some feedbacks (Please add a comment saying what I missed in this checklist).
    coding blog を始める。


Copyright © 2013 - Mario Sangiorgio - Powered by Octopress

2013年01月08日

■_

順調に上がってるなあ 【GPS搭載!】 卓上ニキシー管時計 完成品 (日立CD-81仕様) - Yahoo!オークション

■_

Clippy Alpha Favorite Linux Commands Favorite Unix Commands | Hacker News

昼間見たときには面白いと思ったのがあったんだけどどれだっけか。

■_ QCon

まあ行けないんですけどね。 QCon London in 8 Weeks (March 6-8): Barbara Liskov (MIT) Keynote; New Tutorials; Schedule Now Live

QCon London in 8 Weeks (March 6-8): Barbara Liskov (MIT) Keynote; New Tutorials; Schedule Now Live

Tutorials at QCon London 2013  

On March 4th and 5th leading industry experts will provide 2 days of hands-on training on a wide
range of topics covering everything from architecture and software delivery to NoSQL and mobile
development. Confirmed tutorial topics & speakers include:

    Lock-Free and High-Performance Algorithms, by Martin Thompson
    Impact Mapping - How to Make a Big Impact by building Valuable Software Products and Projects, by Gojko Adzic and Russell Miles
    Presentation Aikido, by Damian Conway    
    Hands-On with Neo4j, by Jim Webber and Ian Robinson    
    Faster Software Delivery, by Dan North  

Damian Conway の名前が。

■_

■_

色々書けない。

2013年01月07日

■_

1/8 のクローズアップ現代を録画予約。

ハイスコアガール3にバーチャファイターが出てきて、当時の友人とのやり取りを思い出すなど。

■_ Go

Optimizing Real World Go | Hacker News Optimizing Real World Go Why I Program in Go | Hacker News Why I Program in Go | Technology by Tahir

■_

たいにゃんとshiroさんのやり取りを見かけて一人盛り上がっていたのはナイショ。

たいにゃん シーナ / システムソフト (1986年 2月) [PC-8801/SR] | レトロゲームのデータベースサイト8BITS

■_

2013年01月06日

■_

録画しておいた NHK MIT白熱教室 番組概要 を観たのですが、最初に誤差(測定誤差)の話をしたのは素晴らしいと思った。

行く。 東京国立博物館 - 展示 日本考古・特別展(平成館) 日中国交正常化40周年 東京国立博物館140周年 特別展「書聖 王羲之」 2013年1月22日(火) ~ 2013年3月3日(日)

新春恒例! 「もつ鍋わたり」店主の2013年プロ野球“直球”大予想。(1/6) - Number Web : ナンバー 個性が強かろうが性格が悪かろうが仲悪かろうが、勝てばチームはできてくる。誰を獲るじゃなくて、もっと根本的なものを変えねぇと。

■_ Strange Loop

Strange Loop の、最近InfoQにアップロードされた(る)やつにおもしろそうなものが News - Strange Loop

News - Strange Loop

31-Dec-2012 	Deconstructing P vs NP (or why I hate sudoku) 	Daniel Spiewak
31-Dec-2012 	Rust 	David Herman
31-Dec-2012 	Plan: a new dialect of Lisp 	David Kendal
7-Jan-2013 	Scaling scalability: Evolving Twitter Analytics 	Dmitriy Ryaboy
7-Jan-2013 	Information Rich Programming with F# 3.0 	Donna Malayeri
7-Jan-2013 	monad examples for normal people, in Python and Clojure 	Dustin Getz

んで結構やってるのね Strange Loop 2009 Sessions Strange Loop 2010 Sessions Strange Loop 2011 Sessions

2010年、2011年のにも面白そうなものが Strange Loop 2011 Video Schedule News - Strange Loop Video Schedule

News - Strange Loop

Strange Loop 2011 Video Schedule

Published October 13, 2011 12:49

Below is the video release schedule for the 2011 videos.   All videos will be released on InfoQ.
Week Of 	Title 	Speaker
17-Oct-11 	Simple Made Easy 	Rich Hickey
17-Oct-11 	Storm: Twitter's scalable realtime computation system 	Nathan Marz
24-Oct-11 	We Really Don't Know How To Compute! 	Gerald Sussman
24-Oct-11 	Teaching Code Literacy 	Sarah Allen
31-Oct-11 	Running a startup on Haskell 	Bryan O'Sullivan
31-Oct-11 	Core HTML5 Canvas: Mind-blowing Apps in Your Browser 	David Geary
7-Nov-11 	A Tale of Three Trees 	Scott Chacon
7-Nov-11 	Product Engineering 	Mike Lee
(略)
Copyright © 2013 Strange Loop. All rights reserved.

日本ではこういうイベントできないのかなあ

■_ 某スレ

【なれる!SE】夏海公司スレ16【葉桜が来た夏】

296 イラストに騙された名無しさん [sage] 2013/01/05(土) 23:19:38.81 ID:wOcMe6pT Be:
    ニュースサイトみてたらこんなのあって笑った

    ttp://blog-imgs-12.fc2.com/n/w/2/nw2/project.jpg

    元ネタのは知ってたけど、随分バージョン増えてんだな
    炎上案件は前々回やってたけど、
    次は何のネタでやるのか

    そろそろネタなさそうな 

297 イラストに騙された名無しさん [sage] 2013/01/06(日) 00:50:43.78 ID:p1BZT9Me Be:
    古過ぎてわけわからん。
    エヴァとマブラヴと BALDR で例えてくれ。 

298 イラストに騙された名無しさん [sage] 2013/01/06(日) 02:45:34.65 ID:tWmI58d1 Be:
    おいおい、ダグラムいいだろーdisるなよ。最終回で主役メカを自爆させて
    主人公が投降するってだけだろう。そのほろ苦さが良かったんだよ 

299 イラストに騙された名無しさん [sage] 2013/01/06(日) 05:49:13.17 ID:JdCfWhN3 Be:
    顧客が説明した要件はニュータイプ
    顧客が本当に必要だった物はパーフェクトソルジャー

    超一流のエンジニアを派遣しろってことかw 

302 イラストに騙された名無しさん [sage] 2013/01/06(日) 11:17:26.94 ID:UIqANGL0 Be:
    >>298
    スレチなのを承知の上で修正させてくれよ
    ダグラムは太陽の牙の面々が戦わなくても良くなったということで武装を捨てるために動いていたものの
    クリンがそこにこぎつけるためにともに動いてきたダグラムだけは他人の手に委ねたくないとして自爆させたんだ
    それに投降したのではなくて太陽の牙の解散
    ほろ苦さが良かったことは同感だけど

    >>296
    顧客が説明した要件と本当に必要だったものがかけ離れすぎてるというか別物だ
    説明下手すぎだろwww 

ダグラムなあ…こう、色々残念なところが。 筋立ては良かったと思うんだよ、うん。 総集編映画の方が良いかも 劇場版 ドキュメント 太陽の牙ダグラム / ザブングル グラフィティ 同時上映BOX (初回限定生産) [DVD]

■_ LLVM本

C83お疲れ様でした!そして有難うございますとごめんなさい - 餅ちゃんの備忘録

C83お疲れ様でした!そして有難うございますとごめんなさい - 餅ちゃんの備忘録

今回は取り置きも導入してみたし、
夏の加筆修正版だし、
大晦日だし、
と色んな状況を考えて120部であれば十分だろう
(むしろ残るだろうなー)
ぐらいに考えていたのですが、
今回も約1時間で完売となり、、
多くの方にお渡しできないことになってしまいました。
大変申し訳ありませんでした。

複数の人から120部は少ない等々言われたのですが、
私はもともと80部程度の予定だったのを
風薬に120部に引き上げられたわけで、
正直そんなにもう売れないでしょう・・・
と思っていたわけで
需要がどれくらいか読むのは難しいよ!
というのが言い訳です。
はい、言い訳です。ごめんなさい。

一般参加者だったころは
「もっと刷ればいいのに」
とか考えていたわけですが、
実際サークル参加してみるとその辺の
ラインの見極めってほんとに難しいです。
(また言い訳)

(略)

今後について

当日スペースで一部の方にはお伝えしましたが、
私も風薬も電子書籍等で今回の本を出したいな
という事は考えています。
現在はまだ調整中という段階ですが、
今後何か正式にお伝えできることが出来たら都度報告します。

以下略

会場で1200円だったので、制作費をえいやで一冊千円で計算すると100冊で10万円だものねえ。 そりゃあほいほい増やせないですよね。

んでコメント欄

C83お疲れ様でした!そして有難うございますとごめんなさい - 餅ちゃんの備忘録

コミケお疲れ様でしたー!!
LLVM本の売れ行きすごかったですね。取り置きしておいてよかったです。
ざっくり目を通したので、正月休みを利用してゆっくり読み進める予定です。

あのクオリティなら出版社に持ち込んでしまえるのではないでしょうか?
最近だと達人出版会とかもありますしね。
僕はLaTeXをReVIEWという電子書籍用組版システムで組み直してKindleで販売するという、
同人誌の個人電子出版の体験はひと通りやってみたのですが、結構骨が折れる作業でした(;´∀`)

はやみずさん、その辺のお話書いて欲しいなー。 あ、はやみずさんたちのサークルの本はAmazonで買えたりします(Kindle版)。 The Database Times vol.1
The Database Times vol.1 The Database Times vol.2
The Database Times vol.2

■_

■_ ワザ

これは知らなかった

【.cmd】 バッチファイルスクリプト %9 【.bat】

494 デフォルトの名無しさん [sage] 2013/01/04(金) 00:23:10.23 ID: Be:
    for文中にカウントアップして進捗状況がわりにechoさせてるんだけどカウントが多いと今までの表示が凄い勢いで上にぶっ飛んでいくんだよ
    何とか1行の中でカウントアップしたいんだけどバッチだけじゃ無理かな 

495 デフォルトの名無しさん [sage] 2013/01/04(金) 00:32:29.38 ID: Be:
    LFだすからだろ
    CRにしとけ 

496 デフォルトの名無しさん [sage] 2013/01/04(金) 00:58:37.83 ID: Be:
    >>494
    遅延展開で、変数に入れて、clsして、echoとか 

497 デフォルトの名無しさん [sage] 2013/01/04(金) 01:03:01.82 ID: Be:
    set /p hoge=hogehoge <nul 

498 デフォルトの名無しさん [sage] 2013/01/04(金) 01:22:48.68 ID: Be:
    <nulは知らなかった。ありがとう。(横からだケド)
    SetLocal EnableDelayedExpansion
    for /L %%a In (1,1,9) do (
      :cls
      set /A b=!b!+1
      set /P b=!b!<nul
      pause>nul
    ) 

499 デフォルトの名無しさん [sage] 2013/01/04(金) 01:50:05.74 ID: Be:
    ありがとう
    正直お前らが何言ってるのかさっぱりだからちょっと勉強してくる 

500 デフォルトの名無しさん [] 2013/01/04(金) 08:55:30.30 ID: Be:
    やっと分かったすげー、バッチだけでプログレスバーできるとは 

501 デフォルトの名無しさん [sage] 2013/01/04(金) 12:28:51.75 ID: Be:
    >>498
    aが既にあるのにbをインクリメントする必要なくね? 

502 デフォルトの名無しさん [sage] 2013/01/04(金) 17:40:13.57 ID: Be:
    引用

    コマンドプロンプトやバッチファイルで、環境変数に改行文字(CR)を入れて使う。

    環境変数に改行文字(CR)を入れる。
    名 の unicode が 540D、これをシフトJISで読むと、0D 54 つまり、CR+T であることを利用して、CR を抜き出します。

    setlocal enabledelayedexpansion
    for /f "delims=" %%1 in ('cmd /u /c echo;名') do (
    set CR=%%1
    set CR=!CR:~0,1!
    )

    改行文字(CR)を使うときは、環境変数を遅延展開します。

    echo aaa!CR!bbb 

503 デフォルトの名無しさん [sage] 2013/01/04(金) 17:47:55.15 ID: Be:
    >>493
    set /p x= < 対象ファイル
    if "%x:~0,4%"=="" (echo BOM有) else echo BOM無 

504 デフォルトの名無しさん [sage] 2013/01/04(金) 22:20:24.40 ID: Be:
    >>501
    aはforループのダミーですしおすし 

505 デフォルトの名無しさん [sage] 2013/01/04(金) 22:23:03.35 ID: Be:
    for /f %%i in ('"cmd /k prompt $h <nul"') do set bs=%%i
    for /l %%i in (0,10,100) do @(ping -n 2 0 >nul
    set /p=%bs%%bs%%bs%%%i%%<nul) 

506 デフォルトの名無しさん [sage] 2013/01/05(土) 04:20:00.46 ID: Be:
    <nul
    に、へー、と思ってググったら

    for /L %%i in (1,1,80) do (
    ping -n 1 127.0.0.1 >nul
    set /P <nul =#
    )

    でプログレスバーっぽくできることに増々、へー、となった。 

■_

Why do major C++ libraries and frameworks never use smart pointers? : programming api - Why do C++ libraries and frameworks never use smart pointers? - Stack Overflow

■_

航海日誌: 2013-01-06: [Scala][プログラミング] Scala 2.10リリース! ガイドと概要 - Scala Documentation

■_

■_

休暇は終わりぬ

2013年01月05日

■_

歯医者といえば、長年お世話になっていた歯医者さんが廃業するらしく、 代わりを探さないといけないのだった。 とはいえどう決めたものか。 歯科医院そのものは近くに結構あるんだけど。 Island Life - 歯が割れた

年初恒例の ジュンク堂書店 池袋本店トークセッション情報 高橋会長のトークセッションの申し込みをしにジュンク堂(池袋)に行ってきたんですが (申し込みは電話でもできますがそこはそれ)、 6Fの平台で2012年売れ行き上位10傑(だったかな)を紹介していました。 とはいえ、1位から5位までは会長のトークセッションまでは内緒と。 だけで1位はバレバレだよねえ。などと言ってみる。

■_

それぞれを比較してみると面白い…かな? 同僚の書く酷いコード、どうやって気づかせる? | スラッシュドット・ジャパン デベロッパー Ask Slashdot: How Can I Explain To a Coworker That He Writes Bad Code? - Slashdot

■_ C83

ちまちま書いていきます。


ロシアの計算機というので買ってみた。ほか二冊も同じサークル(というか個人)によるものです。 しかし作者さんのサイト、最近更新されている気配がないんですが… 本家・六波羅さんのスペース

あと、タルタルソース本の2が出ていたのに偶然遭遇した。 帰宅してからサークルチェックリストに登録しておいた。 タルタルソース同人誌 「このタルタルソースがすごい!」 - アキバBlog 発行元サークルさんのページがこちら 版元ひとりのブログ

んで、こういうのもあるのよねえ。 こういう本があるエリアを巡るのは結構楽しいです。 たまごかけご飯専用醤油同人誌 「世の中には、あなたの知らない醤油がたくさん」 - アキバBlog

まあ委託販売されてたりするんですけど(というかこっちで先に知っていた)。 COMIC ZIN 通信販売/商品詳細 このタルタルソースがすごい! COMIC ZIN 通信販売/商品一覧ページ

■_ firefox

ここ数日ははちょっとメモリ食ってるかな? 位だったのが、 このページで現象再現 Micro Services: Java, the Unix Way


とはいえ見てもよくわからんな…w イメージで妙にメモリ食ってるのと、わけのわからん領域があるくらい。

■_ 2020年の挑戦

High Scalability - High Scalability - Ask HS: What will programming and architecture look like in 2020?

High Scalability - High Scalability - Ask HS: What will programming and architecture look like in 2020?

Some of my lousy predictions: 

    Programmers Will Form Guilds Around New Gamified Training Hubs
    The Web Will Become More Closed Before it Becomes More Open
    Not Everyone Will Become a Programmer
    Focus Will Shift to Creating Bigger People Instead of Chasing Big Ideas

詳しい説明は元記事を読んでいただくとして、まあこんな感じなんですかねえ。7年後。 reddit での反響もけっこうなものが → What Will Programming And Architecture Look Like In 2020? : programming

「2020年の挑戦」の元ネタはこちら→ 『総天然色ウルトラQ』 DVD BOX Ⅱ<最終巻>
『総天然色ウルトラQ』 DVD BOX Ⅱ<最終巻>

■_

■_

2013年01月04日

■_

こんな番組が。 Twitter / irobutsu: NHKのMIT白熱教室の第1回「ガリレオは本当に正し ... NHK MIT白熱教室 番組概要 なんか見覚えがあるなあと思ったらこの本書いた人か。 本屋で見かけて、気にはなってたんだこれ。 Amazon.co.jp: これが物理学だ! マサチューセッツ工科大学「感動」講義: ウォルター ルーウィン, Walter Lewin, 東江 一紀: 本 NHK「MIT白熱教室」ルーウィン教授の本『これが物理学だ!』に注目! | 本の「今」がわかる 紀伊國屋書店

Winning is the worst thing that can happen in Vegas by David of 37signals

PFPL
PFPL is out! « Existential Type If you order directly from Cambridge using this link, you will get a 20% discount on the cover price (pass it on). にあるリンク先からだと日本からは注文できないっぽい? できるとしてもユーザー登録必須みたいだしなあ。 amazonさんにお願いするかねえ(ディスカウントはなさそうだけど)。 Practical Foundations for Programming Languages
Practical Foundations for Programming Languages

この人の作品も結構気になる。 李世民(上)玄武篇 李世民(下)貞観篇
李世民(下)貞観篇

■_ shuf

冬コミで買った本で知ったコマンド。 GNU Coreutils にこんなのがあったとは。 Coreutilsのshufを使ってみた - EchizenBlog-Zwei shuf invocation - GNU Coreutils

shuf invocation - GNU Coreutils

7.2 shuf: Shuffling text

shuf shuffles its input by outputting a random permutation of its input lines. Each output
permutation is equally likely. Synopses:

     shuf [option]... [file]
     shuf -e [option]... [arg]...
     shuf -i lo-hi [option]...

(略)

For example:

     shuf <<EOF
     A man,
     a plan,
     a canal:
     Panama!
     EOF

might produce the output

     Panama!
     A man,
     a canal:
     a plan,

Similarly, the command:

     shuf -e clubs hearts diamonds spades

might output:

     clubs
     diamonds
     spades
     hearts

and the command ‘shuf -i 1-4' might output:

     4
     2
     1
     3

These examples all have four input lines, so shuf might produce any of the twenty-four possible
permutations of the input. In general, if there are n input lines, there are n! (i.e., n factorial,
or n * (n - 1) * ... * 1) possible output permutations.

An exit status of zero indicates success, and a nonzero value indicates failure. 

ほかにもまだいろいろありそうな気がする > coreutiles そのほか

■_ 正規表現

OKWave にあった質問。 Apache 正規表現でのバックトラック抑止 | ハードウェア(サーバー)のQ&A【OKWave】

Apache 正規表現でのバックトラック抑止 | ハードウェア(サーバー)のQ&A【OKWave】

Apache の正規表現でバックトラック抑止をすることは可能でしょうか。
たとえば .* に対して + や (?>) を付加した .*+ や (?>.*) などの表現は使えるのでしょうか。


目的は mod_rewrite によって URL の正規化をおこなうことです。
スラッシュ『/』で終わる URL のときは index.html を付加したいと考えています。
たとえば『http://example.com/about/』を『http://example.com/about/index.html』として解釈したいのです。


単純に考えれば

1) RewriteRule ^.*/$ $0index.html

でも可能ですが,できる限り高速に動作させたいので

2) RewriteRule ^.*+(?<=/) $0index.html
3) RewriteRule ^(?>.*)(?<=/) $0index.html

のどちらかが使えればそちらを使いたいと考えています。
バックトラックと後読みを用いたこの表現は PHP マニュアル『再試行無しのサブパターン』
( http://php.net/manual/ja/regexp.reference.onlyonce.php ) からアイデアを得ています。


2) や 3) の書き方でも一応エラーが出ずに動作する (Apache 2.2.3) ようですが,意図した動作なのか気になります。
よろしくお願いします。

で、リンク先を見ると PHP: 再試行無しのサブパターン - Manual 確かに失敗したときには意味のないバックトラックはしないようにするのが 遅くならないようにするための鉄則ではあるけど、 1)でも前と後ろにアンカーついてるんだからどうなんかねえこの書きかえ。 繰り返しの繰り返しや繰り返しの中の分岐もないし。

PHP: 再試行無しのサブパターン - Manual
(略)

再試行無しのサブパターンと戻り読み言明とを組み合わせると、 対象文字列の終端における効率的なマッチ
ングを行うことができます。

      abcd$

というパターンを見てましょう。 マッチが成功しない長い文字列に適用した場合を考えます。 マッチングは
左から右に行われるため、PCRE は対象文字列のすべての "a" を探し、 後に続く文字が残りのパターン
にマッチするかどうか調べられます。 パターンを

      ^.*abcd$

のように少し変更してみます。 この場合、最初の .* は、まず文字列全体にマッチします。 ("a" が
その後に続かないので)マッチが失敗すると、最後の 1 文字を除く 文字列にマッチするようバックトラック
が行なわれ、続いて最後の 2 文字を 除く文字列に、という風に動作します。 "a" の検索は、やはり
文字列全体に 対して、右から左に、行われるため効率は良くありません。 しかし、パターンを

      ^(?>.*)(?<=abcd)

のようにしてみましょう。 要素 .* に対してバックトラックは行われず、文字列全体にのみマッチします。
続く戻り読み言明は、最後の 4 文字に対するテストを 1 回だけ行います。 テストが失敗すると、マッチ
はただちに失敗します。長い文字列に対しては、 この方法を用いると実行時間にかなりの差が生じます。

パターン中にサブパターンがあって、その中に繰り返し数に 上限の無い要素があり、そのサブパターン自身も
何回でも繰り返しが 可能な場合、マッチの失敗に非常に長い時間がかかってしまう事があります。 それを避
ける唯一の方法は再試行無しのサブパターンを使うことです。 パターン

      (\D+|<\d+>)*[!?]
      

は、非数字もしくは <> で括られた数字に ! または ? が続く 任意の長さの部分文字列にマッチしま
す。マッチが成功するような 対象文字列に対しては、速く動作します。 しかし、これを

      aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
      

に適用すると、マッチが失敗するまでに長い時間がかかります。これは、 この対象文字列を分割するやり方
が数多くあり、それらすべてに対し マッチを試みられる事になるためです。 (この例で、終端に単一の文
字ではなく [!?] を使っているのは、 PCRE と Perl の双方とも、〔終端に〕単一の文字が使われると、
より速く失敗と判定できるように最適化が行われる 〔ので、それを避ける〕ためです。マッチに必要な最後
の一文字が記憶され、 文字列にその文字が無い場合、早期に失敗と判定されます。) このパターンを

      ((?>\D+)|<\d+>)*[!?]
      

のように変更した場合、非数字の部分が分割されることがなくなるので、 より速くマッチが失敗するよう
になります。 

こっちの説明にもあったけど、前後にアンカーついてるときにこんなバックトラックしたっけ? ってこっちにも 〔終端に〕単一の文字が使われると、より速く失敗と判定できるように最適化が行われる 〔ので、それを避ける〕ためです。マッチに必要な最後 の一文字が記憶され、 文字列にその文字が無い場合、早期に失敗と判定されます。 ってあるじゃん。元の質問の /$ なら正にこの最適化の対象じゃん。

Guessing start of match in sv for REx "^.*/$" against "foobar/"
Found floating substr "/"$ at offset 6...
start_shift: 0 check_at: 6 s: 0 endpos: 7
Does not contradict STCLASS...
Guessed: match at offset 0
Matching REx "^.*/$" against "foobar/"
   0 <> <foobar/>            |  1:BOL(2)
   0 <> <foobar/>            |  2:STAR(4)
                                  REG_ANY can match 7 times out of 2147483647...

   6 <foobar> </>            |  4:  EXACT </>(6)
   7 <foobar/> <>            |  6:  EOL(7)
   7 <foobar/> <>            |  7:  END(0)
Match successful!
Guessing start of match in sv for REx "^.*/$" against "great/quux"
Did not find floating substr "/"$...
Match rejected by optimizer
Freeing REx: "^.*/$"

Perl のはあまり参考にならんか。

あとのほうの例はコメントもついてるけど期待通りには動作しないんじゃないかな。

PHP: 再試行無しのサブパターン - Manual

(Just a guess) that should be happenning because (?>\D+) matches the whole string, so [!?]
doesn't find any matches, because the cursor is at the very end of the string. Using look-behind
assertion makes this pattern work:

  preg_match("#((?>\D+)|<\d+>)*(?<=[!?])#", "aaaaaaaaaa!", $matches);
  print_r($matches);

  Array
  (
      [0] => aaaaaaaaaa!
      [1] => aaaaaaaaaa!
  )

The following two patterns are not equal to each other:

  (\D+|<\d+>)*[!?]   and   ((?>\D+)|<\d+>)*[!?]

For example
The former matches the string of 'aaaaaaaaaaaa!', but the later does NOT.

「強欲」なメタ文字が [!?]まで飲み込んじゃうけど、それを離さない (=バックトラックしない) ので全体がマッチできるようにできない。と。

■_

2013年01月03日

■_

Raspberry Pi。 コミケ三日目に参加してたサークルさんで、 こいつにOS (FreeBSDだったかな)載せて、webサーバーやら動かして さらに Ruby on Rails 動かせました。という方が。 まだとりあえず動きましたレベルで、どの程度使い物になるかはわからないらしいですが。 とはいえ、なんか結構なものが動いちゃうんでもうちょっと小規模なのがないかなあと思ったり。 まあRAMが256Mとか512Mとか乗ってンだものねえ。

そういや Raspberry Pi は教育用に使うのは良くないという主張をちょっと前に見たな どこだっけ。

■_ software wars

いつもの情報源経由。 Free Software Documentary "Software Wars" in Need of Support

Free Software Documentary "Software Wars" in Need of Support

Free Software Documentary “Software Wars” in Need of Support

“Software Wars” is an in-development documentary by Keith Curtis, based on his 2009 book of the
same name. It's a look at how free and open source software can make our world a better place, and
the possibilities that are available to us by abandoning closed source proprietary systems and
working together towards an open technological society:

(略)

While some in the community have expressed some doubt about the film's militaristic stance, it's
certainly a very exciting premise. The free and open source software community could use a modern
and professional film to help explain and spread its ideals, as 2001′s “Revolution OS” is
starting to look pretty dated.

But unfortunately, the indiegogo campaign for “Software Wars” is in desperate need of some
support, having only raised $5,600 of its $150,000 goal with only 15 days remaining. While they're
a very long way off from their goal, remember that indiegogo campaigns get funded regardless of
whether or not the goal was met; so there's no reason to be shy even if it looks like the campaign
will fall short.

Community interest for the film is certainly there, as the trailer has already been viewed over
14,000 times on YouTube, but this project is going to take a bit more than just interest to get it
off the ground.

If you think the FOSS community could use some high profile advertisement, spread the word and help
“Software Wars” become a reality.

After the Software Wars — Home Page « keithcu.com Software Wars | Indiegogo

50ドルほど出してみたけど、15万ドルにはまだまだ遠いねえ。 あとKindle版の書籍も買ってみた(こっちは3ドル)。

■_ XuTools

この手のアイデアは以前からあったような気もするけどどうだろうか Home · gabriel-weaver/xutools Wiki

Home · gabriel-weaver/xutools Wiki

XUTools: eXTended UNIX Text-Processing Tools

We designed and built extended UNIX text-processing tools (xutools) so that practitioners could
process files in terms of the language constructs appropriate to the problem at hand--many of these
languages lie beyond regular expressions. We thus extended traditional UNIX tools because many
modern, structured-text formats break assumptions of traditional UNIX tools.

Traditional UNIX tools operate on sequences of characters, bytes, fields, lines, and files. However,
practitioners often want to manipulate files in terms of a variety of language-specific constructs--
C functions, Cisco IOS interface blocks, and XML elements, to name a few.

We designed and built text-processing tools for practitioners to extract(xugrep(1)), count(xuwc(1)),
and compare(xudiff(1)) texts in terms of language-specific structures.

■_ range

定期的に繰り返される話題。

Why is Ruby range syntax this way? 1...5 exclusive and 1..5 inclusive. : ruby

Why is Ruby range syntax this way? 1...5 exclusive and 1..5 inclusive. (self.ruby)


I like Ruby (and CoffeeScript) syntax for ranges. Very convenient for iterating a number of times.
However, I have a hard time making any meaningful associations about why 1..5 is inclusive 5 and
1...5 is exclusive 5. I would think that "less dots" lead to shorter Array, but it is
vice-versa. Is there some reason (maybe historical, or in another language) for this? Is there any
mnemonic?


It's actually one of the many things that Ruby used from Perl. Perl doesn't have an exclusive range
operator; just the inclusive one (..).

So the 3-dot one was a later addition for developers who wanted an exclusive range without popping
off the last element.

Historical. The 1...5 exclusive syntax wasn't introduced until ruby 1.4.


I must admit I did not know the exclusive, but perhaps you can think of 1...5 as if 5 is further
away and therefore outside the range?


A bit off the point, but I wish the exclusive syntax didn't exist. It is far too similar to the
inclusive syntax, making it easy to miss if you are reading some code. I would prefer
(1..5).exclusive - needing an exclusive range is a rare enough situation that an additional method
would be sufficient.

I agree. I've never needed the exclusive one, and when it occurs in other people's code, it always
surprises me. (If I notice the third dot.)


And then I have to carefully re-read the method surrounding said range to ensure it's not a typo.

Range.new(1, 5, true) does this


Think of it this way: The range extends three places.

With the range 1...5, the 5 is past the third place, so you don't include it. The range is 1 through 4.

With the range 1..5, the 5 is in the third place, so you do include it. The range is 1 through 5.


I always remember it by imagining that the 1...5 syntax extends out that the last one pops off :p


Perl did it this way first, and it's very good syntax.


This is extremely esoteric, but the way I think about it is: the first four characters are the
items that will make it into the range. Not inherently obvious in any way, but it's the only thing
I can remember consistently.


Let me remind you of the excellent metaphor from why's (poignant) guide to Ruby (chapter 3 -> Ranges):

    "When you see that third dot, imagine opening the accordion slightly. Just enough to let
    one note from its chamber. The note is that end value. We'll let the sky eat it."

確かにあとから覚える人にとっては「なんだこれ」な構文なんだろうなあ。

■_ 正規表現 visualizer

あれ、正規表現がどうとかいうのは別のを昨日見かけたような? Regexper Regexper - Regular expression visualizer : programming Regexper: Beautiful regexp visualizations | Hacker News

これだ。 Learn some RegEx for the New Year Finally released an update to my regular expression site, what do you guys think? : programming Regular Expressions 101 方向性が違うか

■_ Go vs. Python

お、と思いつつ見たら2010年の記事でした。 Go vs. Python for a simple web server | Hacker News Go vs. Python for a simple web server

"Written on Jun 13 2010"Why are people posting ancient and outdated stuff to Hac... | Hacker News

mseepgood 
"Written on Jun 13 2010"

Why are people posting ancient and outdated stuff to Hacker NEWS?

scott_s

We regularly post old articles. Not everything we post is "news." However, common practice
is to put the year in the title if it's not recent.

S4M

That is true if the content of the article contains a truth that is not time dependent, or if the
article is posted for historical purpose. But this article is comparing one new language against a
more established one, so in two years you should expect the new language to evolve significantly.
Especially, the problems mentioned in the article about Go may be now fixed. Talking about the Go
from 2010 is just not relevant in 2013!

manojlds

Hate articles which have the date at the bottom. Had to read the entire stuff to realize it was
more than 2 years old.

古い記事で盛り上がるのは悪くないと思うけど、 今回みたいのはなー

■_

reddit でみると C++ が C に化けてたんだけど、 割と見かけるのでこういうのはどうにかして欲しい C and Beyond 2012: Panel - Convincing your Colleagues (Channel 9) : programming C++ and Beyond 2012: Panel - Convincing your Colleagues | Channel 9

C++ and Beyond 2012: Panel - Convincing your Colleagues | Channel 9

From C++ and Beyond 2012, Andrei, Herb and Scott present Convincing Your Colleagues - an interactive panel.

Abstract:

You can't do a better job if you don't change what you're doing, but change is hard.  It's especially
hard when what needs to change is your colleagues' approach to software development. Moving your
team forward often requires persuading your peers to change their behavior, sometimes to do something
they're not doing, other times to stop doing something they've become accustomed to.  Whether the
issue is to embrace or avoid C++ language features, to adopt new development tools or abandon old
ones, to increase use of or scale back on overuse of design patterns, to adhere to coding standards,
or any of the plethora of other matters that affect software creation, moving things forward typically
requires getting your colleagues to buy into the change you're proposing.  But how can you do that?

In this panel session, Andrei, Herb, and Scott share how they go about convincing their colleagues
to change and take questions from the audience. 

 

動画は追いかけるの面倒なんだよねえ。 どうにかしたいがそのためには先立つものが以下略

この、(ぴー)な番組ばかりのTVで観られればねえ

■_ すぺはり

Colorful Pieces of Game::3Dスペースハリアーはとても素晴らしい移植だった ニンテンドー3DS|3Dスペースハリアー|Nintendo 3DS 買おうかな…

■_

2013年01月02日

■_

マザーグースにこういうのがあります 釘がないので For want of a nail :マザーグースの歌 これと、リチャード三世 (リチャード三世 (シェイクスピア) - Wikipedia ボズワースの戦い - Wikipedia) のクライマックスがごっちゃになってたんですが、 なるほどこういうことが

For Want of a Nail (proverb) - Wikipedia, the free encyclopedia

The earliest reference to the full proverb may refer to the death of Richard III of England at
the Battle of Bosworth Field. This short variation of the proverb (shown to the right), was
published in "Fifty Famous People" by James Baldwin. The story associated with the proverb,
describing the unhorsing of King Richard during battle, would place the proverb's origin after the
Battle of Bosworth on 22 August 1485. It should be noted that historically Richard's horse was
merely mired in the mud.[7] In the story, the proverb and its reference to losing a horse is
directly linked to King Richard famously shouting "A Horse! A Horse! My Kingdom for a Horse!",
as depicted in Act V, Scene 4[8] from the Shakespeare play Richard III, which was written circa 1591.

なんでこういう話を出したかですがお察しください。

■_

この方 西堀栄三郎 - Wikipedia の著作 Amazon.co.jp: 西堀 榮三郎: 本 を三冊ばかり図書館で借りて読んでいます (といっても流し読みに近いけど)。 今ではちょっとなという記述もありましたが、確かに読んでて面白いです。 文庫の奴は自分で買ってもいいかな。

■_

■_

浮動小数点数について。

C言語なら俺に聞け(入門編)Part 111

706 デフォルトの名無しさん [] 2013/01/01(火) 23:17:31.74 ID: Be:
    double型ってせっかくintの100億倍以上の表現力もあるのに
    結局17桁くらいまでしか精度ないんだろう。利点とかってありますか? 

709 デフォルトの名無しさん [] 2013/01/01(火) 23:48:00.62 ID: Be:
    double型の 1.00+e00っていう表示はfloatの一般小数点表示と比べて
    メリットはあるんですか?純粋な疑問 

711 デフォルトの名無しさん [sage] 2013/01/01(火) 23:56:14.56 ID: Be:
    doubleはdoubleになってるからdoubleだろjk 

713 デフォルトの名無しさん [sage] 2013/01/02(水) 00:28:19.35 ID: Be:
    >>706
    ネタなのかマジなのかわからんが、100億倍って桁に直したら10桁だろ。
    intって8.4桁くらいだろ。足したら18.4桁。大体17桁と違いないから正しいじゃないか。
    8桁じゃ困って17桁なら大丈夫な計算なら嬉しいだろう?17桁しかないなら8桁しかないのと同じだと思うの? 

714 デフォルトの名無しさん [sage] 2013/01/02(水) 00:33:55.81 ID: Be:
    >>713
    有効桁数は
    ビット数 × 0.30102999566398119521373889472449

    符号付でも 32bit int なら精度9桁あるぞ 

715 ◆QZaw55cn4c [sage] 2013/01/02(水) 00:52:08.60 ID: Be:
    >>706
    分野によっては数値の大小よりも「有効桁数」を優先する場合があります。
    科学技術の実験値表現では例えば「光速度:2.99792458 × 10^8 m/s」とかいいますがこの場合有効桁数は9桁になります。
    浮動小数点表現は有効桁数を優先した表現方法です。 

716 デフォルトの名無しさん [sage] 2013/01/02(水) 00:58:20.44 ID: Be:
    double型って範囲が
    ±10^(-308)~10^(308)
    って事は308桁の精度って事じゃないんですか?
    intは24億だから10桁の精度。
    精度にしたら30倍。違いますか? 

717 デフォルトの名無しさん [sage] 2013/01/02(水) 01:01:16.63 ID: Be:
    >>716
    IEEE754でググれ 

718 デフォルトの名無しさん [sage] 2013/01/02(水) 01:48:38.93 ID: Be:
    >>714
    すまん一桁カウントし間違えた。0.4桁分はその計算の言わんとする所の意味だよ。
    言いたかったのは、100億倍とかいう表現と17桁とかいう表現を混ぜたら、前者は凄く広大な感じがして後者はわい小な感じがするけど、
    整合性はだいたいとれてるだろ、ってこと。
    そもそも17桁以上の精度を必要とする計算ってそんなに身近なのか?ということを考えた方がいいと思うんだよね。
    17桁ってなんかしょぼいな、って感覚的に思って決めつけちゃう前に。大体のものは17桁の精度で測定なんかできないものばかりだろう。
    まあ銀行系とかはdoubleじゃ困るだろうけどね。 

719 デフォルトの名無しさん [sage] 2013/01/02(水) 06:11:28.69 ID: Be:
    銀行系はCOBOLやjavaのクラスライブラリを使うだろ 

やはりここは計算尺の復活をですね。 って自分も学生時代は使ったことないけど。

2013年1月1日

■_

新年でございます。 今年もよろしくお願いします。

まあ目標だの何だのと書くつもりはあまりないのですが (人のを読むのは面白いが自分が書くのはつまらない)、 そこそこの頻度(間隔)で開催される勉強会(もしくは読書会)をもう一つくらい、 参加するか自分で始めるかしたいとは思ってます。

ただ、TaPL読書会でもよく感じていることなのですが、 人数が多くても会場の確保を始めとしていろいろ苦労がありますが、 (特に定期的にやるなら)人数が少なくてもやっぱり会場探しが大変だなあと思っています。 貸し会議室は確かにたくさんあるのですが会議室の大きさは10人くらいからの使用を想定したものが大半で、 10人切るような参加人数だと使用料を頭割りにすると結構高くつくという印象があります。 使用料の面から考えれば公共施設という選択肢もありますが、 これもこれでいろいろと(希望した日時の確保がしづらいとか交通アクセスとかネット環境とか…)

という話はこれくらいにして、2013年注目の技術トレンドというのがあると思いますが (14 big trends to watch in 2013 - O'Reilly Radarとか) わたし個人としては、 JuilaJulia (The Julia Language) と Go (The Go Programming Language) に関心を持ってます。 (ここでよりにもよって)「プログラミング言語かいっ」って意見はありましょうがそこはひとつご寛恕を。

というかですね、O'Reilly Radar のようなものを挙げろと言われても良くわからんのですよ。 漠然としたものはありますが「トレンド」と明確に言葉にできるものではないし、 他の人の挙げた「トレンド」に乗っかるのもねえ。というわけです。

JuilaJulia と Go を挙げた理由ですが、書くのが面倒なので省略します。

あとは昨年仕事の関係から足を突っ込み始めた開発状況の統計的解析 (よーするに「信頼度成長曲線」のあれです)について、もう少し深く調べたいとは思っています。 それはどちらかというとなんでこんなもんありがたがって使ってんだという 否定をしたい邪(よこしま)な動機から来ているのですが。

そうするとますます機械学習とかデータマイニングの世界に近づくことになって、 いよいよこれを読むということになるんですかねえ… パターン認識と機械学習 上 パターン認識と機械学習 下 (ベイズ理論による統計的予測)

■_ new year

twitter で 「Hap.py New Year」というのを見かけてうまいなと思った。 Twitter / tanB: Hap.py New Year!!! ...


一つ前へ 2012年12月(下旬)
一つ後へ 2013年1月(中旬)

ホームへ


リンクはご自由にどうぞ

メールの宛先はこちらkbk AT kt DOT rim DOT or DOT jp