タグ

ブックマーク / xtech.nikkei.com (15)

  • Pythonでいろんなアプリを作ろう

    Pythonには豊富なライブラリが用意されているため、様々なアプリケーションを比較的手軽に作成できる。この特集では4種類のアプリ作成に必要な基礎を解説する。 出典:日経ソフトウエア、2024年5月号 pp.6-33 「PythonでWeb iPhone ゲーム 生成AIアプリを作ろう!」を改題、編集 記事は執筆時の情報に基づいており、現在では異なる場合があります。 第4回 Pythonで生成AIアプリを作ろう、APIの利用で画像生成に挑戦 ChatGPTを開発する米OpenAIは、ChatGPTのベースとなっているAIモデルをAPIで公開しています。第4回では、WebベースのPythonプログラミング環境である「Google Colaboratory」を使って、OpenAIAPIにアクセスする方法を説明します。 2024.05.30 第3回 Pythonならゲーム開発も簡単、「もぐらキャ

    Pythonでいろんなアプリを作ろう
  • TCP/IPの後継技術になるか、常識を破る「QUIC」と「ICN」の衝撃

    アプリケーションの高度化やデータ通信量の増加に対応するため、TCP/IP(Transmission Control Protocol/Internet Protocol)の後継となる技術の検討も始まっている。その代表格が「QUIC」というプロトコルだ。TCPに取って代わる可能性があるとして注目されている。 QUICは、米グーグルが自社のWebサービスで大量のアクセスを高速に処理するために開発した独自プロトコルをベースにしている。同社はこのプロトコルを2015年にIETF(Internet Engineering Task Force)へ提出。その後、TLS(Transport Layer Security)の機能を取り込み、HTTP以外にも使えるようにするなどの変更を加えて標準化へと至った。 UDPでTCP相当の信頼性を確保 QUICの主な特徴は、「TCPと同等の再送制御や輻輳制御を備える

    TCP/IPの後継技術になるか、常識を破る「QUIC」と「ICN」の衝撃
  • Wiresharkでできないことができる、パケット解析×プログラミング

    新型コロナウイルス禍で企業ネットワークの姿が変わってきています。ネットワーク管理にも変化に対応した手法が求められています。この特集ではネットワークを流れるパケットをキャプチャーして収集し、Pythonとリレーショナルデータベースを用いて精度よく解析するための実践的なテクニックを紹介します。第2回はパケット解析のツールとしてよく使われる「Wireshark」で「できる」こと、「できない」ことを通してパケットキャプチャーにプログラミングを導入する背景やその考え方を解説します。 パケット解析をする際によく使われる「Wireshark」をご存じでしょうか。オープンソースソフトウエア(OSS)として現在も活発に開発が続けられています。もはや業界標準と言っても差し支えないポピュラーなツールです。パケットキャプチャーの参考書などでは必ずと言っていいほど取り上げられており、Wiresharkの使い方がパケ

    Wiresharkでできないことができる、パケット解析×プログラミング
  • AndroidアプリがLinuxで動作、Chromeで動かせるプラグイン提供

    Google社は2015年4月1日、ChromeブラウザーやChrome OS向けのソフトウエア「ARC Welder」を公開した。ARC Welderは、ChromeブラウザーやChrome OS上でAndroidアプリを動作させるためのプラグイン。動かないアプリも多いが、正常に動作したアプリは快適に使えた。 オープンソースのコミュニティーによって多くのLinuxフリーソフトが開発されているが、日語環境ではうまく使えないというものも少なくない。一方、スマートフォンアプリなら日人に向けた便利なものが数多く開発されている。 米Google社が2015年4月1日に公開した「ARC Welder」は、便利なAndroidアプリをChromeブラウザーやChrome OS上で動作させるためのソフトだ。ChromeブラウザーはLinuxWindowsMac向けに提供されており、そのブラウ

    AndroidアプリがLinuxで動作、Chromeで動かせるプラグイン提供
    gmdualis479
    gmdualis479 2015/06/25
    “ARC Welder”
  • Unity、UE4…ゲーム開発環境にも“無料化”の波

    この3月、「Unity」「Unreal Engine 4(UE4)」という2つのゲーム開発環境/ゲームエンジンが相次いで“無料化”されました。それぞれに利用条件はありますが、これらを使ったゲーム作りを始めようと思っている個人やチーム、企業にとっては、導入のハードルが一気に下がります。どちらも、ある程度の開発をGUIベースで行えたり、ゲーム制作用の素材(キャラクター、音声、背景など)を「アセット」として入手できる仕組みを用意したりと、格的なゲームを容易に制作できる開発環境として人気を博しているものです。無料で使えるとなれば、ますます利用者の裾野は広がるでしょう。 従来の“Pro相当”になった「Unity 5」の無料版 米Unity Technologiesは3月4日、Unityの最新バージョン「Unity 5」を公開しました。有料の「Professional Edition」と、無料の「P

    Unity、UE4…ゲーム開発環境にも“無料化”の波
  • 質問:マネジャーを続けるかエンジニアに戻るかで葛藤しています

    チームのリーダーとしてマネジメントを任されるようになりました。自分としては一エンジニアとして頑張りたいという思いもあり、このままマネジャーを続けるかエンジニアに戻るかで葛藤しています。藤さんのご意見をいただければ幸いです。 まず最初に大事なことは、いわゆるチームマネジメントは決して片手間でできるようなものでも、やっていいものでもない、ということです。なので、結論を先に書いてしまうと、葛藤している暇があったら早めにどちらか決めてしまいましょう。まぁ言うのは簡単なんですけどね。 ものすごく単純な例えですが、エンジニアとして10台のサーバーで一つのタスクを分散処理したり一つのシステムを動かしたりするのと、マネジャーとして10人のチームメンバーを一つのゴールに向かってまとめ上げて走り続けることの、どちらが簡単でしょうか? 前者を簡単と言うつもりは全くありませんが(前者も十分に難しいことが多いので

    質問:マネジャーを続けるかエンジニアに戻るかで葛藤しています
  • あなたの行動をビッグデータはどれだけ記録できているか、履歴は「ほんの一部」にすぎない

    ビッグデータが話題になっている。米国でバラク・オバマ氏が大統領選挙に勝利したのも、その背景にはビッグデータの活用があったという。 膨大なデータを集めて、それらを分析することで成果を得るというアプローチは非常に正統派で、有効な方法論である。ただ、ビッグデータをビジネスに活用するという観点から考えると、様々な誤解があるように思えてならない。 話題のビッグデータとて、決して万能なわけではない。安易にビッグデータを礼賛するだけではなく、イノベーションを起こすためには、ビッグデータをどう活用すべきなのか、また限界があるとすればどういった部分なのかを真剣に考え理解しておく必要があるだろう。 一方で、私の専門分野である「行動観察」という方法論にも注目が集まっている。 行動観察とは、観察の対象者と一緒に過ごすことで、その人の行動をつぶさにウオッチし、様々な事実や気づき(ファインディング)を集めたうえで、

    あなたの行動をビッグデータはどれだけ記録できているか、履歴は「ほんの一部」にすぎない
  • 「マネジメントを売り歩く人」が自分をマネジメントできない理由

    予めお断りしておくが、今回の一文には片仮名表記が多い。マネジメントの話だからである。管理と訳しても経営と訳しても座りが悪いので、片仮名表記のままにする。 ただしマネジメントの定義は必要である。色々なとらえ方があろうが「人を活かして成果を挙げること」にする。成果は出たものの、担当者は疲れてしまい成長できなかった。失敗したが、その一件を反面教師に人は育った。いずれもマネジメントされたとは言い難い。 人を活かして成果を挙げるためには人と人が協力する必要があり、それには情報が欠かせない。マネジメントに、見える化とか情報共有がついて回るのはそのためだ。 しかし情報が欠かせないとはいえ、情報システムやIT(情報技術)の分野でマネジメントと言う言葉は使われ過ぎである。以前書いた気がしてきたので手短にするが、サプライチェーンマネジメントやカスタマーリレーションシップマネジメントあるいはヒューマンキャピタル

    「マネジメントを売り歩く人」が自分をマネジメントできない理由
  • プロジェクトマネジャーが真っ先にやるべきこと

    前回はプロジェクト質は「不確実性」にあるということと、不確実性を乗りこなすには三つのアプローチがあるということを説明しました。今回は、三つのアプローチのうち、どれから始めるべきなのかについて、関連するツールや思考の必要性と併せて解説します。 プロジェクトマネジメントの前提 プロジェクト計画を立てる際に、一般的に最も重要視されるのが、WBS(WorkBreakdown Structure)です(図1)。WBSとは、プロジェクト全体を作業や成果物といった要素で細かく分解した構成図のことです(より詳しく知りたい人は、ITproの連載記事「WBSがプロジェクトとあなたを変える」などを参照してみてください)。 ここで、あるケースを考えてみましょう。新製品を開発するに当たり、ソフトウエアを一新することになりました。新しい技術を採用し、これまでになかった機能を搭載した製品にしなければなりません。市場

    プロジェクトマネジャーが真っ先にやるべきこと
  • あなたは「人育て上手」? 23項目でチェック

    人育てには、もってこいの環境だな---。こんな感想を抱きながら、話題を集めたNHKの連続テレビ小説「あまちゃん」を観ていた。 何しろこのドラマは、人がわさわさ出てくるシーンが多い。年齢も職業も異なる様々な人が集まり、時に深刻な話をしたりバカ騒ぎをしていたりする。こうした「賑やかさ」の中で揉まれながら、主人公は何かをつかんだり、他の人に影響を与えたりしながら成長していく。 職場の一人ひとりの意識が「人育て」の場を作る 「賑やかな職場」は、人を育てる環境になる。人材教育コンサルタントの田中淳子氏がITproに連載した「若手育成ワンポイントレッスン」にそんな話が出てくる。 電話のやりとりがおかしいと思えば、すぐさま近くにいる先輩が注意する。間違ったことをすると、すぐ周囲の誰かが叱る。わからないことがあれば、周囲の誰かに聞けば、親切に(そして厳しく)教えてくれる。このように、誰もが「よってたかって

    あなたは「人育て上手」? 23項目でチェック
  • Haskell使いの高頻度取引の会社にお邪魔した

    先日、日経コンピュータ特集記事の取材で東京都内の某所にある「Tsuru Capital」という、高頻度取引(HFT、High-Frequency Trading)を手掛ける企業のオフィスにお邪魔した。 HFTというのは、プログラムによって株式などの金融商品を数ms(ミリ秒)から数μs(マイクロ秒)で高速に自動取引すること。自己資金で取引する「プロップファーム(proprietary trading firm)」と呼ばれる企業が中心で、米GETCO(2013年7月に米Knight Capitalと合併)などが有名だ。 HFTを行うプロップファームの多くは、米国など海外に拠点を置いており、Tsuru Capitalのように日国内に拠点を置く企業は珍しい。株式売買では、海外企業であっても国内の証券会社と契約し、自社の取引プログラムをその証券会社のサーバーに配置すれば日市場でのHFTは行える。

    Haskell使いの高頻度取引の会社にお邪魔した
  • どの仕事でも成長できる思考術(2)「仕事で成長する人」の頭の中

    この連載では、「仕事で成長するための思考術」を扱っている。前回は、「成長するために絶えず学ぶべきことを仕事に見出す」が必要であること、「成長するために大きな要素になるのは人の行動特性」であることを説明した。 また、筆者が考える「成長を阻害するダメな行動特性」には10の種類があり、これを改善することが「仕事で成長する」につながることも説明した。「成長できない10のネガティブ特性」は次の通りである。 「成長できない10のネガティブ特性」 考えない、悩まない、思考停止 動かない、実行しない、立ち尽くす 柔軟性がない、頑固である 発信できない、働きかけない、共有できない 人の話を聞かない、傾聴できない 自分位、思い遣りがない、人間音痴 想像力がない、発想が貧困である 目標がない、目的がない、夢がない 計画性がない、段取りが悪い 状況を把握できない、どの位置にいるのか分からない 「人が仕事で成長で

    どの仕事でも成長できる思考術(2)「仕事で成長する人」の頭の中
  • HadoopとRDBとのつながりを考える

    連載の第3回は、Hadoop周辺プロダクトの紹介を中心に、HadoopとRDBMSとのつながりを解説し、スムーズなデータの移行手段について検討する。 RDBMS(リレーショナルデータベース管理システム)は、非常に多くのITシステムでデータの保存に利用されている。RDBMS以外のデータベース製品が選択されるのは例外的ケースであるという印象を受けるほどだ。トランザクション処理によりデータの一貫性を強力に保持できること、歴史が長く完成度の高い実装が多数存在すること、結果として多くの技術者がRDBのデータモデルとそのインタフェースであるSQLになじみがあることなどがその理由であろう。 ただし、高い一貫性を提供するRDBMSは、サーバーサイドでの処理量が多く、処理を並列化してスケールアウトを図ることが難しい。そのため、扱えるデータの規模を大きくしようとすると、高価なハードウエアを用意する必要に迫ら

    HadoopとRDBとのつながりを考える
  • iPhoneアプリをRubyで開発できる、「MobiRuby」のソースコードが公開

    図2●増井氏がMobiRubyを用いて開発したゲームアプリの画面例。既にAppStoreで「MobiRuby」の名前で公開されている iOS向けのアプリをRubyで開発可能にするソフトウエア「MobiRuby」がリリースされた。開発者の増井雄一郎氏が、Github上でソースコードを公開した。併せて同氏は、2012年9月14日に札幌で開催された「札幌Ruby会議2012」で講演し、MobiRubyについて解説した(同氏の講演資料)。 増井氏は2012年3月よりMobiRubyの開発に着手し、約半年で公開にこぎ着けた。現在はアルファ版の段階だが、2013年第一四半期までに正式版(ver.1)を公開する予定である。MobiRubyはC言語で実装してあり、コード量は約3000行という。まつもとゆきひろ氏らが開発した軽量版のRuby「mruby」を用いている(関連記事)。 Objective-CとR

    iPhoneアプリをRubyで開発できる、「MobiRuby」のソースコードが公開
  • スマホアプリの開発はマルチOSで

    スマートフォンのアプリケーション開発には様々な方法がある。どれを選ぶかは、利用したいアプリケーションの機能によって変わる。ユーザー企業からアプリケーションの開発を受注するベンダーにとっても、条件は同じである。 まず決めなくてはならないのがスマートフォン上で動くネイティブアプリケーションを作るか、Webアプリケーションにするかだ。現状では、「アプリケーションのパフォーマンスを上げやすい」「操作性の高いUIが作りやすい」「通信圏外でも利用できる」といった利点を評価して、ネイティブアプリケーションの開発に力を入れている企業が多い。以下でネイティブアプリケーションの開発手法を中心に見ていこう。 OS個別かマルチ対応か スマートフォンのネイティブアプリケーション開発には、OS固有の開発言語を使う手法と、マルチプラットフォーム対応のアプリケーション開発ツールを利用する手法の二つがある。OS固有の開発言

    スマホアプリの開発はマルチOSで
  • 1