タグ

ProgrammingとITに関するHeavyFeatherのブックマーク (22)

  • IT系勉強会に参加する人が実践すべき10のこと | Act as Professional

    イベントの定義を事前に理解する 大きく分けて、イベントには2つのタイプがあると感じています。この2つのタイプを理解して、十分な準備をしてイベントにのぞみましょう。 講師から講義を受けて、知識を “教えてもらう” スタイル 特定のテーマに沿って、ディスカッションや手を動かして “学びあう” スタイル 告知ページやメーリングリスト、Twitterなどで雰囲気はつかめます。過去の開催情報も公開している勉強会も多いので、それを確認するのが一番確実でしょう。 教えもらうスタイル 「○○入門」といった感じの勉強会が多いタイプです。何も知らないところから、色々と手ほどきを受けて、使い始めてみるきっかけをつかむタイプの勉強会です。ですが、限られた時間で、限られたことをするので、体系的に知識を得られるケースはまれです。 よって、講義を受けたからといって満足してしまってはいけません。実際に自分で手を動かして、

    IT系勉強会に参加する人が実践すべき10のこと | Act as Professional
  • 渋谷女子高生に直撃☆COBOLの意味わかりますか?/Tech総研

    SE・ソースコード・バグ・Java etc……、特にITエンジニアであれば普段の日常会話で頻繁に使用するこれらの言葉は、果たして世の女性たちにどこまで通用するのか? 第1回目は、渋谷を歩く女子高生に直撃質問してみた。 技術とは縁遠い女性たちとの会話で、ついつい無意識に使ってしまいがちなエンジニア専門用語。果たして彼女たちはそうした専門用語をどこまで理解してくれるものなのか? それを検討するべく、街頭インタビューを敢行。質問した用語は、COBOL、C++、オブジェクト指向のような難易度の高いものから、SE、クライアントなど一般常識の範囲で答えられるものまで合計16ワード。実験方法は、実際に街で無作為に女性を選出し、「この中で意味のわかる用語はありますか?」「この用語を使って例文を作ってください」などの質問方法で専門用語に対する一般女性の理解度を追求した。

    HeavyFeather
    HeavyFeather 2011/05/02
    熱い企画だな。。
  • Javaで覚えるIT技術者の40の常識 - @IT

    ~新人プログラマ/SEは覚えておきたい“まとめ”~ @IT編集部 2011/3/24 このページは、開発者/プログラマが、以下のような項目に関して、常識的な基礎知識を学ぶための記事リンクのまとめです。 デスクトップなどの見た目に関する3つの常識 プログラミング・コーディングに関する6つの常識 ネットワーク/通信に関する9つの常識 セキュリティに関する3つの常識 データとファイルに関する5つの常識 設計・アーキテクチャに関する6つの常識 ソフトウェアの品質管理に関する3つの常識 業務アプリに関する5つの常識 Java SE(旧、J2SE)のコアAPIやJSP/サーブレット+StrutsのWebアプリケーション開発、JBossやその他のJavaオープンソースソフトウェアのサンプルコードや使い方を通じて、さまざまな“常識”を学習する以下の連載の記事に、基礎知識のカテゴリごとに分けてリンクしていま

  • プログラマーの成長を考えないSIerの仮説は間違っている - 達人プログラマーを目指して

    Java EEや.NETCOBOLやVB6よりも当に生産性が高いか? - 達人プログラマーを目指してのコメントで 熟練者も居ることは理解しているが、開発をする上で熟練者ばかりを集めることはできない。このため初心者側にレベルを合わせざるを得ない。 というコメントをいただきましたけれど、これは実に典型的なSIer(の上司)の考え方ですね。SIerの仮説と呼んでもよいくらいですね。とにかく、この仮説の前提となっているのは プログラマーのスキルレベルは一定で成長しない プログラマーは容易に交換可能なリソースである プログラマーは単純労働者である というモデルです。とにかく、この仮説がはびこっているから、いまだにSIerのフレームワークは「初心者側にレベルを合わせざるを得ない」という思い込みで作られていることが多いのでしょう。 COBOL(の初期の)時代ならまだしも、少なくとも現在の開発環境にお

    プログラマーの成長を考えないSIerの仮説は間違っている - 達人プログラマーを目指して
  • 南米発のツールがIT業界に与えるインパクト

    「プログラマはもう要らない」。大手物流会社のシステム子会社で新技術の社内展開を進めるマネージャーはこう言い切る。ここでいうプログラマとは、企業情報システムの開発プロジェクトでプログラムを作成する担当者を指す。ある開発ツールを検証したところ、こうした役割の要員は不要との結論に至ったというのだ。 このマネージャーは記者に対して、ツールを導入した場合の効果をこう語る。「様々な開発言語を知っていて、バグのないソースコードを24時間、延々と高速で書き続ける。そんなスーパープログラマを雇ったのと同じ効果が得られる」。 同社が検証したのは「GeneXus(ジェネクサス)」という開発ツールである。ご存知の方はまだ多くないかもしれない。一口に言えば、アプリケーションの自動生成ツールである。データ項目や画面、業務ルールといった設計情報をGeneXusの表記法で入力すると、ソースコードとテーブル定義情報を自動生

    南米発のツールがIT業界に与えるインパクト
  • 私がソフトウェア技術者をやめた理由 - Rails で行こう!

    昨日、 人生の転機 - Rails で行こう! の中で「ソフトウェア作りが嫌いだ」と言い切ってしまったことが引っかかっている。 私の職業生活でもっとも多くの時間を注いだのがソフトウェア作りだ。その作業に対して、実際のところ、好きとか嫌いとか一言で割り切れるはずがない。複雑な感情を持っているというのが正直なところだ。 私の職業プログラマのとしての最大の欠点は、ソースコードに対して強い美意識を持たずにいられなかったところだろう。生来の生真面目な性格が災いし、私の基準で美しいとはいえないソースコードを敵視しすぎた。 簡単な例を挙げよう。 うるう年を計算するアルゴリズムを考えてみる。うるう年とは、「4で割り切れて、かつ100で割り切れない年。ただし、400で割り切れたら、やはりうるう年」である。 def leap_year?(y) (y % 4 == 0) && ((y % 100 != 0) |

    私がソフトウェア技術者をやめた理由 - Rails で行こう!
  • 東京大学理学部情報科学科のパンフレットがすごい

    先日の「ぜひ押さえておきたいコンピューターサイエンスの教科書」というエントリでは、東京大学理学部情報科学科の講義で使われていた教科書を中心に紹介しました。では、実際の授業の様子はどうなのでしょうか? タイミングの良いことに、情報科学科のカリキュラムのパンフレットがウェブで公開されています。 東京大学理学部 情報科学科 パンフレット かなりの力作で感動しました。なにせ今まで外向けの色気があまりにない学科だったので。。。 (苦笑) 理学部情報科学科と工学系の学科との一番の違いは、パンフレットにもありますが、コンピューターの原理や理論的背景も押さえ(ここが重要)かつ最先端の技術やモノも作り上げていくところでしょうか。そんな雰囲気を、カリキュラムや実際の講義・演習の様子、教授陣のメッセージなどから、感じ取ってもらえることと思います。 一点だけ補足。このパンフレットには普通の学科紹介でよく見かける卒

    東京大学理学部情報科学科のパンフレットがすごい
  • ぜひ押さえておきたいコンピューターサイエンスの教科書

    僕はバイオインフォマティクスという生物と情報の融合分野で研究を行っています。東大の理学部情報科学科にいた頃は同僚のマニアックな知識に驚かされたものですが、そのような計算機専門の世界から一歩外に出ると、それが非常に希有な環境だったことに気が付きました。外の世界では、メモリとディスクの違いから、オートマトン、計算量の概念など、コンピューターサイエンスの基礎知識はあまり知られていませんでした。コンピューターサイエンスを学び始めたばかりの生物系の人と話をしているうちに、僕が学部時代に受けた教育のうち、彼らに欠けている知識についても具体的にわかるようになってきました。 バイオインフォマティクスに限らず、今後コンピュータを専門としていない人がコンピューターサイエンスについて学ぶ機会はますます多くなると思われます。そこで、これからコンピューターサイエンスを学ぼうとする人の手助けとなるように、基礎となる参

  • すべてのプログラマが知っておくべき97のこと

    あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。

    すべてのプログラマが知っておくべき97のこと
  • 速報:グーグルが新言語「Noop」を公開。JavaVMで動作

    グーグルが新プログラミング言語「Noop」を公開しました。Noopは新旧のプログラミング言語からいいとこ取りをした、JavaVMで動作するプログラミング言語と説明されています。 Noopは、サン・マイクロシステムズで開催中の「JVM Language Summit」で、グーグルの2人のエンジニア、Alex Eagle氏とJérémie Lenfant-Engelmann氏によって発表されました。 すでにJVM Language Summitでの発表資料がPDFとして公開されており、その資料には、Noopのミッションが次のように説明されています。 Noop's mission Help teams develop software that is easier to understand and maintain. Noopのミッション 分かりやすくメンテナンスしやすいソフトウェアのチーム開

    速報:グーグルが新言語「Noop」を公開。JavaVMで動作
  • Q.電球を変えるのに、SE/PGが何人必要か - SiroKuro Page

    答え 約2000人月 開発の流れ 要件定義 顧客の発注を受ける 1次請け、要件定義書の執筆を始める 1次請け、顧客と交渉し、家の中に繋がっている家電製品を全て調べ上げる 一次請け、基設計実施要領の執筆を始める 基設計 この工程は、2次請け以下には秘密裏に行われている 詳細設計 1次請け、詳細設計実施要領の執筆を始める 1次請け、だいたいこのあたりで2次請けへと乾坤一擲 2次請け、使用する規格やフレームワークなどの部品を選定開始 詳細設計書の執筆がスタート、電球の大きさや重さ、丸み、光度、味、匂いなどを定義する このあたりで、既に5次請けくらいまで仕事が割り振られている 製造 1次請け、製造工程実施要領の執筆を始める 1次請け、単体テスト実施要領の執筆を始まる 5次請け、電球フィラメントのくるくるを手で作成しはじめる 4次請け、求める匂いが上手く出せないと3次請けに駄々をこねる 3次請け

    Q.電球を変えるのに、SE/PGが何人必要か - SiroKuro Page
  • 独自の手法で10倍速開発 7割主義で変化対応力を高める

    良品計画は独自の開発手法を採用することで、システム開発の短期化とコスト削減を図った。2006年12月に再構築したMD(マーチャンダイジング)システムを皮切りに、08年12月までに約130のアプリケーションを社内で開発。一方で、IT 投資の売上高比率は04年の1.8%から0.9%に半減させた。「7割主義」と「スピード対応」を方針に掲げ、利用部門の要望に最速1日、遅くとも1~2週間で対応する。開発手法の独創性と、経営に資するシステム部門の姿が評価された。 「無印良品」ブランドの小売店を展開する良品計画は、1週間に1という猛スピードで新しいアプリケーションを開発したり、機能を強化したりしている。「思い立ったら即実行。合格最低ラインの7割主義で素早くシステムを開発し、検証と改善を繰り返す」。IT戦略を統括する小森孝取締役 情報システム担当部長兼流通推進担当管掌は強調する。 同社は独自の開発方法論

    独自の手法で10倍速開発 7割主義で変化対応力を高める
  • 「測定できないものは制御できない」は誤りだった。-- by Tom Demarco:An Agile Way:オルタナティブ・ブログ

    ソフトウェア工学の祖の一人である、トム・デマルコが、最近IEEE Software 誌に、過去のソフトウェア・メトリクス賛美を悔い改める記事を書いている。 「ソフトウェア工学」というコンセプト-その時が来た、そして、その時は去った。http://www2.computer.org/portal/web/computingnow/0709/whatsnew/software-r 1982年に、デマルコは有名な「計測できないものは制御できない」という一文から始まる、『品質と生産性を重視したソフトウェア開発プロジェクト技法』という名著を書いている。このドグマは、ソフトウェア工学の考え方に強く根ざしている。むしろ、すべての「工学」という活動は、科学や経験から得た知見を使って自然現象をコントロールし、人間の役に立てることをその定義としており、そこでは測定を元にしたコントロールという概念はその中核にあ

    「測定できないものは制御できない」は誤りだった。-- by Tom Demarco:An Agile Way:オルタナティブ・ブログ
  • Perl で Win32::API プログラミング入門 - 竹迫の近況報告

    ActivePerl (Windows版) には Win32::API - Perl Win32 API Import Facility - metacpan.org が付属しているので、今日からすぐに Win32::API を利用したプログラミングが出来ます。 簡単なメッセージボックスを表示するPerlプログラムは以下になります。 #!/usr/bin/perl use Win32::API; my $MessageBox = Win32::API->new("user32", "MessageBoxA", "NPPN", "N"); $MessageBox->Call(0, "Hello, World!\n", "Message", 0); このプログラム実行すると、「Hello, World!」と書かれたWindowsメッセージボックスが表示されます。 これを Win32::API

    Perl で Win32::API プログラミング入門 - 竹迫の近況報告
  • 画面設計とか外部設計とか、もうやめようよ - masayang's diary

    昨日は特徴(Feature)、粗筋(Story)、脚(Scenario)でちょいと言及した「Feature, Story, Scenarioがごっちゃになりかけている」プロジェクトの人達とお話しする機会があった。 よくよく見ると、FeatureとFunctionとがごっちゃになっていた。 つまり、要件分析の段階で実装のことを考えていたのである。 なぜ、そうなったのだろう? 画面から要件分析をすると、こうなる どうやら要件分析する前の段階で「コンサルタント」の人達が、画面を使ってお客さんと「要件定義」をしていたらしい。 「この画面でこういうデータを入力すると、こんな画面に遷移します」みたいなやりとりがあったのだろう。 紙芝居感覚で交渉できるからわかりやすい。 だけど、先に画面を決めちゃうというのはいくつかの(そして時に致命的な)問題を抱えている。 実装をフィーチャとして捉える可能性。 例え

    画面設計とか外部設計とか、もうやめようよ - masayang's diary
  • そろそろ例のプロジェクトについて言及するか - 西尾泰和のはてなダイアリー

    以前、とあるシステムのソースコードを読む機会があったのだけどあまりにひどかった。あのひどいコードでまあまあまともに動いているというのが逆に信じられない。今日昼ご飯をべながら少し話していたのだけど意外と知られていないようなので、話せる範囲でいかにひどいのか説明してみようと思う。 まず、ソースコードが大雑把に見積もって3750万行あるのだけど、その中でまともに機能しているコードは3%しかない。10分の1程度のソースコードで同程度の機能を実現しているシステムもあるのでほんとあのシステムのコードはゴミだと言っても過言じゃない(*1) プログラマとしてはなんでそのプロジェクトはそんな状態になってしまったのか気になるところだけども、まあ多くのプロジェクト同様、真相を知る人は誰もいない。でもまあ、実際に機能しているコードのコピーみたいなものがあちこちに散らばっていることからしてコピー&ペーストが盛んに

    そろそろ例のプロジェクトについて言及するか - 西尾泰和のはてなダイアリー
  • FF(16進数の掛け算)を覚えよう - やねうらおブログ(移転しました)

    最近、あるプログラマと話していて気づいたのだけど、彼は16進数の2桁と1桁との掛け算(FDh×5とか)が出来ない。やり方自体を知らないのだ。彼はWindowsの電卓を立ち上げて計算していた。 そのときは「プログラマでなくともこんなこと知ってて当然だろ!」と思ったのだけど、その後、10人ぐらいのプログラマに出来るかどうか聞いてみたが誰も出来ない。 結局、「普通は出来ない」のだと私は理解した。しかし16進数の掛け算はそんなに難しくない。私が子供のころには、まわりにFF(1×1=1に始まって、F×F=E1まで)を丸暗記している人がいっぱいいた。情報教育の一環として中学か高校で教えても計算の仕方ぐらい教えればいいのになぁと思っている。 前置きが長くなったが、以下にやり方などを書いておく。 ■ 16進数に馴染もう 16進数では、A = 10 , B = 11 , C = 12 , D = 13 ,

    FF(16進数の掛け算)を覚えよう - やねうらおブログ(移転しました)
  • 年末年始くらいしか読める気がしない2008年のコンピュータ書この5冊 - 『このコンピュータ書がすごい! 2009年版』最新情報 - compbookグループ

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    年末年始くらいしか読める気がしない2008年のコンピュータ書この5冊 - 『このコンピュータ書がすごい! 2009年版』最新情報 - compbookグループ
  • SEとPG、どっちが頭がいい?(2):下流から見たIT業界:エンジニアライフ

    刺戟的な題名で続けます。 前回は日独特のSE/PGの分業体制がどのようにして発生したのか、ということを説明しました。それは日にソフトウェア開発が産業として根付いたときに、PGが単純作業労働者と位置付けられてしまったため、上級技術者を区別する言葉が必要とされた、それがSE(システムエンジニア)だというものでした。 ●C言語@UNIXでは COBOLの開発ではSE作業とPG作業がきちんと分けられていると思われがちですが、これも前回述べたとおり実際には形式だけのものになっていました。これはタイムシェアリング端末の普及によってプログラミング作業が格段に効率化されたからでした。プログラミングに残っていた煩雑な手作業の部分が省力化されたのです。 この事情はBasicやC言語でも同じことです。1980年代後半、わたしは最初の会社を辞め、パソコンの開発をするようになりました。現場では、技術者はそれぞれ

    SEとPG、どっちが頭がいい?(2):下流から見たIT業界:エンジニアライフ
  • 『コピー指向プログラミング』

    以前、「簡単コピー・プログラミングの罠」という記事で、コピー・プログラミングの危険性について書いた。ここでいうコピー・プログラミングとは、同じアプリケーション開発の中で、似た機能を量産するためにソースコードをコピーすることである。同記事には書いていないが、他にも、「バグがコピーされてしまう」問題や、ソースコードが無駄に大きくなるなどの問題もある。 そもそも、プログラミングでは「同じことを何度も書く」ということは避けるべきだ。その理由をあらためてここに書く必要もないだろう。同じことを何度も書かずに済ませるにはどうするか、ということは、構造化プログラミングからオブジェクト指向やアスペクト指向に至るまで、プログラミング技術の発展における重要な課題のひとつだったはずだ。 アプリケーションに固有の「業務ロジック(ビジネスロジック)」なども、開発プロジェクト内で共通化を行い、重複コードをなくすのが理想

    『コピー指向プログラミング』