タグ

programmingに関するstealthinuのブックマーク (814)

  • Ranking Programming Languages by GitHub Users

    I’ve recently become obsessed with the sheer amount of development activity happening on sites like GitHub. As a first project on working with this data, I thought it would be fun to rank all the programming languages by counting how many people on GitHub use each language. I’m using the GitHub Archive and GHTorrent projects as data sources for this analysis. The GitHub Archive provides a record o

    Ranking Programming Languages by GitHub Users
    stealthinu
    stealthinu 2018/01/29
    rubyの落ちっぷりが。しかし使用者が減ってるのではなく増えてないからシェアが減ってるという流れ。GoとTypeScriptが伸びてる。Swift伸び悩みなのが意外だった。今ならPythonとTypeScriptとGoって感じか。
  • 気鋭の縄文陶芸家はなぜC++のエキスパートなのか

    ITに全く関係ない分野からITに飛び込んで活躍しているエンジニア」や「ITIT以外の分野の境界を行き来しながら成果を上げているエンジニア」などを「越境エンジニア」と名付け、1カ月に一人ずつインタビューを掲載する。今月取り上げるのは村上原野(むらかみげんや)氏。縄文土器にインスピレーションを受けた創作を行っている陶芸家だ。同時にネットでは「狂える中3女子ボレロ村上」というハンドルネームでC++に詳しいプログラマーとしても知られている。今回は、縄文文化に深く影響を受けた生い立ちやプログラミングとの出会いなどを聞いた。 私の肩書は縄文造形家であり、陶芸の縄文アートを手掛けています。縄文アートとは、日の縄文時代の造形やスピリットにインスピレーションを受けたアートの総称です。私はその中でも、現代の窯で焼く陶芸とは全く異なる縄文時代の焼き方、土、造形技法といった縄文そのものの技法を再現して創作を

    気鋭の縄文陶芸家はなぜC++のエキスパートなのか
    stealthinu
    stealthinu 2018/01/17
    C++なんてガチガチのガチの人しかいないのにこんなとこでインタビューうけるなんて、とか思ったらこの人がガチガチのガチの人だったわ。しかも縄文土器についてもガチ。
  • 2017年一番人気のあるエディタは何だったのか?転職ドラフトのデータから読み解く、人気エディタ徹底分析!|転職ドラフトReport

    「いま、どのエディタが一番人気なのか」 宗教戦争※になぞらえるほどの議論を巻き起こすこの問題に、転職ドラフトチームはデータから答えを出してみたいと思います。 すでに登録済みの方はご承知のとおり、転職ドラフトの登録フォームには「好きなエディタ」を入力する項目が用意されています。そのデータを集計の上、審査を通過したユーザーのみを対象として、「昨対比」「年代比」「言語別」といった多視点から分析を行なってみました。 さて、あなたが愛用するエディタはいったいどこに位置しているでしょうか?(どんな結果になっていても怒らないでください…) 【集計対象】 転職ドラフトの審査を通過したユーザー1642人 【目次】 2017年度版 エディタ使用率を大公開! ヤングVSアダルト!年代別エディタ使用率比較 エディタ別 指名率&指名数比較 エディタ別 GitHub&Qiita入力率 プログラミング言語別 エディタ使

    2017年一番人気のあるエディタは何だったのか?転職ドラフトのデータから読み解く、人気エディタ徹底分析!|転職ドラフトReport
    stealthinu
    stealthinu 2017/12/28
    なぜ若い人にvimが人気なのかがわからん… と思うemacs使い。vscとjetbrain系も使うけどvimは好んでは使わんのよね。
  • プロパティ

    概要 プロパティ(property:所有物、特性)とは、JavaC++にはない(Visual Basicにはある)機能で、 クラス外部から見るとメンバー変数のように振る舞い、 クラス内部から見るとメソッドのように振舞うものです。 JavaC++がこの機能を持ってないことからも分かると思いますが、 プロパティはオブジェクト指向言語に必須の機能ではありません。 しかし、これから説明していくように、あると便利なものです。 ポイント プロパティ: 中(実装側)からはメソッドのように扱え、外(利用側)からはメンバー変数のように見えるもの。 実装の隠蔽(カプセル化)の原則を崩すことなく、 アクセサー関数の煩雑さを解消。 プロパティとは 「実装の隠蔽」で、 メンバー変数はクラス外部から直接アクセス出来ないようにして、 オブジェクトの状態の変更はすべてメソッドを通して行うべきだと書きました。 これを忠

    プロパティ
    stealthinu
    stealthinu 2017/12/12
    C#系触ってなかったせいでプロパティとメンバー変数との違いを今の今までしらんかった。中から見るとメソッドだけど外から見ると変数に見えるのがプロパティなのか。
  • ニコニコ動画(く)リリース失敗に寄せて

    そういうわけなので今日は公開資料を中心にリリース失敗の技術的な要因を分析してみたいと思います。 Scalaにおける最適なDependency Injectionの方法を考察する 〜なぜドワンゴアカウントシステムの生産性は高いのか〜 - QiitaドワンゴアカウントシステムはScalaのコードだけで22万行を越え、ドワンゴ社内で最大のScalaリポジトリとして知られています。 ドワンゴのユーザーアカウント基盤は明らかに破綻しています。 10 年以上にわたり、ガラケー時代から今に至るまで多くの業務をコードに落としていくことは極めて難しい作業であったと思います。そうはいってもやってるうちに一回なんとか出来なかったのかとは思うわけです。やっている当人たちがテンションを上げているほどには開発効率が出ていない、むしろ足を引っ張っているという可能性はかなり高いと思います。 ニコニコ生放送におけるdock

    ニコニコ動画(く)リリース失敗に寄せて
    stealthinu
    stealthinu 2017/11/30
    なかなか難しいわな… でも技術の問題というよりも(コストも含めて)どこにリソースを振り向けるべきだったかというマネージメントの問題だった気がする。
  • できの悪いソースコードをAIで発見、富士通が不採算案件の抑制へ

    富士通人工知能AI)などを活用し、システム開発プロセスの改革に腰を入れ始めた。システム構築・運用支援のツール群を「KIWare(ケーアイウェア)」として体系化し、2017年11月に50件の開発プロジェクト格適用を開始した。時間を浪費しがちな開発業務をAIで効率化し、システムエンジニア(SE)が、開発業務の様々な作業や成果物の品質の向上に充てる時間を捻出する狙いである。 富士通AIの活用に腰を入れる背景には、開発プロジェクトの作業や成果物の品質の低さが課題になっていることがある。「品質を現場の人任せではなく、技術で底上げする。それによって品質が原因の不採算の案件を減らしたい」(富士通の粟津正輝サービステクノロジー部長代理 兼 先端技術統括部長 兼 SE変革推進室長代理)。 システム開発において、不採算案件につながる要因は様々だ。設計書の不備による手戻りが発生したり、ソー

    できの悪いソースコードをAIで発見、富士通が不採算案件の抑制へ
    stealthinu
    stealthinu 2017/11/29
    『ソースコードを画像化した上でディープラーニングで分析。ネスト構造が深いコメントが少ないといった可読性が悪いソースコードをAIが診断』画像で学習させたほうが効率いいかあ…?
  • エラーハンドリング

    注意: 最新版のドキュメントをご覧ください。この第1版ドキュメントは古くなっており、最新情報が反映されていません。リンク先のドキュメントが現在の Rust の最新のドキュメントです。 エラーハンドリング 他のほとんどのプログラミング言語と同様、Rustはプログラマに、ある決まった作法でエラーを扱うことを促します。 一般的にエラーハンドリングは、例外、もしくは、戻り値を使ったものの、大きく2つに分類されます。 Rustでは戻り値を使います。 この章では、Rustでのエラーハンドリングに関わる包括的な扱い方を提示しようと思います。 単にそれだけではなく、エラーハンドリングのやり方を、ひとつひとつ、順番に積み上げていきます。 こうすることで、全体がどう組み合わさっているのかの理解が進み、より実用的な知識が身につくでしょう。 もし素朴なやり方を用いたなら、Rustにおけるエラーハンドリングは、冗長

    stealthinu
    stealthinu 2017/11/20
    Rustのエラーハンドリングでは例外を使わないでOption型/Result型を使って返り値でやる方針になった理由について
  • ドラゴンボールZ ドッカンバトル | バンダイナムコエンターテインメント公式サイト

    AppleAppleのロゴは、米国およびその他の国で登録されたApple Inc.の商標です。App StoreはApple Inc.のサービスマークです。 Google Play および Google Play ロゴは、Google LLC の商標です。 ©バードスタジオ/集英社・東映アニメーション ©Bandai Namco Entertainment Inc. ※画面は開発中のものです。

    ドラゴンボールZ ドッカンバトル | バンダイナムコエンターテインメント公式サイト
    stealthinu
    stealthinu 2017/11/16
    大事になったからソースまで出して弁明することになった模様。orderついてないsqlで取ってくる順番は不定なのに順番になってる前提のコードになってたと。これこれまでも同バグあったのでは?
  • 絵文字を支える技術の紹介 - Qiita

    絵文字を扱う上で知っておくと良いかもしれないことをまとめてみました。 Ruiさんの記事を見て、「EmojiはSurrogate Pair以外にも、色々とおもしろい技術があるんですよ〜」思って書いてみました。 なお、書いた人はAndroidの人間なので、特に表記していない場合は主にAndroid上での動作のことを書いてます。 またQiita初めてなので読みにくい部分等がありましてもご容赦ください。 サロゲートペア(Surrogate Pairs) このエントリーを書くきっかけにもなったサロゲートペア。なぜこれが導入されたかの経緯は、Ruiさんのブログエントリーに譲るとして、技術的な解説をします。 サロゲートペアは、U+0000..U+FFFFに収まりきらなかった範囲のUnicodeコードポイント(U+10000..U+10FFFF)を、なんとか16bitでエンコードしようとして導入されました

    絵文字を支える技術の紹介 - Qiita
    stealthinu
    stealthinu 2017/11/16
    合成文字のあたりは新たな闇が生み出された感がほんと強いな…
  • md5 と sha1 の比較 - h-kageyuの日記

    ま、きっと sha1 の方が遅いのだろうけど、一応比較。 md5 は sha1 より古くて、既知の脆弱性あり。だけど速いと言われている。 sha1 は sha256 より古くて、既知の脆弱性あり。 : コードは以下のコードで loop.php というファイルです。 結果は md5 =21.559861898422msec sha1=26.158680915833msecやはり md5 の方が速かった。 一件辺りの時間はあまり変わらないが(そりゃそーか)、1.2倍ともなると積もり積もると明らかな差が出てくる。 一応 sha256 もやったので結果を見ておこう。 // SHA256 $mesc0 = microtime(true); for ($i = 0; $i < _COUNT; $i++) { hash('sha256', $c); } $mesc1 = microtime(true);

    md5 と sha1 の比較 - h-kageyuの日記
    stealthinu
    stealthinu 2017/11/14
    PHPのmd5とSHA256の計算コストの差。SHA256のほうが3倍強重い。
  • 絵文字がある種のUnicodeバグを世界から一掃しつつある件について|Rui Ueyama

    UnicodeのUTF-16エンコーディングではほとんどの文字(コードポイント)は2バイトで表現されるが、Unicodeに後から追加収録された文字の多くは4バイトで表現される。4バイト文字がうまく扱えないプログラムというのはわりとよくある。しかし世界中で広く使われるようになった絵文字がよりによって4バイト文字であるせいで、そのような文字が扱えない問題がよいペースで解決に向かいつつある。それについて少し説明してみようと思う。 Unicodeが80年代から90年代初頭にかけてデザインされたときの目標の一つは、Unicodeに含まれる文字数を65536個以内に収めることだった。現代の文章を実用的なレベルで表すためには、漢字などを含めてもそれだけの種類の文字があれば十分だと考えられたのだ。当然これは1文字を2バイトで表すことを念頭に置いていた。つまりコンピュータの揺籃期から当時に至るまで単純に英語

    絵文字がある種のUnicodeバグを世界から一掃しつつある件について|Rui Ueyama
    stealthinu
    stealthinu 2017/11/13
    なるほど今までUnicodeに追加された絵文字は糞と思ってたがこんなうれしい副作用が。
  • Linus Torvalds氏によるGitの内部構造の解説 - Qiita

    初めに LinusによるGitのinitial commitのREADMEの訳です。 社内のSVNからの移行を促すために資料を整備していたのですが、SVNでやっていたことを移し替えたりコマンドを覚えたりするより内部構造を知ったほうが早いことに気づきました。 それで、gitの内部構造についての解説資料を色々見ていたのですが、データ構造については原作者のこのREADMEに言い尽くされている気がします。のみならず、gitを使うものが抱くべき精神性のようなものが示されており、深い感銘を覚えました(ヒャッハー)。 README: ”GIT - 馬鹿コンテンツトラッカー” コミットメッセージ:git, 地獄からきたインフォメーションマネージャ gitの意味 "git" は何を意味することも出来る、お前の気分次第だ。 3文字で、発音可能で、実際のUNIXシステムで共通コマンドとして使われていないものであ

    Linus Torvalds氏によるGitの内部構造の解説 - Qiita
    stealthinu
    stealthinu 2017/11/07
    gitはデータ構造が全てということか。データ構造がよく練られてれば単純な仕組みでスケールする強いシステムが作れると。
  • Rubyのtrueとfalseの話 - Qiita

    この記事は、技術同人誌としてまとめるはずだった原稿をほぼそのまま転載しています。諸事情により向こうかなり長い間同人誌即売会に売り手として参加することが難しくなったためです。 長いですが、お楽しみいただければ幸いです。 まえがき このは、Rubyコミッタである卜部昌平に、そのである私、卜部一恵がRubyのtrueとfalseについて突っ込んで聞いてみた話です。文は両者の対話形式で進んでいきます。 私は昌平と同じ大学同じ研究室に所属していたのでプログラミングについての基礎は一応ありますが、エンジニアとして職を得たことはありません。つまり、プログラミング初級者です。このはそのくらいのレベル感のだと思います。 私自身が初級者なりにRubyを使っていて、if文が思った通りに動かない、そんなときに抱いた疑問からこのが生まれました。 同じような疑問を抱いている方の一助になれば幸いです。 は

    Rubyのtrueとfalseの話 - Qiita
    stealthinu
    stealthinu 2017/09/27
    これは理解が深まった。自分も宣言しないだけでBoolean型にあたるものがあるのだと思ってた。
  • [速報]Java 9が正式リリース、Javaをモジュール化するProject Jigsawがついに実現。今後のJavaは6カ月ごとタイムベースのアップデートへ

    [速報]Java 9が正式リリース、Javaをモジュール化するProject Jigsawがついに実現。今後のJavaは6カ月ごとタイムベースのアップデートへ 米オラクルは9月21日(日時間9月22日未明)、Javaの最新バージョンとなるJava 9正式版を公開しました。 Java 9 is Out!!!!#JDK9 #Java9 #Javahttps://t.co/VE7BI4KPlK pic.twitter.com/kOdNiLJ1ky — Java (@java) 2017年9月21日 Java 9最大の新機能は「Project Jigsaw」として開発されたJavaのモジュール化機能です。おそらくJavaの開発のなかでももっとも難産なプロジェクトだったといえるでしょう。 難産の末にProject Jigsawがついに実現 Javaをモジュール化して必要な部分だけを使えるようにする

    [速報]Java 9が正式リリース、Javaをモジュール化するProject Jigsawがついに実現。今後のJavaは6カ月ごとタイムベースのアップデートへ
    stealthinu
    stealthinu 2017/09/22
    もうJava9か。なんかJava7以降は流れが早いな。
  • C2A0文字コードはUTF-8の半角スペース | ホームページ制作のサカエン Developer's Blog

    C2A0文字コードはUTF-8の半角スペースのことです。 とある案件で、データベース上に文字化けした値があったので、テキストに貼り付けてみるとスペースにしか見えませんでした。 スペースにしか見えないと思いつつ、文字化けする以上は何かあるだろうと文字コードを確認してみると、あれ? C2A0 と出ましたね。 むむむ、半角スペースは 20 のはずだが C2A0 とはこれいかに・・? ここでは C2A0文字コードについて解説 します。 Sponsored Links 調べていくと、どうやら C2A0 は UTF-8 の半角スペース というか NO-BREAK SPACE(ノーブレークスペース) というもので、HTMLでいう アンパサンド と同様の特殊文字でした。 文字通りそこでは改行しないスペースという意味で、通常の半角スペースとは別物です。 利用者に問い合わせたところ、どうやらどこかのサイトから

    C2A0文字コードはUTF-8の半角スペース | ホームページ制作のサカエン Developer's Blog
    stealthinu
    stealthinu 2017/09/21
    C2A0問題。「&nbsp;」は半角スペースの「20」じゃなく「C2A0」という別の文字コードになるのでぱっとみ同じでも違うデータになってしまう。
  • "--name <SPC> value" style options considered harmful for end-user scripting. - hkoba blog

    追記20170914朝JST: 以下の議論では簡単のため --name value に話を絞り -o VALUE 形式への言及を省略したが、後者においても辞書が必要となる点は変わらない。自明とは思うが念の為… 20170914昼JST: タイトルtypo 修正 >< ストーリー 以前あなたはプログラム A を書いた。それは職場で同僚たちが日々使用している。今のバージョンにはオプションが 5 個ほどある。オプションは今後も増え続けるだろう。 同僚たちも、あなた程ではないが、省力化のための簡単なスクリプト程度は好んで書く人たちである。 あなたの書いた A は、同僚の書いたスクリプト B(それは例えば日々の仕事を定期実行するためのバッチや、よく渡すオプションを予めまとめたラッパースクリプトである)から呼び出されるようになった。 同僚のスクリプト B を起動する時に、そこからあなたの A へ、いつ

    "--name <SPC> value" style options considered harmful for end-user scripting. - hkoba blog
    stealthinu
    stealthinu 2017/09/20
    似たスクリプトがどんどん作られ得る環境でのオプションの指定方法について。-name valueではなく-name=value形式のが良いと。こんな問題は考えたことも無かったがなるほどだった。
  • プログラマをクソコードで殴り続けると死ぬ - megamouthの葬列

    ここにクソコードがある。 誰が作ったかはわからぬ。それが、どのような経緯でクソコードとなったのか、 あるいは、最初からクソコードであったのか、それらは全てクソコード自身が知るのみである。 ファーストコンタクト ある日、営業からシステム案件を打診されたので見積もりして欲しい。というメールが来る。 とある企業の既存システムに機能を追加する簡単な案件ですが、なななんとソースや仕様書をご支給いただけます! と、それはサンタにプレゼントが貰えると信じて疑わぬ子供のような真っ直ぐなメールである。 ソースコードが入った圧縮ファイルを受け取ったプログラマは、早速、コードを読んでみる。 そのシステムが当にいいコードで書かれているかを判断するには時間がかかるが、 クソコードであるかはおおよそ30分でわかる。 インデントがタブとスペースどちらかに統一されていないとか、フレームワークの誤用があるとか、またはフレ

    プログラマをクソコードで殴り続けると死ぬ - megamouthの葬列
    stealthinu
    stealthinu 2017/08/01
    すっごいよくわかるわ… 小さな修正だから費用も出ないもんで、そうなると根本的変更はできずそのコードに合わせて修正するしかない。つまりクソコードの上に小さなクソを足すことになる。
  • Analyzing github, how developers change programming languages over time

    Analyzing github, how developers change programming languages over time By Machine Learning Team / 12 July 2017 Have you ever been struggling with an nth obscure project, thinking : “I could do the job with this language but why not switch to another one which would be more enjoyable to work with” ? In his awesome blog post : The eigenvector of “Why we moved from language X to language Y”, Erik Be

    Analyzing github, how developers change programming languages over time
    stealthinu
    stealthinu 2017/07/20
    2000年以降のプログラミング言語のシェア。最近は何がメジャーというのはなく多様な言語が使われる時代になってる。Javaがまだ伸びててPHPが維持、Rubyが減りつつあるのが意外だった。
  • 非推奨だった bool 型に対するインクリメント演算子を削除 - cpprefjp C++日本語リファレンス

    概要 C++17ではbool型に対する前置および後置のoperator ++を削除する。 bool型に対する前置および後置のoperator ++とはC++98の時点で非推奨になっていた機能である。 具体的にどのような働きをするのかというと、以下のように値をtrueに書き換える機能をもつ。 #include <iostream> int main() { bool b = false; const bool b1 = ++b; std::cout << std::boolalpha << b1 << std::endl; // => true const bool b2 = ++b; std::cout << std::boolalpha << b2 << std::endl; // => true }

    stealthinu
    stealthinu 2017/07/17
    『これに起因するバグで少なくとも6つの過度の放射線被曝事故を引き起こし3人が死亡した例がある』『条件変数を非0にする(=trueにする)ために、インクリメントを使っていた』うげー/この件はアセンブラとのこと
  • ロールプレイングゲーム - @m_seki の

    ここでは私が実践している、ちょっと良いプログラマになるためのコツを紹介します。まるで「理想のプログラマ」のように仕事をするための簡単なアイデアです。チームでプログラミングするお仕事に就かれているみなさんが、このアイデアで昨日よりも気分よく過ごせるようになれば幸いです。 多くの達人が「理想のプログラマ」とはどういうものか、よいプログラマのあるべき姿、立ち振る舞いを説いてきました。おそらく、みなさんも達人たちが理想のプログラマについて書いた文章を読まれたのではないでしょうか。そして達人たちの示す理想のプログラマ像を想像してそんな人物になろうとしましたよね。みなさんは実際にそうなれたでしょうか。その振る舞いを実践するのはちょっと難しかったりしませんでしたか。 「理想のプログラマ」といった「理想の何か」になるために、来の自分を変えて別な自分になる必要があります。しかし変身は痛みを伴うものです。

    ロールプレイングゲーム - @m_seki の
    stealthinu
    stealthinu 2017/06/13
    『「理想のプログラマ」の役を演じる』なるほど。意識してみる。