CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
精度95%以上! ソースコードは指紋、作者はほぼ特定できる2015.02.11 19:0010,327 ほぼドンピシャでバレバレです。 スペースやタブ、大文字やアンダーバーを組み合わせた命名規則、コメント…コードの書き方には、人によってスタイルがありますよね。それはもう指紋のようなもので、それさえ見えれば、誰がコードを書いたかほとんどわかってしまう…そんな驚きの研究結果が発表されました。 米ドレクセル大学、メリーランド大学、プリンストン大学、独ゲッティンゲン大学の共同チームの研究によると、自然言語処理と機械学習によるコード分析により、95%の精度で作者は特定できるそうです。 解析されるのは、レイアウトや語彙の特性と、「抽象構文木(AST)」です。ASTとは、「コードの書き方からまったく影響を受けずに、コードの型の特性をとらえる」もので、つまり、関数の名前、コメント、スペース入れ方などのクセ
Photo by Linux Screenshots こんにちは。谷口です。 エンジニアの皆さんは、プログラミングをする際にどんなフォントを使用していますか? 「特にこだわりないからデフォルトのまま」という方も多いとは思いますが、プログラミング中は大量の文字を読んだり書いたりし続けるわけですから、なるべく可読性が高くてストレスが少なく、また自分の気に入ったフォントを見つけた方がよいのではないでしょうか。 そこで今回は、エンジニアの皆さんにお勧めの、プログラミングに最適な無料フォントを11個ご紹介いたします。 ■どういうフォントが見やすいの? フォントには、セリフ体というものとサンセリフ体というものがあります。 セリフとは、文字の線の端につけられる「ひげ」のような、線・飾りのことを言います。 例えば、上の図でいいますと、上のフォント(MS明朝)がセリフ体、下のフォント(MSゴシック)がサンセ
「PHPがdisられる時代は終わった~っ! いくぜおまえら~!」「PHP!」「PHP!」(PHPはこの後一回戦で敗退しました) さる2015年1月29日。横浜大さん橋ホールで行われたエンジニア勉強会イベント「CROSS 2015」にて「第一回 プログラム言語対抗綱引き」が行われた。 コンピュータの世界を支えるプログラム言語がその至高性を競い腕力でぶつかる、言語間戦争に決着をつける大会である。 40人の勇者(プログラマー)により死闘を繰り広げたのはC、Perl、PHP、Python、Ruby、JavaScript、Go、Java。 結果、Goの圧倒的勝利で幕を閉じたのだった。あらためて本記事でその全貌をレポートしていこう。 知ってた? 綱引きの掛け声の「オーエス」ってあれ、「OS(オペレーションシステム)」のことなんだぜ? 英語版もご用意しております! English article↓↓↓
プロのプログラマーになりたいなら、コードを書けるだけでは足りません。チームでの問題解決やバージョン管理など、コーディング以外にも身につけるべき重要なスキルがいくつもあります。今回は、米Lifehacker読者のみなさまの声をもとに、プロの開発者として必要不可欠なスキルとは何かを見ていきます。 コードを学ぶための情報は世の中に溢れています。そのせいか、プログラミング言語さえ習得すれば、プロの開発者になれると思い込む人がたくさんいます。しかし、他の職業と同じく、優れたプロフェッショナルになるには、たった1つのスキルで足りるはずがありません。開発者に必要なスキルをここですべて列挙することはできませんが、以下に、本当に重要なスキルをいくつか紹介しておきます。 コミュニケーションを学ぶ プログラマーは孤高の職人である、と喧伝するメディアもありますが、実際は、他者とのコミュニケーションや共同作業が欠か
まずはProgateへアクセスしてアカウントを作成。私はTwitterで認証しました。 現在学べる言語は HTML & CSS PHP jQuery の3言語の基礎部分。 とりあえずHTML & CSSをやってみましょう。 学習の流れ 学習の流れは3ステップ。 スライドで基礎知識を学習 ブラウザ上のエディタにコードを書いて実際に学習 プレビュー画面で実際に挙動を確認→答え合わせ といった感じです。 スライド スライドは非常に丁寧な作りとなっておりますので、よく読みこめば初心者でもしっかりと理解をしながら学習することが出来ます。 矢印キーでページ送りができるのがCool。 1レッスンにつき数枚のスライドが表示されますので、見終わったらエディタ画面へとGO! エディタ画面 こちらがブラウザ上で動作するエディタ画面。左側が問題文、真ん中がエディタ、右側がプレビュー画面となります。 もう一度スライ
メソッド名などをネーミングする際に、知っておくと便利な、接頭辞と接尾辞をリストアップしてみました。どのように元の単語の意味が変わるかのルールを知っておくと、よく使う単語をベースにボキャブラリーを増やすことができるので、覚えておいて損はないと思います。 使う場合は、当たりを付けて実際の使用がないか、Googleなどで調べてみてください。 1. pre-, post- / 事前〜、事後〜 per-は、元の意味に “事前に、前に”、post-は “事後に”という意味が付け加わえます。汎用性が高いのでとても便利です。afterやbeforeの代替になるかもしれません。 // 事前テストする function testBefore(); ↓ function pretest(); // 事後処理する function executeAfter(); ↓ function postexecute();
Codeacademyと比べると現在は「HTML」「PHP」「jQuery」の3つのコースしかありませんが、日本語の画面で基本的なHTMLやPHP、jQueryの学習を無料で行うことができます。 「Progate」を開発しているのは東大工学部の学生2人。既にEast Venturesからの支援も受けているようで、まさに「Codeacademy(コードアカデミー)」のエピソードと重なる部分も。(参考:THE BRIDGE) 資料を見るだけでなく、実際に手を動かす演習形式プログラムの学習は手を動かさないと覚えないという点がありますが、「Progate」は知識を得るためのスライド学習後に演習として実際にコードを書くように構成されています。この点がまさに「Codeacademy(コードアカデミー)」と同じ部分。 初心者の方には「Progate」での学習は効果的な部分は多そうです。コンテンツのレベル
部屋のゴミを自動で吸い込んでお掃除してくれるロボット「ルンバ600シリーズ」をベースに開発されたお掃除しないロボット「iRobot Create 2」の発売が開始されました。iRobot Create 2はルンバ600シリーズからお掃除機能を取り除き、ユーザー自身がプログラミングで動き・音・光り方などを設定可能な研究・教育・趣味向けのロボットプラットフォームです。 iRobot-Create 2 http://www.irobot.com/About-iRobot/STEM/Create-2.aspx iRobot Create 2がどのような製品かは下記のムービーから確認できます。 iRobot Create 2: An Updated, Hackable Roomba - YouTube これがiRobot Create 2。 iRobot Create 2の同梱品はバッテリー・充電用
誰もが、プログラマになる資質を持っているわけではありません。もちろん、誰でもプログラミングを学ぶことはできますが、プログラム方法を学ぶことと、それを自分のキャリアにすることとは違います。コーディングの才能を持った人でも、職業プログラマには不適格であるということは、間違いなく起こり得ます。奇妙に思われるでしょうが、あなた方が思っている以上に、これは真実なのです。私は、コンピュータサイエンスの学位をとるために10年以上を費やし、その間、これこそが自分の進むべき道だと思っていましたが、結局そうではなかったことに気づきました。それは、プログラミングのワークフローや、それにまつわるさまざまな挑戦を楽しんでいる人を見てわかりました。 プログラマになるということは、コーディング作業をするだけではありません。全体像をよく考えないといけないのです。もし、自分がプログラマに向いているか確信がないのであれば、正
(あんま多くないみたいだから多分すぐ身バレしそうだけど書く) エンジニアの面接で実際にコードを書かせる会社が最近は多いみたいだね。でもウチでは特に面接で書かせない。というか今まで書いてきた、関わってきたコードなんて書類で大体分かるでしょ? それよりも、ウチではコードレビューをさせてる。 選考用にわざと少し突っ込みドコロの多いコード(30〜50行程度のコードを3〜4ファイル)を渡して、もちろんファイル構成自体へのレビューも含めて、どんな意見をその人が出せるかを問う。 レビュー用のコードは複数言語用意してて、一番得意な言語を選んでもらってる。 時間は1時間。資料と赤ペン、そしてネットに繫がったパソコンを渡して、いくらでもググってもらって構わない環境でレビューを紙に赤して貰う。 「コードレビュー」ってものに対しての認識だとか、コードを管理するための能力もある程度分かるし、すごく良い選考制度だと思
IT/Webエンジニア向け転職サイト「paiza」(パイザ)を運営するギノが、24のプログラミング言語に対応した無料オンライン実行環境「paiza.io」(パイザ・アイオー)のβ版をリリースした。 ブラウザ上でコードを書き、その場で実行できる。Java、Ruby、Python、PHP、Perlなど主要24言語に対応し、少しだけ他言語に触れたい時、初心者に教える時など、環境構築の手間を省くのに最適とうたう。 ファイルアップ機能や外部ネットワークへの接続にも対応し、外部APIの利用やスクレイピングもできる。Twitterとの連携機能もあり、指定の文言から始まるメッセージをツイートすると実行結果がリプライとして送られる。 基本的な利用は無料だが、実行コードの完全非公開機能やプログラム起動時間の延長などの一部機能、法人利用などは有料化する予定。 関連記事 求人案件から見るプログラミング言語別給与ラ
Raspberry Piを使って簡単に組み立てられる小型PC「Kano」は、独自のOS「Kano OS」を採用し、プログラミングを「Minecraft」などのゲームを通して学習できる学習キットで、Kickstarterで1億円以上の資金を集めることに成功した大人気プロダクトです。そのKanoがGIGAZINE編集部に到着したので早速組み立てて「ゲーム感覚プログラミング」を試してみました。 Kano - Make a Computer http://www.kano.me/ ◆開封 Kanoのパッケージは明るいオレンジ色。 このかわいいキャラは「Kano」君。 裏面もこんな感じのイラスト。 箱をスライドさせるとやはりかわいいイラストが描かれたダンボール箱が出てきました。 裏面まで凝ったデザイン。 ダンボール箱を開けるとKanoのキット一式が登場。 中身を全部並べるとこんな感じ。 これがKan
英Kano Computingは10月7日(現地時間)、「Raspberry Pi」ベースのPC組み立てキット「Kano」を発売した。価格は149.99ドルで、日本からも購入できる。 同社は昨年11月、米Kickstarterでプロジェクトを立ち上げ、10万ドルの資金を獲得。製品版は今年7月の発売を目標としていた。Kanoという名前と柔道着のキャラクターは、“柔道の父”嘉納 治五郎にインスパイアされたものという。 コアな対象ユーザーは6~14歳だが、大人でもPCの組み立てとプログラミングの学習を楽しめるだろう。 KanoのキットはRaspberry Piのボード、ケース、USBキーボード、スピーカー、Wi-Fiモジュール、USBケーブル、HDMIケーブルと、Linuxベースの独自OS「Kano OS」とソフトウェアを収録したSDカード、2冊のカラフルなマニュアルで構成される。別途必要なのは
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く