言語処理100本ノックは,実践的な課題に取り組みながら,プログラミング,データ分析,研究のスキルを楽しく習得することを目指した問題集です 実用的でワクワクするような題材を厳選しました 言語処理に加えて,統計や機械学習などの周辺分野にも親しめます 研究やデータ分析の進め方,作法,スキルを修得できます 問題を解くのに必要なデータ・コーパスを配布しています 言語はPythonを想定していますが,他の言語にも対応しています
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは! マーケティングソリューションカンパニー(MSC)開発本部の小川雄大です。 昨年11月に子会社のクロコスからヤフーに移りまして、現在はヤフーで開発を行っています。みなさまどうぞよろしくお願いします。 MSC開発本部では、ヤフーが世界最強を目指してどう取り組んでいくかについて議論する会を毎週開催しています。今回はそこで今年の1月に僕が発表した「世界最強のソフトウェアアーキテクト」について公開したいと思います。 今回はヤフーに入ってはじめての発表ということもありテーマをどうしていくかはかなり悩んだ部分なのですが、テクニックよりもアーキテクトが持つべきマインドを共有することが次につなげていく上で大切になると考えたので、多少抽
2019/1/1追記:メンテの気力もなくなり、でもサーバー代はかかっており・・・という状況なのでクローズしました 1週間ほどブログの更新をサボっていたんですが、何をしていたかというと新しいWebサービス作ってました。 作ったもの http://www.programmerprofile.net/ ソースも公開しちゃうよ! nakazye/ProgrammerProfile · GitHub 何コレ? プログラマーのツイッターアカウントを言語毎に並べ立てるサービスです。コンセプトだったり作ったきっかけだったり諸々あるんですが、それは正式リリース時にとっておきます(Topに書いてある通り、まだα版の位置づけ) 趣味プログラミングのススメ ここからが本題。 デザインが酷いとか、コードが投げやりとか、色々意見はあるかと思うんですが、一応動いてます。 コレ、2/1(日)の23時から開発始めたので、休
世の中に流布している「プログラマー35年定年説」は、大きく以下の3つに分類できる。 プログラマーは激務なので、35歳を過ぎると体力低下のために続けられなくなる(体力低下説) プログラマーは常に新しい情報を吸収しなければならないが、35歳を超えると脳の働きが低下して新しいことを覚えられなくなるために続けられなくなる(学習能力低下説) プログラマーは35歳を超えると開発ではない業務を求められるようになるので、技術職としてのプログラマーのキャリアが途絶える(マネージメント原因説) 以下、ひとつずつ検証していく。 体力低下説 まず1つ目の「体力低下説」だが、これについてはそれほど深く考る必要がなさそうに思える。周知の通り気力や体力には個体差があり、若くても元気がないひともいれば歳をとっても元気なひともいる。また、35歳あたりの体力低下の原因としては、単純な加齢というよりも生活習慣の要因の方が大きそ
多くの関数型プログラミングに関する記事が教えてくれるのは、抽象的な関数型のテクニックです。つまり関数合成やパイプライン、高階関数などです。この記事では違います。ここでは、プログラマが毎日書く、命令型で非関数型のコードの例を示し、それを関数型の形式へ書き換えます。 最初のセクションでは、短いデータ変換のループを取り上げ、map関数やreduce関数に書き換えていきます。2つ目のセクションではより長いループを取り上げ、ユニットに分解し、それぞれのユニットを関数型に書き換えます。3つ目のセクションでは、連続した長いデータ変換のループを関数型のパイプラインに分解します。 ここではPythonでの例を取り扱います。というのも多くのプログラマはPythonを読むのは簡単だと思っているからです。多くの例では、mapやreduce、パイプラインなどの多くの言語に共通する機能を例示するため、Python的な
最近の開発って宗教っぽくない? 今のプログラム開発の現場を見て「コンピュータの動作原理を知らない人が作っている」と感じているという。川上氏は、CPUや帯域などの理論から検証するが、今のエンジニアは、実験で計測して原理まで遡らない。川上氏はこれを「宗教的」とコメントした。 アジャイルとか、スクラムとかいろんな方法がありますよね。もちろん方法的には効果があるんでしょうが、ちょっと宗教っぽいなあと。どこが宗教っぽいかというと、宗教の人って、批判すると怒り出すんです(笑)。 自分が考えたり、おこなった結果よりも、誰かがやった結果に頼るエンジニアが増えていると警告する川上氏。最近会った人から得たという、半導体業界の話を披露した。 半導体って過去40年間のムーアの法則で進歩してきた。それで何か生み出したかという問の答えが「膨大な数の二流のエンジニア」なんだそうです。すぐれた回路設計や性能に注入するより
私はこの7年半、 Ronimo でプログラミングを学ぶ多くのインターン生を指導し、様々なタイプの大学生や大学院生を見てきました。彼らのほとんどには、共通して言える学ぶべきことがあります。特別なテクニック、アルゴリズム、数学、あるいは特定の形式についての話だと思う人もいるかもしれません。もちろんそれも必要ですが、中心的なものではないと私は考えます。彼らが主軸として学ぶ必要があるのは、自己統制力です。常に可能な限り読みやすいコードを書き、開発中の変更により秩序がなくなってきた時にはきちんとリファクタリングを行い、使用されていないコードを除去し、コメントを追加することができるという力です。 プログラミングのインターン生を指導する際、この話にほとんどの時間をかけます。上級のテクニックでもなければエンジンの詳細についてでもなく、概ね彼らにより良いコードを書かせることに主眼を置きます。いつもインターン
スタートアップ界隈でのRuby on Rails利用率は割と高く感じる。 みんなが使っているから使う?それだけではないはず。なぜ使うのだろう。 railsの特徴を考える。 規約縛りの哲学 周辺gemのエコシステム webの進化への追従の速さ 規約縛りの哲学 Convention over Configurationてやつ。規約を決めて、それに沿えば、フレームワークに乗って素早く開発できるようになる。規約で縛ることでRailsに流れる哲学に従うことを強制化している。 外れると痛い目を見る。Railsに乗るということは電車に乗って簡単に遠くまで行けるということ。Railsから降りるということは電車からも降りるようなものだ。中途半端な理解で突き進むと線路からすぐに降りて歩くことになる。 スタートアップでRailsが採用される一番の理由は、 簡単に遠くまで行ける だと思う。ただ、そんなにうまい話は
Photo by ITU Pictures こんにちは。谷口です。 プログラミング初心者の方々、プログラミングを学びたい方々は、普段どのような方法で学習をしていますか? 最近は、Web上でコーディングができるサイトや、プログラミングを学習できる動画コンテンツなど、独学での勉強に役立つサービスが増えてきました。そこで今回は、初心者でも独学でプログラミングの基礎を楽しく学べるサービスを11件ご紹介いたします。 ■初心者でもプログラミングして実行できる!学習サイト ◆1.Codecademy http://www.codecademy.com/learn 学習可能言語:HTML/CSS、Ruby、Python、PHP、JavaScript、jQuery 対応言語:英語(一部日本語) 料金:無料 Codecademyは、実行環境を構築しなくても、書いたコードを実行できます。サインインすると実際にW
Sublime、Vim、Emacs、AtomなどにIntelliSense機能を追加する「OmniSharp」、マイクロソフトがデモ Sublime TextやVim、Emacsなど既存のテキストエディタに対して、マイクロソフトのVisual Studioが備えているIntelliSense機能を追加できるオープンソースソフトウェア「OmniSharp」のデモが、日本マイクロソフトが1月16日に開催したイベント「GoAzure」の基調講演で披露されました。 OmniSharpのデモを行ったのは、米マイクロソフト Principal Program ManagerのScott Hanselman氏。.NET CoreがオープンソースとなってMacOS XやLinuxに移植され、C#も使えるようになることを紹介した上で、「MacやLinuxでのソースコード修正は手間だ、IntelliSense
「駅すぱあと」を支える開発 〜9262の可能性を繋げ!〜(DevLOVE関西Ver) というイベントが開催された。 ぼくも会場係としてスタッフ参加。 「駅すぱあと」の歴史から技術、開発のマネジメント手法に至るまで、幅広い話が聞ける良いイベントだった。 いろいろな話が聞けたのだけれど、僕は特に佐藤さんの「『駅すぱあと』新しい開発基盤の研究」がおもしろかった。 まだ開発途中で、実際の駅すぱあとには組み込まれていないそうなのだけれど、佐藤さんは「駅すぱあと」の運賃計算のDSLを研究・開発しているという。 曰く、鉄道の運賃計算は泥沼である。単純に距離や、目的地までの駅数などで運賃が算出できればよいが、鉄道の運賃計算には無数の特例がある。 下記リンク先に、JRの運賃の特例計算が列挙されているので、ちょっと見ていただきたい。 ……お分かりいただけただろうか。現在の「駅すぱあと」では、これらの特例がすべ
メソッド名などをネーミングする際に、知っておくと便利な、接頭辞と接尾辞をリストアップしてみました。どのように元の単語の意味が変わるかのルールを知っておくと、よく使う単語をベースにボキャブラリーを増やすことができるので、覚えておいて損はないと思います。 使う場合は、当たりを付けて実際の使用がないか、Googleなどで調べてみてください。 1. pre-, post- / 事前〜、事後〜 per-は、元の意味に “事前に、前に”、post-は “事後に”という意味が付け加わえます。汎用性が高いのでとても便利です。afterやbeforeの代替になるかもしれません。 // 事前テストする function testBefore(); ↓ function pretest(); // 事後処理する function executeAfter(); ↓ function postexecute();
祭りじゃ!祭りじゃ!! 今回は、今のプロジェクトであったお祭りの話でもしようかな〜と思うわけである。 なんのお祭りかというと、「パフォーマンス問題祭り」なのであった。 よくある話といえばよくある話。単体テスト・結合テストあたりまでは問題にならなかった性能が、実際のマスタデータ投入時や、トランザクションデータボリュームになった途端、とってもパフォーマンス的に悲しいものになったプログラムが出てきたわけで・・・ で、いつものように、気が付けばそのお祭り対応のど真ん中にいるハメになり、日々トレースデータと向き合うことになった。 ということで、基本的な話ばかりかと思うが、ちょっとアドオン作成時のパフォーマンス考慮ポイントを備忘として残しておこうかなあ、というのが、今回の企画である。 ざっくりポイント パフォチューのポイントとしては、大雑把に以下3点となる。 設計の方針 SQL関連 内部テーブル関連
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く