福ちゃんの駄文

Loading...

calendar

S M T W T F S
 123456
78910111213
14151617181920
21222324252627
28293031   
<< October 2018 >>

categories

archives

スポンサーサイト

0
    記事を表示する 記事を非表示にする

    一定期間更新がないため広告を表示しています

    • 2018.08.22 Wednesday
    • -
    • -
    • -
    • -
    • -
    • by スポンサードリンク

    Java初心者が考えたファイルの読み書き方法~某講義の試問回答例~

    0
      記事を表示する 記事を非表示にする

      大学のある講義でJavaプログラミングの勉強をするものがありまして、その講義では毎週いくつかの「試問」が出題されていました。

      試問といっても「テキストファイルを読み込み、そのまま別のテキストファイルに出力するプログラムを作る」とか簡単なものでしたが、これがプログラミング初心者には結構大変なものでした。この記事では、(後学の参考になるかは不明ですが)その試問に対する私の回答例を掲載したいと思います。

       

      なお、当然ですがこの回答例は大学および担当教授などが一切関わったものではなく、初心者がたどたどしく書いた回答例の1つに過ぎません。したがってここに示す回答にはいくつかの間違いがあるかもしれませんし、試問の模範解答として示されるものでは全くないことにご注意ください。

       

      以下に示す全コードはGithubで公開中です。実際に動かして試すなどする場合はあらかじめローカルに落としておいてください。

      https://github.com/ia15076/deshopuro

       

      開発には講義中に紹介されたIDEであるeclipseを使用しています。その他、動作には以下のものが必要です。

      • Maven
      • (OpenClの動作環境;CUDA Toolkitなど)
      • (Lombok)

      OpenCLはAparapiを動かすのに使いますが、学部推奨PCはGPUを積んでいないので不要かもしれません(JTPモードで動作はするはず)。またLombokも、使ってるんだから一応eclipseに入れとこうってだけであって今回のコードを動かすだけなら不要かもしれません。面倒ならLombokのアノテーションは消しちゃってください。

       

      ***

      試問4

       

      「あるディレクトリ以下の全テキストファイルを読み込み、内容をコンソールと他ファイルに出力する」

       

       

      テキストファイルを読み込んでそのまま書き出すだけのシンプルな課題ですが、Javaの場合ファイルを読み込むというだけのことにも古い方法、かつては新しかった方法、今新しい方法と色々な方法があってどれを選べば良いのか分り辛いです。もちろん新しい方法のほうが良いに決まっているのですが…

      今回は、「まずファイルパスを受け取って、そのファイルの内容を読み込んで返すTCPサーバを作り、次にソケット通信でそのサーバとやり取りするクライアントを作る」という方法で行きましょう。

       

      まずはサーバ側です。

      比較的最近(Java7)に追加された、nio2のAsynchronousServerSocketChannelを使います。

      29行目のacceptがCompletionHandlerでクライアントから通信があったときの処理を登録している部分、48行目の#accepted(InetSocketAddress)メソッドがその実際の処理を書いている部分です。

       

      次にクライアント側です。

      こちらもAsynchronousSocketChannelを使っています。#readBytes(InetSocketAddress)が実際にサーバと通信している部分です。

      こちらのメインメソッドを走らせれば、./file/read/にある全ファイルを読み込み、./file/write/にそのまま書き出してくれるはずです。

       

      ***

      試問5

      「単一のファイルを書き込む・読み込むメソッドを作る」

       

      書き込む文字列をString型の引数に受け取ってテキストファイルに書き込むメソッドを作れという課題ですが、テキストファイルへの書き込みというのは簡単に見えて意外に難しい作業です。

      講義中に解説された通り、コンピュータが扱えるのは数字だけであって文字そのものを扱うことはできません。したがって普通に文字列が書いてあるように見えるテキストファイルも…

      実際のところは「文字コード」の羅列であって、中身はこうなっています。

      とはいえ、Javaは内部的にはUTF-16という文字コード体系を使っており、かつString#codePoints()という便利なメソッドもあるのでUTF-16のテキストファイルを作るならそれほど難しい変換は必要ありません。

      したがって今回は、「引数で受け取ったStringをUnicodeコードポイントの配列に変換し、これをGPUを用いた演算でバイト配列にエンコード、先頭にUTF-16LEのBOMを付けてテキストファイルに書き出すメソッドを作る」という方法で行きました。

       

      実際の実装はこうです。

      追加でコンストラクタを使うという課題要件もあったので、ファイルを読み込む際のバッファサイズを表すメンバ変数を適当に作ってコンストラクタで代入できるようにしておきました。

      #write(Path,String)で行っているエンコード作業ではAparapiを使ってGPUに働かせています。

       

      ***

      試問6

      「ファイル出力時に行が指定以上の大きさの行のみ出力する」

       

      今までテキストファイルの入出力を行うプログラムを作ってきましたが、この出力時に「各行の文字列の大きさが指定以上かどうか」のチェックをかけて、指定以上の大きさの行のみ出力するようにしよう、という課題です。要は小さい行を削除したテキストファイルを書き出すことになります。

      行の大きさチェックというと各行ごとに文字数をカウントするのが良さそうに思えますが、これにはString#length()を1回呼び出すという極めて複雑かつ困難な手順が必要なので他の方法を考えました。

      今回は「各行の文字列をモールス信号のwavファイルとして出力し、このwavファイルの大きさで行の大きさを判定、大きさが指定以上の行を別のテキストファイルに出力する」という方法で行きます。

       

      先にモールス信号の書き出しを行うクラスを作りました。実装はこうです。

      入力文を一文字ずつ符号に変換して短形波で書き出しています。

      アルファベットとモールス信号の符号の対応については、モールス符号一覧表 - JR7IBWを参考にさせて頂きました。

       

      試しに「ago no pose」という音声を書き出してみた例です。

      https://soundcloud.com/user-236115439/ago-no-pose

      後はこれを使って各行の文字列のモールス信号を音声ファイルに書き出し、ファイルサイズからその行を出力したりしなかったりする処理を書くだけです。このように実装しました。

      ***

      いかがでしたでしょうか?Java初心者ですので至らない点も多数あったかと思いますが、なんとか試問の要件を満たした実装をすることができたかと思います。

      Java上級者の方で何か気になることなどありましたらぜひコメントなどでご指導のほどよろしくお願いします。

       

      では、今日のところはこの辺でノシ


      新しいノートPCを買ったら初回起動でWindowsが壊れた。(その2)

      0
        記事を表示する 記事を非表示にする

        前回の続き。

        新学期始まってすぐに画面裏の骨組が折れたノートPC。しかしこの時、ノートPCがどうしても必要な用事のいくつかが一週間後に迫っていました。

        こう壊れては買い替えは止む無し。新機種は必要最低限の性能と安さをとってMSIのエントリーモデル(GL62M-7REX-1857JP)に決定し、通販で購入。しかし配送に少々時間がかかったので到着はギリギリで、例の用事の前日でした。

        でもまあ、間に合ったことには間に合ったんです!さっさと例の用事に備えて大学ライセンスのOfficeなどを入れましょう!

        しかしWindows10にはいくつかの罠があることを、私は忘れていました。

        初回セットアップでWi-Fiの設定を行ってしまったばかりか、アカウントの設定をMicrosoftアカウントとリンクさせてしまう痛恨のミス(Users¥以下のユーザーフォルダ名がおかしくなるので勧められない)。インターネットに繋げてしまったおかげで更新プログラムまで降ってくるし、それのインストールも始めてしまう有様。

         

        特に更新プログラムのインストールを始めてしまったのが、今思えば一番の悪手でした。

         

         

         

         

        いや、

        初回起動の更新で壊れるなんて普通思いもよらないとは思いますが。

         

         

         

         

        壊れた。Windowsが壊れた。具体的にはUWPアプリが起動できなくなる感じで壊れた。

         

        といっても見た目的には普通に動作しているので最初は何が起こっているかよく分からなかった。

        しかし初回起動後に「とりあえず背景でも変えてみるか」と思って「個人用設定」を開こうとしても反応がないことから気づいた。

         

        とりあえず解決方法を調べようと思ってEdgeを起動しようとする。

        Edgeが一瞬開いて、真っ白な画面のまますぐに閉じる。何度繰り返しても同じ。

         

        これって…更新中に強制シャットダウンとかしたら出る症状?強制シャットダウンなんてした覚えはありませんが、更新が正常に終わらなかったんでしょうか?

        とりあえず古いほうのノートPCで修復ツールを落としてきて実行してみたり、DISMで治らないか試してみましたが改善は見られず。

        しかしこれはどうせ新品のノートPCです。特に失われるデータがあるわけでなし、最後の手段として初期化してしまえば良いでしょう。

         

        …初期化のため「設定」を開こうとしますが開きません(これって微妙に欠陥では?)。

         

        最後の手段のための最後の手段として、コマンドプロンプトを起動してshutdown /r /oでWindowsREに入ろうとしますが、コマンドプロンプトも起動しません。これって詰んだのでは?(後で知ったのですが、Shiftキー押しながらスタートメニューで「再起動」でWinREに入れるようです。この時点では知りませんでした)

         

        しかしここで、コマンドプロンプトは起動しないのにPowerShellは起動することに気づきます。さすがPowerShell!PCをミュートする以外でもいろんなところで役に立つぜ!

        コマンドプロンプトはダメでPowerShellは行ける理由はさっぱり分かりませんが、とにかくこちらでshutdown /r /oしてWinREに入り、初期化を試みます。

        しかし、初期化を試みたことも、今思えば悪手でした。

         

         

         

         

        いや、

        初期化したら悪化するなんて普通思わんよね。

        ね?

         

         

         

         

        初期化後、最初のセットアップは日本語のローカライゼーションのためのデータが読み込めなかったのか、日本語と英語が入り乱れた妙な表示に。コルタナは日本語で話しており「次へ」ボタンなども日本語だが、利用規約など一部は英語でカオス。

        まあ表示が変でもセットアップは完了させられましたが、やはり設定などは開けず、その上非常に動作が遅くなり、スタートメニューの表示もおかしい(右側にある「ニュース」などが出ない)状態。

         

         

        薄々気づいてました。これってもうMediaCreationToolでWindowsのインストールメディアを作ってそれで再インストールするしか無いんじゃないかって。

        しかし新しいPCにディスクドライブはありませんから、インストールメディアにはUSBメモリを使わなければなりません。

        しかしその時ちょうど、8GB以上の容量があるUSBメモリに持ち合わせがありませんでした。

         

        明日に迫る用事に焦った私は3回目の悪手。

        再度の初期化。

        そして死にました。

         

         

         

         

         

         

         

        翌日。

         

        私「それじゃあ進捗報告です…すみません画面ガッタガタで押さえてないと…あっバッテリーも怪しいので電源繋ぎますねちょっと待ってください」

        教授「どうしてそうなったの」

        私「ヒンジに遊びがありまして」

        教授「だからってそうはならんやろ」

        私「なっとるやろがい!」

         

         

         

         

         

         

        では、今日のところはこの辺でノシ


        新しいノートPCを買ったら初回起動でWindowsが壊れた。(その1)

        0
          記事を表示する 記事を非表示にする

          確かに、買って割と早く(半年くらい?)から折り畳みに遊びがあるというかふわっふわというかガタガタしてきたなーとは思ってました。そのガタガタが3年かけて徐々に大きくなってるなーとも思ってましたし、画面が僅かに浮いてることに気付いたこともありましたが。

          ボス「だからってそうはならんやろ」

          私「なっとるやろがい!」

           

          これはiiyamaの15GSX7100-i7-VGB。生協推奨PCなど買ってやるものかと思い大学入学を機に購入したBTOノートパソコンで、今までの3年間、業務用dynabookに甘んじる学友を殴り倒すのに大活躍してきました。

          実際に殴り倒すのにも有用そうな重さと授業中にも轟音で回りだすファン、そしてディスプレイ下に輝くiiyamaのロゴはこの情報学部にあっても強烈な個性を発揮し、業務用dynabookのみならず数々のLet's noteやWindows入りMacBookを葬り去ってきたわけです。

          ライバルはせいぜいMSI Ghost Pro 4K。そのMSIを持つ友人との多くを巻き込んだ争いは21世紀静岡の最終戦争と呼ばれ、彼と和解するまでの数か月間戦いの舞台となった情報学部2号館は焼け野原となり、僅かに生き永らえた人々は後にこの地をメギドの丘と呼ぶことになって、これがかの黙示録におけるハルマゲドンの由来となったことは誰もが知る話(※この記事は多少の誇張表現を含んでいます)ですが、しかしその別れは突然に訪れます。

           

          画面が浮き始めてからの破壊の進行は速く、それから数日のうちにディスプレイ裏の骨組(?)が完全に折れて写真のような状態に。ディスプレイの左側だけがヒンジに繋がっていないので開くのも折り畳むのも大変となって、少なくとも「ノート」パソコンの用は成さない有様。しかしそのノートパソコンを使ってPowerPointで発表したりテストの監督をしたりする仕事が一週間後に迫っており、私は早急に新しいノートパソコンを購入する要に迫られたわけです。

           

          私「というわけなんだ、何にしようかな」

          MSIの友人「MSI」

          私「赤く光るのカッコいい…ダサさが足りない…もっと業務用っぽいのがいい…」

           

          私「何がいいかな」

          Wac Book Uso いいネーミングですね。

          さん(@mascotboy)がシェアした投稿 -

          こんぶさん「WacBook Uso」

          私「なんやそれ」

           

          結局全然決まらず、色々探して見てみることに。

           

          私「前回のiiyamaでは重さで苦労したな…今度はそこそこ軽いのがいいな、でも画面が折れるのは困るぞ」

          私「軽くて丈夫といえばカーボン製(短絡的)!ThinkPad X1 Carbonってどうよ!」

          https://www3.lenovo.com/jp/ja/notebooks/thinkpad/x-series/ThinkPad-X1-Carbon-6th-Gen/p/22TP2TXX16G

          私「良さみあるけど256GB SSDだけじゃしごとができない」

           

          それに思えば今までのノートPCのサイズは15.6型、これは14型。持ち運び用のリュックやケースを買い替えるのは面倒なのでできればサイズは現行のままで行きたい。1つの机に集まってのグループワークなんかでは少し取り回しに困るサイズではあるのだけどプログラミングには画面の大きさが大事だし…(個人の意見)。

           

          というわけで、ここで要求性能をまとめることに。

          ・サイズ

          前のと揃えて15.6型

           

          ・ディスプレイ

          フルHD。

           

          ・CPU

          前のi7-4710MQは研究用途で使うには結構パワー不足だったのでここは大きくXeon E3-1505M…と言いたいところだが現実を見てi7-7700HQくらい。

           

          ・メモリ

          16GBくらい?

           

          ・GPU

          ぶっちゃけノートでPCゲームは全然やらなかったし、Unityを使うこともほとんど無かった。だからMMMが動けばまあそれでいいかな、MX-150とかで十分?いっそオンボードでも可?と考えていたのだけど、ここで友人から「実家に帰った時ゲームできなくて困るよ…ほらほら…」との悪魔の囁き。考え直してPCゲームが動く最低限のスペックを目指すことに。1050Tiくらいが最低限?

           

          ・ストレージ

          システムドライブがSSDじゃないと人権がない一方で、1TBくらいのデータドライブがなくてもそれはそれで人権がなくなる。ちっちゃいSSD+1TB HDDかな。

           

          ・光学ドライブ

          重たくなるのでいらない。

           

          〜上の性能を満たした上で〜

           

          ・重さ

          軽いこと。2kg前後で。

           

          ・デザイン

          できるだけダサいこと。業務用みたいな見た目だと最高。

           

          ・価格

          できるだけ安いこと。1か月後に旅行とか控えててお金の余裕が全くない。

           

          後はまあWebカメラとか日本語キーボードとかあってほしいものがあって、Officeとか無くてほしいものは無ければ。

          この要求仕様を満たすPCを求めて悩んだ。

           

          といっても「2kg前後」という時点で該当するものは2つだけだったので、具体的にはダサいけど値段が高いFRONTIERか値段が安いけどダサさが無いMSIで悩んだ。

          私のTwitterの4月上旬ごろのツイートでも参照すればその悩みっぷりが見れますが、

          最終的にはダサさを捨てて値段をとってMSIを選びました。

          ていうかこれが一番安いとは思わなかった。偶然2割引きで買えたので。

           

          しかしまあ、時間が無いのでちゃっちゃと決めてちゃっちゃと買うつもりが、思えば丸3日くらい悩んでた…

           

          とはいえ一度決めてしまえば後は注文するだけです。さっさと注文と支払いを済ませ、(通販で買ったので)到着を待ちます。到着予定日が1週間以上後と言われたときは用事に間に合わねえじゃねえかと思いましたが、実際の到着は少し早くなって、用事の前日には着いたので一安心。ギリギリでしたが。

          ついにこれで私も心機一転、ちゃんと開いて閉じられるノートPCライフを始められるんだ!

           

          しかしこれが本当の地獄の始まりとなることを、その時の私はまだ知らなかったのです。

           

          次回に続く。

          今日のところはこの辺でノシ


          IntelliJ 2018.1でsvn+ssh接続する方法(Windows)

          1
          記事を表示する 記事を非表示にする

          新しいノートパソコンにようやく壊れてないWindowsが入り、IntelliJもインストール。さあ開発を始めるぞ!まずは今まで書いてたコードをSubversionからチェックアウトだ!

          チェックアウトだ…

          チェックアウト…(何度パスワードを入力しても通らない)

           

          …というわけで、SVNからチェックアウトができなくて困った。でもなんとか解決できたのでその経過を書こうと思います。

          こういう記事を書くのは初めてなんですが他にも困っている人はいそうなので助けになれば。

           

          なお今回の環境はWindows10ですが、要はsvnとsshをインストールすれば良いわけなので他のOSでもやることは同じかと思います、たぶん。(Windows以外ならsshはデフォルトで入ってると思いますが)


          FF14もはじめました。

          0
            記事を表示する 記事を非表示にする

            さすがにPSO2ほど細かいキャラメイクはできませんでしたがこれもすごい(

            キャラメイクあるゲームでふくにゃ再現するの、割と楽しい。

             

            では、今日のところはこの辺でノシ


            PSO2、はじめました

            0
              記事を表示する 記事を非表示にする

              ここ数日、私のフォロワさんにもやってる人が多かったPSO2をプレイ中です。

              キャラクリが細かくできるゲームとは知っていましたが猫耳の角度や大きさ、防具を表示するかどうか、果ては武器の帯刀位置まで変えられるとは。頑張ってふくにゃを再現することができました。

               

              あと基本無料なのにストーリーモードがあって、それが結構なボリュームなのにも驚きです。肝心のそのシナリオはあまり私向けではなかったのですが、まああるだけすごいには違いないでしょう(

               

              というわけでまさに今、友達3人とプレイ中です。6鯖で「ふくにゃ」を見かけたらよろしく。

               

              では、今日のところはこの辺でwノシ


              ブログのリニューアル中

              0
                記事を表示する 記事を非表示にする

                昨日からこのブログのデザインをまたしてもリニューアル中です。まだ完成したわけではありませんが、おおまかな変更点を簡単にお知らせ。

                 

                ちなみにスマホで見ている人にはこの内容、全く関係ないかもしれません。スマホで見たときは常にテンプレート通りの表示にされちゃうんですよね、レスポンシブデザインするからスマホ版もPC版と同じ表示にしてくれないかなあ(

                本題の前にちょっと愚痴…HTMLやCSSが自由に書き換えられるのがJUGEMブログのいいところですが、特にエディタが提供されているわけではなく、その編集フォームはテキストエリアそのままなので、実際編集するのは今までかなり面倒でした。

                そこで今回からはちゃんとしたエディタを使用して、出力したコードをこのフォームに張り付ける形で編集しています。さすが天下のJetBrains、貼り付けは手間ですが効率が段違い(

                 

                ようやく本題。

                今回のブログリニューアルでの変更点ですが、まず最も大きなものから。

                HTML5、始めました。

                 

                今までこのブログはXHTML1.0などという今となっては完全に骨董品となった何かを使っていました。

                これはJUGEMブログの投稿がXHTMLのスタイル(例えば改行が<br>でなく<br />)で出力されるのに合わせてのことでしたが、今更そんな細かいこと気にしてられねえ!HTML5の恩恵を受けようぜ!ということで晴れてHTML5化。

                それに合わせてdata属性やらなんやらが使えるようになったので、今までJavaScriptで一部かなりカオスな処理をしていた部分をcssセレクタで書き直したりすることができるようになりました。

                 

                また、このブログにブログの投稿以外のページを追加しました。

                ブログにブログ以外のページを追加とかなんのこっちゃって感じですがページの上の方、「Works」だの「About」だのと出ているのがそれ。クリックするとそのページに遷移します。

                実際のところ、自由度の大きいJUGEMブログといえど独自のページを追加することなどできるわけがないわけで、このページ遷移はHistoryAPIなんかを使ってかなり無理やり実装しています(ページ遷移のたびにurlは書き換わっているが、再読み込みは発生していないことからわかるはず…)。我ながらなんて無茶をするんだ。

                 

                あと、記事中にある画像のサムネイルをクリックしたときに、今までは単にその画像のURLに飛ばしていたのをjQueryプラグインのLityでうまく拡大するように変更しました。実は同じようなことを以前(2012年8月くらい)にもやってたんですが…あの時はいちいち手動で画像にプラグイン有効化のためのタグを追加するのが面倒で、それ以降はやってられませんでした(

                そこで今回は自動的にあらゆるサムネイルについてプラグインを有効にするようJavaScriptをごにょごにょと。やっぱこうでなくちゃね(

                 

                今回は他にもレイアウトの変更とかアニメーションの導入とかいろいろやってます。

                まだ実装してない部分(ローダーアニメーションとか)、書いてない部分(「About」ページとか)もありますから完成はもうちょっと先になりそうです(

                 

                では、今日のところはこの辺でwノシ


                弾幕 via ついったー / タイムラインを画面上に流せるプログラム

                0
                  記事を表示する 記事を非表示にする

                  まえがき

                  以前にこのブログを見てくれたことがある人には見ての通り、このブログのレイアウトを大幅にリニューアルしました。近頃更新するときは必ずデザインを変えてる気がしますね…

                   

                  しかし今回の記事はそのリニューアルの話題ではなく、先日作った変なアプリケーションを配布しているというお知らせです。

                  ちなみに昨日Twitterでやたらとウケた「大学の近くにいるとき自動的にPCをミュートするアプリ」の告知でもありません、ごめんね(

                  ↑全くこれがウケるとは思っていなかったのだけど、昨日から今日にかけて不意にTwitterで1000RT以上されてしまったツイート。これについてもちゃんとしたアプリケーションにして配布したいと思ってるので少々お待ちください…

                   

                  弾幕 via ついったーとは

                  ↑のように、Twitterにストリーミング接続して受信したツイートをニコニコ動画のようにスクリーンに流すことができるWPFアプリケーションです。

                  ホームタイムラインを受信することもできますし、特定のワードやハッシュタグを含むツイートを受信することもできます。文字色やフォントの変更も可能です。

                   

                  動作要件

                  .NET Framework 4.5 以上がインストールされてるPC…ならたぶん動くんじゃないかな(

                   

                  使い方

                  1. DANMAKU via Twitter.exe を起動してください。
                  2. 初回起動の場合にはTwitterとの認証のためPINコードの入力を求められます。ブラウザを通して認証を行ってください。
                  3. これで完了。ホームタイムラインの受信が始まります。
                  • 受信するツイートの種類やフォント、文字色を変更したい場合、Twitterとの認証をやり直したい場合などにはタスクトレイにあるアイコンを右クリックし、「Settings」をクリックしてください。設定画面が開きます。
                  • 終了したいときは同様にタスクトレイにあるアイコンを右クリックして「Exit」を選択してください。

                   

                  ダウンロード

                  Github Releaseにて配布中です。

                   

                  定型句

                  このアプリケーションの使用によっていかなる不具合、損害などが生じた場合でも私は一切の責任を負えません。そんなPCがクラッシュしかねないような危なっかしいアプリでもありませんが使用は自己責任でお願いします。

                  質問などございましたらこの記事へのコメントやTwitterなどでどうぞ。

                  Check

                  | 1/14PAGES | 次のページ>>

                  Locate Muter

                  GPS情報からノートPCなどの現在位置を取得し、職場や学校にいる場合は自動的にミュートを行ったり、自宅にいる場合は自動的にミュートを解除したりできるWindowsアプリケーションです。

                  GPSに誤差が出ない限りはミュート忘れ事故を高確率で防ぐことができます。

                  講義中にミュート忘れで大きな音を響かせた、あの悲しみを二度と味わわないためにどうぞ。

                  なおWindowsで位置情報を取得できるのは8からだそうなので、それ以前のバージョンのWindowsでは使えないかもしれません。

                  製作中

                  弾幕 via ついったー

                  Twitterにストリーミング接続し、受信したツイートをニコニコ動画のようにデスクトップに流すWindowsアプリケーションです。

                  ユーザータイムラインを受信するほか、特定のワードやハッシュタグのついたツイートを追うこともできます。

                  プレゼン中にTwitterから質問や意見を受けたい時、または別作業中にTLを見たいとき、何かのネタにしたいときなどにどうぞ。

                  相互リストメーカー

                  Twitterの「リスト」機能で、相互フォローのユーザーを含んだリストを作るだけのアプリケーションです。

                  詳細ページ:準備中

                  つぎツイ

                  自分のツイートをRTした人が、次になんて呟いてるのかとか気にならない?ならない?私だけ?

                  きっと私だけではないと思うので作りました。RTに限らず何らかのワードを呟いた「次」のツイートを見つけてcsvに出力することができます。

                  詳細ページ:準備中

                  KIRIBAN

                  大学の講義で製作中のWebサイトです。うまくできたらみんなで使えるようにするかも?

                  製作中

                  自己紹介。サイトリニューアルにつき準備中