はてなキーワード: IPhoneアプリとは
話の着眼点が面白く、はてな向きなんじゃないかと思う友人がいて、
せっかくだからはてなブログ始めてみたら、もしくははてなブックマークだけでも。と薦めたい。
それで、はてなを知らない友人に、はてなについて説明しようと以下の文章を書き始めたところ、
(ダークサイドだけに目がいって、薦めた自分が誤解されたらどうしよう)
という懸念が出てきて、はてな独自の雰囲気や用語、注意点なども教えたいと思うに至り、
おすすめ記事や注意点などがあれば、ブコメやトラックバックで是非お願いします。
後は「はてなってこんな感じ」ってところを友人にみせたいです。
ブログ、ブックマーク、人力検索、キーワードなどのサービスがある。
はてなの主力サービス、略して「はてブ」。ブックマークは「ブクマ」、ブックマークコメントは「ブコメ」。詳しくは下記URL参照。
■はてなブックマークって?
http://b.hatena.ne.jp/guide?via=201004
■年間ランキング
http://hatenanews.com/articles/201312/17870
※さらに「はてなスター」って★マークつけることで「いいね!」みたいな評価ができる。
http://www.hatena.ne.jp/help/star/guide
はてなのブログサービス、こっちは「はてブ」と略すのは間違い。ここでブログを書くと、はてブが付きやすい。
●ブログじゃなくて単発的に発言したいなら「はてな匿名ダイアリー」。
英語で「AnonymousDiary(アノニマスダイアリー)」だから「増田」、文章書いた人のことも「増田」と呼ぶ。
※ややこしいことをいうと「はてなダイアリー」というのもあって、こちらが先で、「はてなブログ」が後発だけど今は主流。
http://d.hatena.ne.jp/hatenadiary/20121220/1355975719
http://anond.hatelabo.jp/20130515153030
http://d.hatena.ne.jp/p_shirokuma/20111030/p1
村上春樹の「好き」「嫌い」はどこで分かれるのか? に関する一考察
http://aniram-czech.hatenablog.com/entry/2013/11/02/111443
http://d.hatena.ne.jp/ikkou2otosata0/20140225/1393324125
http://anond.hatelabo.jp/20131221214901
…(補足募集)
※個人的に、考察、日常生活、くだらないのに文章力がすごい、系が好き。
ネットを一刀両断してきた中川淳一郎さんに、はてなのダメなところや好きなところを訊いたところ、バカが足りないと言われました
http://blog.hatenablog.com/entry/2013/12/06/141554
http://rlee1984.hatenablog.com/entry/2014/01/07/114002
http://hagex.hatenadiary.jp/entry/2013/12/09/072614
http://topisyu.hatenablog.com/entry/2013/11/17/144450
…(補足募集)
ちきりん、やまもといちろう、イケハヤ、トピシュ…(補足募集)
等の言葉を覚えると理解が早いです、日常会話で使うのはお薦めできない。
なんか面倒くさそう…と思ったなら、
とりあえず、このiphoneアプリだけでも使ってみてね。。
https://itunes.apple.com/jp/app/id799334646
あまりに、やめておけ派が多くてびっくりしました。最初ネタだと思ったんですが、割と本気??
自分からはてなを危険物扱いするようなことを書いておいてなんですが、あれ?はてなって、そこまでそんな位置づけだった?と不安になってきました。
自然流入派と軽く教える派の意見を参考に、なんだかんだ言わず、それとなくPresso薦めるくらいにしておきます。
買い物に行っても着たい服が着られないことにつくづく厭気が差し、減量取り組みを決意。
・三日坊主防止対策としてtwitterでジョギング開始を宣言。
・1日走ったら最低1日は休むルールを定める。
(ヒザ痛対策と、毎日走らなければ!→できなかったからヤメ、というルート回避のため)
・ダイエット(食餌療法)はしないことにしていつも通り食べる。
足に合ったランニングシューズを購入(ゲルカヤノ17スーパーワイド)
気に入った新作ウィンブレも定価で買う(高かった)
・ヒザ痛に悩み始める。
開始より-10kg。
このころ1回30分ほどのランを月に6~8回程度。
3.5kmのコースを2周できるようになった。
冬場は発汗量が落ち、減量効果が下がるが現状維持できればよしとする。
開始より-15kg。
ハワイへ行った際にワイキキビーチをランパン一枚で走る暴挙に及ぶ。
ヒザ痛本格化で気温の高い減量ハイシーズンに走れず、体重が戻り始める。
調子がよければ2~3周。
瞬間的に体重が78kgを超えて決意を新たにする。
18時間/月。
往復15kmのコースが「いつものコース」となる。
もう体型を戻さない決意。
履けなくなった大きいパンツを履いて
ウエストをヘソの前でビローンと広げる例のポーズで写真を撮ってから処分。
楽しそうだとは思うが、マラソン参加が自分と関係あることとはまだ思っていない。
全治3ヶ月でほぼ走れず。
2足目のランニングシューズを購入(asics GT-2000NYスーパーワイド)
1足目でここまで通算2800km、300時間走る。消費カロリー20万kcal。
初マラソンに向けて30km走に挑戦。
2度目の30km走。
タイムが前回より30分縮まる。
3度目の30km走。手応えを感じる。
減量し始めのころ買った思い出のウィンブレを着て走る。
372時間
25万kcal
3460km
長年、職場のモラルハラスメントに悩んでいたのですが、つい先日いい解決法が見つかりました。
それは、とにかく録音&録画!
諸悪の根源と近くにいるときは、これ見よがしにiPhoneのボタンを押すしぐさをしましょう。
iPhoneアプリは色々と試した結果、『iTalk』がベター。
わざわざ、その人の近くにiPhoneを置くとより効果的です。
もしくは撮影でもOK。
その後は、「モラルハラスメントで訴えるぞ」と小声で呟きましょう。
基本的に「こんなことされた」とか誰かに言ったりメモったりしても、根源には響きません。
とにかく、人生をかけて相手を訴える準備をしてください。
尊厳を守るためです。
人格否定してきた奴らを近々、懲らしめてやる予定です。
・Gunosy ( https://itunes.apple.com/jp/app/xianinyusu-apurigunosy/id590384791?mt=8 )
記事閲覧履歴、各種アカウント(FB, Twitter, はてな)、フォローしているGunosyユーザー(iOS版)・ユーザーが登録したキーワード・ニュースサイトに基づきニュースが収集される。
朝・夕に配信される記事数は多くない。
より多くの記事に目を通したい人は、キーワード(前出)に関する記事、アクセス数の多い記事(『周りで話題』)を読むことになるだろう。
・vingow ( https://itunes.apple.com/jp/app/vingow-news-bingonyusu-nyusu/id563814488?mt=8 )
記事閲覧履歴、各種アカウント(FB, Twitter, Microsoft, Google)、登録した興味のあるキーワード(タグ)をもとに、ニュースを集めてくれる。
Gunosyに似ている。
ただ、収集精度・配信記事数において、Gunosyよりこちらの方が勝っているように私は思う。
定量的に比較できないが、収集精度は高く、まるで頭の中を覗かれているようだ。
また、自動生成された記事の要約文だけを読むことが可能。どんなアルゴリズム使ってるんだよ。
・SmartNews ( https://itunes.apple.com/jp/app/nyusuga-quan-waidemosakusaku/id579581125?mt=8 )
広く浅く情報を集めてくれる。
圏外でも閲覧可能。
特定のニュースサイトから収集された記事も見られるが、利用できるサイトの種類は少ない。
・Googleニュース ( https://itunes.apple.com/jp/app/google-jian-suo/id284815942?mt=8 )
ユーザーが登録したキーワードをもとにニュースを収集してくれる。
iPhoneアプリ(『Google検索』の機能の一部として)あり。
・Flipboard ( https://itunes.apple.com/jp/app/flipboard-anatanososharunyusumagajin/id358801284?mt=8 )
『テクノロジー』、『ビジネス』といった大雑把なくくりで、不特定のサイトから記事を収集することも可能。
ユーザーの趣向を分析して記事を選別するというより、ユーザーが自発的に選んだニュースサイトの記事をまとめることに重点を置いたサービス。
・Antenna ( https://itunes.apple.com/jp/app/hua-tiga-jiantsukaru-sino/id511262473?mt=8 )
落ちゲー「Candy Crush Saga」が教えてくれた、日本の鎖国状態
http://www.advertimes.com/20140110/article141516/
コレを読んでいたら、パズドラ全盛期に感じたイライラが再発したので、いい加減書いとくべきか。
マッチ3ゲームとは絵柄を3つ以上揃えて消していくパズルゲームの総称だ。
消えた絵柄を補充する際、上から落ちるように絵柄が追加されるゲームが大半なので落ちゲーのカテゴリにも属しているが、テトリスやぷよぷよに比べると「落ちる」ことがさほど重要なゲームではない。また基本的に消えたそばからランダムな絵柄が補充されていくというシステムと連鎖重視のゲーム性により、次にどの絵柄がくるかという予測が成り立たない、いわゆる運ゲーな作りになっている。そのため長孝型のパズルゲームにはあまり向いておらず、実際、瞬発力を重視したアクション性の高いパズルゲームへと進化していった。
この進化の過程において、重要な役割を果たしたのがタッチパネルでありアクティブ連鎖である。
タッチパネルの直感的な操作性は マッチ3ゲームとの相性がよく、スマートフォンの普及とともにその作品数を拡大していった。そして作品数の増加は多様性を産み、実に様々な実験的なマッチ3ゲームを輩出してゆく。
アクティブ連鎖については、これを獲得したことによりマッチ3ゲームが真にアクションパズルになったとも言えるマイルストーン的存在だ。
それまでのマッチ3ゲームでは、BejeweledであれZOOKEEPERであれ連鎖中は操作を受け付けず、連鎖が終わるまでただ眺めているしかなかった。それはすなわちゲーム自体はリアルタイムで進行していくが、1手1ターンの原則に縛られていたということに他ならない。これを変えた最初の作品について詳しくはないが、連鎖中も絵柄の操作が可能で能動的に連鎖を持続させることのできるマッチ3ゲームが次第に増えてゆき、そういったシステムがアクティブ連鎖と呼ばれるようになった。
アクティブ連鎖は電気の発明のようなもので、これを知ってしまったらそれ以前の生活には戻れないといった革新をもたらした。これによりマッチ3ゲームはただひたすら絵柄を消していくことに没頭できる快楽装置となった。
日本を除く全世界でブーム中らしいCandy Crush Sagaは紛れもないマッチ3ゲームではあるが、アクティブ連鎖のない「ひと世代前のマッチ3ゲーム」である。はっきり言って、こんなもんに金をつぎ込み他の奴らよりも先に進むことで優越感に浸るくらいなら、Around the World in 80 Days(iPhone版がおすすめというか、Big FishのPC版はなぜかアクティブ連鎖がなかった記憶がある)でオール3つ星獲得して自慢する方がいろいろと健全だ。
パズルクエストはごく初期において1手1ターンを推し進めた完全ターン性のマッチ3ゲームであった。またマッチ3ゲームを使って戦闘をするというアイディアの始祖でもある。ただ個人的にこの方向性は、マッチ3ゲームの魅力のコア部分を投げ捨てるような愚作だと思っている。
パズル&ドラゴンズはこれにソシャゲ的なアレンジを施したゲームであり、マッチ3ゲームとして見た場合クソであることは明白なので、これが大ヒットした理由はそことは別の部分にあるのだろう。
というわけで、何がそんなにイライラするのかというと、
と、これに他ならない。
まあ、こういうことを書くとなるとマシなマッチ3ゲームってヤツを提示しないといけなくなるが、iPhoneでゲームをしなくなって久しい自分にそれは難しい。
なのでアクティブ連鎖以後のマッチ3ゲームの発展を書いてお茶をにごしておく。
ZOOKEEPERにアクティブ連鎖は無いと書いたが、時代は流れiPhoneに移植されたZOOKEEPERにはアクティブ連鎖が追加された。しかしながら連鎖とみなされる合間の時間はかなりシビアに設定されている。ただ見つけた順にパパッと消していくだけでは単発扱いにしかならないことが多く、連鎖を狙おうとした場合、あらかじめいくつか消すポイントをピックアップしてから瞬時にかつ正確に消さなければならない。
このシステムを新しい試みとみるか、ストレスしかたまらんクソ仕様とみるかは意見の別れるところだ。
パズルクエストを発展させたものとして、まず挙げたいのがDevil Invasionだ。これはマッチ3ゲームとタワーディフェンスを組み合わせた画期的なゲームである。進行はあくまでリアルタイムを取り入れており、迫り来るモンスターを撃退していく緊張感に水を指すようなことはない。
Puzzle Sagaはマッチ3RPGにおけるひとつの到達点だ。クソかったるいパズドラにはないスピーディなプレイが楽しめる。
Puzzle Dungeonsはマッチ3+ローグライクといった雰囲気の佳作である。
対戦☆ZOOKEEPERはZOOKEEPERとともにiPhoneアプリ化を期待された作品だ。これはマッチ3ゲームを用いたオンライン対戦ゲームである。とはいえそのシステムはスコアを競い合うというランキング部分を抜き出した、シングルゲームの延長上でしかない。
パズルクエストが示したマッチ3ゲームを使っての戦闘をオンライン対戦で行ったのは、ウィッチウォーズが最初ではなかろうか(というか、他に知らない)。マッチ3ゲームの持つアクション性と対戦ゲームに必要な戦略性がしっかりと絡み合った対戦型マッチ3ゲームの決定版!
と、なるはずであったが、オンゲの悪しき習慣まで取り入れてしまったため、超絶微妙ゲームとなっている。間違いなくあの時点での最先端のマッチ3ゲームではあったのだが……(Com2uSに何を期待しているんだ、というのはごもっともだが)。
マッチ3ゲームとは絵柄を揃えて消していく快楽を追求したゲームジャンルである。
そんなマッチ3好きとしては、パズドラやキャンクラのような退化したゲームが持て囃されている現状にはやっぱり憤りを感じてしまうのだ。
もちろん価値観の押しつけは重々承知している。マッチ3ゲームの歴史におけるパズドラやキャンクラの位置付けという書き方もできたのだが、あえて素直に思ったままを書くことにした。
ドラクエ1のiPhoneアプリが無料でもらえる理由が頭良すぎる件
http://rick08.hatenablog.com/entry/2013/11/27/191206
非常に頭の悪い記事である。
なぜなら、ダウンロードされたドラクエ1は操作性もグラフィックもあまりに低品質で、5分でストレスが溜まってやめた人が続出しているからだ。今は無料だからやめるだけですんでいるが、もし500円で買っていたら、返金を求める人たちでレビューが溢れかえっている。
当然ながら、その人たちは今後配信されるドラクエ2以降も買わない。プッシュ配信されるのが嫌になって、アプリを消してしまう人も多数出るだろう。その人たちにとっては「ドラクエ=クソゲー」との印象のみが残る。もっとも、無料に釣られない、本当のドラクエファンは事前情報でスマホ版ドラクエがクソゲーだと理解しており、何の期待もしてなかったが。
普段Androidがクソ端末でiPhoneは良端末みたいな風潮が我慢ならないのでiPhoneも同じクソ端末である理由書いとく。
これは、Appleはシンプルさを保つため云々みたいなこと抜かすが、そんなことはない。
むしろアプリ側にそのメニューや戻るをどう実装するかを任せており、各アプリが思い思いな方法で実現しているので、UXとしては最悪だ。
例えば、→にフリックで前に戻るとか、↑にフリックでメニューが出てくるとか、そういうの。
デフォルトのブラウザ、Safariでさえブラウザバックしたいんだけど戻るボタン出すのに苦労する。死ねばいいのに。
よくある手法として、アプリ上部にバーを設けて、左側に戻る、右側にメニューボタンをつけるヤツ。
もう、ほんと死ねばいいのに。届かねーんだよ。指が。
おかげでツルッと滑って落して割れた。マジクソ。
片手操作する人も多いと思うんだけど、こういう実装するヤツ、そういう人のこと考えてないよね。
戻るボタンがあるということは、ベースの戻る機能を利用する方法が保証されているということ。
さらにそのボタンをホームボタンと同じようなとこにつけておけば、操作もしやすい。
まずその機能が保証された上で、さらに上記のようなアーティスティックな方法でも操作できますよ、が優れた手法だと思う。
これは例外はあって、Apple が認めたアプリであれば、GameCenterとかと連携はできる。
ただ、それ以外のもの、例えばはてブと連携したいとか、Evernote と連携したいとか、そういうのができない。
Safari でネットサーフィンしてて、「あ、これはてブに追加しときたい」っての、できない。
サーブレット使えば行けるけど、そんなニッチなことせずに連携させろよ、と思う。
逆に、はてブアプリからSafariで開きたいとか、Twitterで開きたいとか、そんなこともできない。
個々のアプリとしてはiPhoneアプリは素晴らしいが、どうしてもそれだけじゃ足りないものを補わせる機能はない。
独自プロトコルとかに関してはそのアプリしか使えないから却下。ユーザーが使いたいアプリで開かせろ。
確かに最大64GBあれば一般的には問題ないだろう。
重要なデータは個人で保有し、必要な場合に付け替えできるようにするべきだ。
15分おきにフェッチとかありえないだろ。
当記事に対するTehu君の反論記事 http://blog.allnightnihon.com/?p=343
まあ、別に誰かを怒らせたいとかあおりたいとか批判したいとかそういう気持ちで書いたのではなく、なんとなくTehu君が題材として面白そうだったから書いたので意味はないです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
最近、健康計算機のiPhoneアプリを作って有名になった灘高のTehu君という高校生が非常にもてはやされている(いろんなメディア露出や講演などを行っている)ようで、なんだか度々SNS上でお目にかかります。
プレゼン力やメディアとのつき合い方、自己プロモーション力などの能力が非常に高いようで、今までは若いうちに才能を伸ばすのは非常にいいことだな〜っと温かく見ていたのですが、、、が!
なんだか、最近非常にうざい!!斜に構えている感じで、同年代には上から目線。毎日のように批評して(悪口言ってるだけのような気もしますが、、、)女の子との写真や有名人との写真をあげまくって業界ゴロみたいな存在と化してます。
まあ、別に私はTehu君を嫌うほど知らないので、悪口を言うつもりも嫌うつもりもありませんが、単純にSNS上で流れてくる彼の投稿に対する感想を言うと、「うざい!」の一言に尽きるな〜っと感じたので、こんな文章を書いているだけなのですが。。。(閑話休題
まあ、多くのTehu君を知っている方々なら薄々感じているとは思うのですが、このTehu君の流れ、2,3年前に持て囃されていた「うめけん」にそっくりだと思います。
孫さんに3番目にフォローされて、流行語大賞をとって、起業したスーパー高校生「うめけん」を最近全くみることはなくなりました。彼は確かSFC(慶応大学)へ進学したはずですが、高校生でなくなったときからTwitter上にも出現する事がなくなり、ニュースやインタビュー、講演などの話も聞く事がなくなりました。彼が現在どうなってしまったかは知る由もありませんが、必ずしも成功したと言えるとは思えません。彼は一時的なコンテンツとして利用されて飽きられた(彼の場合はなにもしなかったから忘れられたようにも思えますが)ある意味でのSNS社会の被害者だったのかも知れません。
「うめけん」は、起業やTwitter上でのフォロワー数や流行語など、あまり実績と言えるものがなく、今でも実績をあげているという話も聞かないので、祭り上げられてなにもできなかった一般的な若者だったのでしょう。
その頃から少し話題になっていたTehu君は、iPhoneアプリを早くから作ったエンジニアとしての実績や灘高生としての地頭の良さなどから、多少祭り上げられるにしろ、エンジニアとしてでも起業家としてでも真っ当に進むものだとそのときの私は思っていました。
しかし、スーパー高校生「うめけん」の消滅と共に、スーパー高校生の肩書きを自動的に踏襲し、多くのメディアに取り上げられ、「うめけん」と同じように持て囃されはじめてしまいました。
彼は、この段階で多少天狗になっても努力を怠るべきではなかったと思います。Tehu君がはじめ進学先としてメディアに語っていたのはハーバードでした。しかし、今となっては東大すら受験する事もなく、自己推薦で入学できるSFCを進学先として選択してしまっています。(進学先までもうめけんとかぶるのは皮肉なように思えますが)
Tehu君にしろ、「うめけん」にしろ、努力して多少でも結果を残せば、あれだけの有名人なのですから、結果は大きく取り上げられます。
しかし、彼らは持て囃され、ビックマウスになってしまった。語る事を許されてしまった。彼らの言葉(記事や理論など)を本気で受け止めている大人は少数なはずです。彼らはまだ若く、知識も専門家というにはあまりにも浅すぎるのですから。
もしかしたら、Tehu君はあのままタレントとしてか、業界ゴロとしてか、起業家としてか成功するかもしれません。未来のことなんかわかりませんが、私は彼はきっとこのままであれば失敗するだろうと思っています。
知識も若さも実績も中途半端であれば飽きられてしまうというのは、当たり前なのです。多くの人が楽しむコンテンツであることを続けるなら中途半端ではダメなのです。
Tehu君を「ヤバい」「うざい」「落ちぶれた」と感じている人は結構な数いるはずです。(と、いうかそういう話を結構耳にしました)
彼が「うめけん」のように忘れられてしまっても、うめけんも含め、才能ある若者なのですから、しっかりとした人生を歩んで行って欲しいものです。
僕はプログラマーです。
でも僕のMacBookProには何故かAdobeのソフトウェアが入っています。
デザイナーの人がデザインファイルを.psdや.aiや.fw.pngのまま当然の様に投げて来るからです。
僕はAdobeのソフトウェアに精通しているわけではありません。
ですので複雑なレイヤー構造のファイルを切り出すのにはかなり時間を要します。
でもレイヤー構造の説明をしてくれるデザイナーの人は殆ど居ません。
デザイナー同士だとその複雑な構造でもやり取り出来るのかも知れませんが、僕には大抵よく分かりません。
例えば、Photoshopのエフェクトレイヤーが掛かっているボタンはボタンだけ切り出す時に凄く苦労します。
例えば、薄くシャドーが掛かってるデザインは素敵な質感を表現出来るかもしれませんが説明してもらわないとどこまで切り出したら良いか分かりません。
一所懸命頑張って切り出した画像でアプリを作っていたら「この部分が滲んでいる」とか「ここが1pxズレている」とか言われます。
僕はAdobeに精通する為の努力をしなきゃいけないのでしょうか?
そもそもAdobeのソフトウェアは高価です。 今なら毎月3000円払わなきゃいけません。
でも実際使う機会は月に2〜3回あるか無いかです。
一回の起動が1000円です。
じゃあデザイナーの人にも僕がソースコードのまま投げても良いのでしょうか?
Xcodeは無料です。 AppleのiOS Developerライセンスは年8400円です。
ビルドから実機へのインストールくらいならボタン押すだけで出来ます。
じゃあデザイナーの人にもGitでデザインファイルを共有して貰っても良いのでしょうか?
Gitは無料です。 レポジトリは僕が作ります。 GUIクライアントは有料かもしれません。
多少学習コストは掛かりますがcommitとpullとpushくらいならすぐ覚えられます。
デザイナーの人が数分で切り出せるボタンを試行錯誤して30分掛けて切り出す間、僕がコードを書けばデザイナーの人が8時間プログラムを書くよりも随分作業が進む自信はあります。
きっと何かしらのデザインルールでレイアウトされたデザインの座標を一個一個調べながらボタンを配置していく間、僕がコードを書くよりも、最初からこのボタンはここに配置するってレイアウト図を見せてくれればバグを一個や二個くらい潰せる時間が作れます。
デザインファイルを最初からpngで書き出して貰ってレイアウト図と一緒にくださいというのはプログラマーの怠慢でしょうか?
どう書き出すとプログラマーが使い易いか一番良いのか分からない、とよく言われます。
でも、最初に言ってくれればどういう風に切り出して欲しいか説明します。
もしかするとアニメーションを追加する為にレイヤーにしたり、書き出す構造が変化することもあるかもしれません。
それでも僕がどこまで切り出せば良いか分からないシャドーを書き出した方が良いのでしょうか?
AdobeのツールはGUIだから誰でも分かるのかもしれませんが、それはデザイナーの人が
self = [super init]; if(self) { [self setShadowImage:[UIImage imageWithNamed:@"shadow。png"]]; } return self;
別に上の謎の文字列だって適当な文字列じゃないんです。 きちんとした意味があります。 誰だってちゃんと分かるはずです。
ボタンが1px右が正解か2px左が正解かを判別するよりも簡単に間違ってるかどうか分かるシンプルなものです。
確かにAdobeのツールはよく出来ているので僕でも頑張れば使うことが出来ます。
でも、僕はAdobeのツールを使った時の生産性よりも、Stack OverflowやはてなダイアリーやClass Referenceと睨めっこしながらキーボードを叩いて居る方が生産性が高い人種だと思っています。
ただ、デザイナーの人がもう一手間かけて頂けるだけで、僕はもっとコードを書いたりデバッグ出来るし、結果的にプロジェクトとして良い物が出来上がるんじゃないかなというだけなんです。
デザイナーの人がAdobeのツールを習得するためにマウスやペンタブを触っていた時間を僕はプログラムを覚えるためにキーボードを叩き続けていたんです。
もし、デザイナーの人がもう一手間かけて頂けたら...
私は30そこそこのしがない管理職でして、コードは最近書かない元プログラマーなんですが、管理職というものになって苦労することも沢山あるのですが、その中で最近一番苦労させられてるのが、一部のスマホアプリのエンジニア。
一般化するのもあまり好きじゃないのですが、偶然なのか、似た状況が立て続けに続いたので、傾向として捉えると共感してもらえる人も中にはいるのではないかと思ったり。
前置きが長くなりましたが、iPhoneやAndroidのアプリを作るエンジニアに最近多いなと感じるのが、ライブラリや他人のソースコードを組み合わせるだけの人。どうして動いてるのかも理解できず、ドキュメント読みながら実装したら動いて、それで満足してる人。
そのやり方で締切までに仕上げてくるなら問題はないんですが、仕上げてこない。いや、正確には、期日までには提出してくるがバグだらけ、といった表現が正しい。作った本人も、自分のソースコードを理解してないんだから、この辺り怪しいから重点的に動かしてみるか、といった危機感知も弱い。で、開発メンバーで動かす時にバグが大量に出て、みんなでバグ潰し。メンバーの時間がデバッグに費やされ、毎回、その人がいるプロジェクトは夜遅くまで開発することになる。
どこぞのベンチャー企業でバリバリコード書いてました!と言うもんだから任せてはみたものの、よくこれでコード書かせてもらえてたな、と思うぐらいの酷いコード。ベンチャーなのでスピード命なのでしょうが、どれだけ早く作っても、デバッグで時間が取られるようではダメ。クラス設計の知識はほぼゼロ。見よう見まねでコードを書いているだけなのでしょう。それはそれでいいことだとも思いますが、理解がついてきていない様子。
本人が勉強を怠けてるというのもあると思いますが、最近気付いたところとして、巷に溢れているスマホアプリの作り方を解説している本。私はあれが悪さをしているのではないかと思っています。さすがに年取ってるだけで管理職するのも辛いので、スマホアプリを趣味の範囲で作ってみたりしているわけですが、スマホアプリ関係の本は、だいたいが、そのOSの持っている機能の解説に寄っている。そして、そこに書かれていることを複写すればだいたい動く。OSの持ってる機能や、誰かが作ったライブラリをどのようにクラスに落とし込むか。そういったことを全く意識せずに実装に進むと、メモリは大量に食うわ、似たコードがいくつもあるわで、バグの温床としては最高ですね。
自分でいうのもあれですが、私のように、ある程度の現場で開発をしてきた人間であれば問題ないですが、初心者がいきなり、このような本を読み始めるのはよろしくない。ろくに勉強もせずスマホアプリの開発に入ると、結果として、既に存在するものを組み合わせるだけのスキルしか身に付かない。それでもだいたい動いてしまうし、ハイレベルなもの (OSやライブラリがすごいのであって本人はすごくない) ができてしまい、彼はすごい人だ、といった誤認が生まれてしまう。大きい会社とかであれば、ペアプロや長時間のコードレビューがあったりするので、変に知識が偏ってる人はそこで再教育されるのでしょうが、ベンチャーにいってしまうと、そういったチャンスもなく、気付けば中堅レベルの年齢になりつつも、残念なコードしか書けない人になるのでしょう。
iPhoneアプリで学ぶクラス設計、なんて本があってもいいのではないかと思う今日この頃。OSの機能を知る前に学ぶべき、とても大事なものだと私は思います。後、そういう人達をなんとかするのが、私の仕事の1つなのかなとも思います。
自分もプログラム勉強したての頃はそんな感じだった。自分は特にオブジェクト指向のあたり意味がわからなかったなあ…。
どちらも同じ先生で、質問してもそのうちわかってくる!って言われるからそうか…ってほっといてるけど、
言語の詳しい説明はいつになったら理解できるようになるか不安になる。
最初は「おまじない」として書いてても大丈夫。要は、動けばいい。
でもプログラムをずっと書いてるとそのうちもっとトリッキーなことがやりたくなってくる。そのときに嫌でもどんなことなのか知らなきゃいけなくなる。そういうのを繰り返してちょっとずつちょっとずつ知らないうちにぼんやりしてた概念が身についてくる。
こういう概念ってわかってる人には説明できる。でもわからない人に説明するのは用語の面でも概念の面でも難しい。一神教のひとにアニミズムの考えを理解してもらうような…(ちょっとちがうか)。だから教える側も最初は「おまじない」が限界なんだよね。
プログラムの自習は自分が作りたいものがあるとか作らざるを得ない状況だとかじゃないと課題を見つけるのが難しいかも。でもとりあえず今は習った範囲でできることをいろいろ試してみてごらん。macがあるなら試しにiPhoneアプリ作ってみてもいい。作り始めるといろいろ必要になるから勝手に勉強しちゃうよ。
ありがとうございます。元増田です。。
プログラミングは教養としてやってるような文系の学科なので遅いです。
iPhoneアプリの授業も流行ってるから作ったって感じで(笑)
その教授がJavaの本を出してる人で、とりあえず基礎にJavaでもやりましょうっていう感じです。
とりあえず授業ついてってみます。
今のとこ課題は全部出せてる。
forとかwhileとか配列とかスレッドとかそういう技?みたいなのはなるほどってなる。
けど、書いたコードの説明に入って
プリミティブ型?とかキャストとかわけわかんない単語使いながら
用語解説必死に読んでも日本語と思えないことが書いてあって辛い。
iPhoneアプリの授業はインターフェスビルダーとXcodeの関係を結ぶところとか、
アクションメソッドでどういう動きさせるかはJavaの授業とリンクしててよくわかって楽しいんだけど
インスタンス解放とかアウトレット?とか戻り値とかデリゲートとか
アクションメソッドでどういう動きさせるか書いた下の方にあるコーナーに
先生がこの文入れといてください これはリリースしますとかわけわかんないこと言ってるのにしたがって文を写してて
これで本当に大丈夫か??ってなる。
どちらも同じ先生で、質問してもそのうちわかってくる!って言われるからそうか…ってほっといてるけど、
言語の詳しい説明はいつになったら理解できるようになるか不安になる。
自習の仕方もわからないし。
どうすればいいですか?
日本語でOKですいません。
インターネットで稼いで悠々と海外ライフを夢見た僕は色々とやってみた。
どれもなかなか上手くは行かない。
ゴミみたいな簡単なゲームをiPhoneアプリで作って広告を付けて公開してみた。
300円位にしかならなかった。
アフィリエイトは2chまとめブログをやってみたがインターネット上にゴミを量産している上に、月に300円も入ってこない。
Amazonのアソシエイツの報酬がどんどん安くなってきているので、辞めてしまった。他人の書いたものをコピーして稼ごうとしている時点で間違いだった。
せどりも試してみようとブックオフに行ってみたが、おじさんとかおばさんが一生懸命スマートフォンで本の相場を調べている。どう見てもせどりは競争が激しそうだ。辞めておこう。
Webサービスで稼ぐって言う方法もあるらしいがそんなに素晴らしいサービスを僕は思いつかない。
個人輸出はどうなんだろうと調べてみたがアメリカAmazon、eBayはかなりの商品が出品されていて荒れている。
先日「飲み会版ソーシャルランチをつくってみた」を書いた者です。
上の記事では、僕がつくった「飲活」というサービスの説明が大半で、どうやってつくったのかとか説明が少なかったので、今回はそれについて書いてみようかと思います。
僕は「「飲活」」を作るまでも、iPhoneアプリを開発したり、webサービスのメンテナンスをしたりとプログラミングをしておりました。
しかし僕も何度かwebサービスの立ち上げを挫折しております。4回くらいかな。
最初はxoopsを使って、ツイッターで登録企業の広告をつぶやいたらポイントをもらえるサービスでした。
なんとxamppで門前払いされました。ローカル環境すらつくれませんでした。「くそ初心者は時間を無駄にするだけだから辞めろ」と言われた気分でした。
xamppだけに2日くらい朝まで格闘してしまい本当に時間を無駄にしました。当時はapacheの設定とかなんぞや状態ですからね。
次にやろうとしたのが、大学受験生向けのサイトで、受験生に教科ごとの講義をするのではなく、勉強のやり方を教えるよ!ってサイトです。
ほとんどhtmlでできそうなのですが、phpでメールを送ることができず挫折しました。
レンタルサーバーを借りたのですが、レンタルサーバーのphpの設定をしないといけないのを知らなかったり、やっと解決しても日本語化けに悩まされて止めた覚えがあります。これほど母国語が英語だったらどんなに楽かと思った時はありませんよ。プログラミングしてると今でもたまに思います。
次が、キックスターターのようでそうでないクラウドファンディングサービスをつくろうとしました。
ここでjavascriptと出会いました。いや、ちゃんと交際を始めたと言うべきか・・・。それまでjavascriptとすれ違っても虫を決め込んでいたのですが、いざ必要になって呼び止めてみると意外と良い奴でした。
しかし、ajaxにつまづいたり、サイト構成やディレクトリ構成、データベース構成や、デザインの調整などで複雑で面倒になり挫折してしまいました。
こうして書くと、僕がすごい諦めの早いやつで勉強もまともにしないやつみたいに思えますが、半分正解。諦めは悪いけど「ググればいける」という考えで勉強を怠っておりました。
だいたいプログラミング言語はどれも根本は似ているので、先述の3つ以外のプログラミング言語をやりたいと思ってる人でも参考になると思います。
また、以下の内容は、わけわからんけどwebサービスをつくりはじめる方を前提にしています。
まずは開発環境を整えましょう。
開発環境とは、自分の書いたプログラムをローカル(自分のパソコン)でのみ動作させる環境です。
つまり、自分がつくっているものを外部に見られることはありません。
です。
まずはこれらをインストールしてください。設定などの説明は割愛します。
僕はphpを使いました。
僕もそうでしたが、素人は当然プログラミングの全体像を想像できません。やりたいことを思いついても、どういうコードを書いたらいいかなんてすぐに想像できませんよね。
これも当然ですがその原因は、そもそもプログラムでなにができるか知らないからです。
なので、POSTやSESSION、配列などの基本的なものの存在を知りましょう。そしたら、「このページにはこの機能が必要だろう」というのが、"なんとなく"わかります。書き方はこの時点で別に覚えなくて大丈夫です。
例えば、オブジェクトを格納することが出来る「配列」という存在を覚えます。
この時点では、配列の作り方のコードとかは覚えなくていいですよ。「配列という存在を知る」ことが重要です。
基本的なことを学ぶときはネットではなく本を使う事を薦めます。
本は情報が体系的にまとめられていまうので、ネットよりも学びやすいです。
プログラミングは10年以上基本部分は変わっていませんので、「古いものを覚えちゃわない?」という無駄な心配はなくて大丈夫。
一方、発展的なことではネットで学びましょう、というかわからないことがあればネットで探しましょう。
どんなことを実現したいのかというゴールがないと必ず途方にくれます。
なので、まずはゴールを設定します。
例えば「「飲活」」なら、
などなど...。
その後に、各ページ毎に必要な機能と大まかなそのページのやることを決めます。
ログインページには、ユーザーが入力するフォームと送信ボタンがあって、なにも入力されずに送信ボタンが押されたらエラーメッセージを出そう。エラーがなくログインに成功したら、会員専用のエロビデオを見せよう。
とか。
例えば、しっかり考えず適当に、登録ユーザーのプロフィール画面を開発していて、ユーザー名、生年月日、出身大学を表示させるプログラムをつくったとします。
しかし、プロフィール画面が完成した後にメールアドレスも表示させないといけないことに気がついた場合、少しプログラムの変更が必要になります。
最初から、どのデータが必要なのかを決めていれば、こうした効率の悪さは回避できます。
実際は奇麗に開発できることは少ないですが、何も考えずに開発するよりは効率的です。
大まかな機能(ログイン)→具体的な機能(ログインページの機能)→具体的にログインページがやること→必要とするデータ
という流れでサイトの機能を決めることで、自分のやることが明確になりますし、勉強すべき内容も最小限に抑えられます。
ここで、どういうデザインにするのかを決めればもっと後で楽になります。
webサービスには必ず必須となるデータベースについて知る必要があります。
僕は、mysqlを使いました。
サーバーはさくらインターネットのレンタルサーバーを使ったので、さくらインターネットのデータベースを利用しました。
各ページで必要な機能とやることを決めたら、それを実現してくれる方法を本やネットで探します。
先述のとおり、必要な機能を決めていればそれを実現してくれるもののみを探せばいいので効率的になります。
見つけたら、あとはそれを使ってやりたいことをやるだけです。
具体的にはサンプルコードやAPI、フレームワーク(ライブラリ)を探すべきだと思います。
プログラミングに慣れるまではフレームワークを使うと上手く組み込めず、それが挫折の原因にもなりそうなので、主にサンプルコードを探せばいいと思います。
プログラミングってなんのためにあるかというと、人々の生活を楽にするためです。
人々を楽にするプログラミングで、わざわざ辛いやり方をするのは最悪です。
なので、どうぞ堂々と怠けてください。他人のつくったコードを使ってください。API、フレームワークを使ってください。
プログラムを書いたらデバッグしたり、ブラウザ(htpp://localhost)で見てやりたいことができているか確認してください。
特にこのサービスには特別なことや難しいことはやっておらず、正直phpの基本がある程度わかっていれば、このサービスの基本的部分は作れてしまいます。
デザインをつくりましょう。
僕は一から自分でデザインを考えたわけではなく、他の素敵なサイトを参考にさせていただきました。
また、サイトの見た目をつくるにはhtmlとcss、時にはjavascriptを使う必要があります。
オススメなのは、twitter社の提供するTwitter Bootstrapです。
http://twitter.github.io/bootstrap/index.html
ちなみに、「飲活」は、html、css、javascript(jQuery)を使っています。
つくったサイトをみんなに見てもらうためには、外部とネットワークのあるコンピュータにアップロードしなければなりませんし、ドメインもなければいけません。
コンピュータにはIPアドレスがあり、ネットワーク上の住所となっています。これにアクセスすると、「飲活」の住所とか「はてな」の住所とかあったりするわけです。これは数字でできており、これを人間が読みやすいものにしようというのがドメインです。
hatena.jpとかnomikatsu.comとかですね。これを取得しましょう!
自分で作ったり、VPSを使ったりすることもできますが、自分で管理をしなくていいという点で楽なので僕はレンタルしています。
僕は、さくらインターネットでレンタルしています。
僕のようにドメインの管理会社とサーバー会社が別だといろいろと設定をしなければなりません。
DNS(ドメインネームサーバ)というのがあり、「このドメインのあるサーバーはこれ、IPアドレスはこれ」と教えてくれるものです。
お名前ドットコムで取得したnomikatsu.comは、さくらインターネットのサーバにあるよと設定する必要があります。
実際には、さくらインターネットのネームサーバ情報を知り、お名前ドットコムでnomikatsu.comはこのネームサーバだよと設定してあげるのです。
これで、数分から数時間でnomikatsu.comにネットからアクセスすることが出来ました。
あとはサーバーにファイルをアップロードすれば、インターネットで自分のつくったサイトを見れます。
ファイルアップロードの仕方ですが、FTPクライアントを使います。
僕は、filezillaを使いました。
filezillaからホスト名やユーザー名などを設定してサーバーに接続します。
接続できたら、指定のディレクトリにファイルをアップロードすればOKです!
とにかく作り始めましょう。
僕は、本が書いてあるサンプルコードをそのまま勉強としてやるのはオススメしません。
だって、つまらないですもん。あれは、プログラムを書いていて基本がわからなくなったときに見返せばいいんです。
最初はまず作りたいものを決めて、PHPで何が出来るのかをざっくり勉強して、それを実現するのに必要なコードややり方を見つけて、実際に動くものをつくっていってください。
やりたいことをやらなきゃ飽きますし、本のサンプルコードよりも実際にwebサイトをつくった方が覚えます。
やったことがない人が勝手に難しいと思い込んでいるだけで、意外とやってみれば難しくありません。
簡単とまでは言えませんが、正直誰でもできます。
僕の場合は何度かプログラミングを挫折しましたが、こうして一つのものをつくることができるようになりましたし、iPhoneアプリなども会社では開発しています。
こんなやつでもできるので、諦めなければできます。
そんで、とても楽しいです。
本当につくりたいものがあるのなら、一度やってみる価値はありますよ。
明記してありますが、僕は初心者ではありません。初心者の方が勉強がてらサービスを作る一つのやり方というか流れを紹介したいと思って記事を書きました。
僕自身、なにもわからずプログラミングをはじめたときは、どう勉強したらいいかわからず辛い思いをしました。
素人がわけわからずプログラミングを始めると挫折しやすいと思いまして、僕が素人の時を振り返り、そして勉強してきた経験を使って、素人の方にサービスをつくっていく流れを書いたら素人の方も挫折しにくいかと思いました。
なので、僕は初心者ではありませんが経験者として素人がサービスをつくっていく方法を書きました。
また、飲活をつくった実際の流れと書きましたが、飲活をつくった流れを利用して、初心者がサービスをつくる流れを説明したかったんです。
「まず出会いを」
危険な思考だ。
世の中をみてみれば結婚にも色々なタイプがある。友達夫婦、熱愛夫婦、セックスだけでくっついた夫婦、仲が悪いわけでもないのに別居してる夫婦、
とりあえず「問題のない夫婦」だけでも上に書いたように色々あるし(もっとあるだろう)、「問題のある夫婦」は更に多様だ。
映画や伝記で見聞を広げ、自分がどんな結婚を望んでいるのか、ゴールを明確にしよう。ゴールなのだから、
とりあえずそこに至る過程は考えない。ただ目を閉じ、十年後、二十年後を思い浮かべ、自分がどんな
結婚生活の只中にいて欲しいのか考えよう。どんな相手だろうか。自分は休日相手と何をしてるだろうか。
夢想の中の妻は生活の疲れで量の減った灰色の髪を気にして白髪染めをはじめてる。
十年後も君は相変わらずウサギのようにせわしなくセックスをしてだらしなく妊娠させて中絶させてるだろうか。
それとも子供のサッカー試合の応援に家族揃って出かけるところを思い浮かべるだろうか。
あるいは、娘のバイオリンの演奏会に夫婦で着飾って出かけるところかもしれない。
ゴールの設定が済んだら、そのゴールに向けたマイルストーンの設定をしてみよう。
まずは十年後を目標にして、1.で決めた目標を達成するには自分がどうなっていなければならないか、二年刻みで
表を書いてみよう。頭の中でボンヤリと考えるのではなく、A4の紙を取り出して横におき、線を横に引っ張るのだ。
そこに等間隔で刻みを入れる。この一つの刻みが二年に該当する。十年後のゴールに向けて、それを実現出来ているためには
何が出来ていなければならないか考えながら、右、つまり未来から順番に小目標(マイルストーン)を書き入れる。
往々にして、右端に書いた目標が「大きすぎる」ために、マイルストーンが過大な要求をしていることがある。そうなったら最初の目標をシュリンクするのだ。
・娘のバイオリンは諦めよう。ニコ生で「歌ってみた」を許可すればそれでいいことにする。
・息子が本気でサッカーにのめり込んでサッカー留学したいなどと言う前に、スポーツ留学に失敗して麻薬に溺れたスポーツ選手のドキュメンタリーを9歳の時から毎週見せる。
・妻には「白髪の君も美しい」と言うことにしよう。君は知らないかもしれないが女性の髪に掛かるお金は大きい。今から、鏡に向かって「白髪の君も美しい」と言う練習を重ね、その言葉が自然に口をついて、本心から出たものであるかのようになるまで滑らかに発音できるようにしておこう。
さて、これでマイルストーンの設定がしやすくなったかもしれない。
とりあえず現実的かと思えるマイルストーンが設定できるようになったら、君の想定年収からマイルストーンの実現性を検討してみよう。多分、君は想定している妻が専業主婦ではいられず、妻が正社員で働き続けているようにゴールの再設定をしたくなるかもしれないね。
さて、知っていると思うがこんにち子供を預けておける保育園は少ない。よほどくじ運がよかったりしないとダメだろう。そうすると、共働きなら子供が持てるという話も怪しくなってくる。
こうなってくると、マイルストーンの再設定では間に合わない。せっかく描いてもらったA4の紙はくしゃくしゃにしてゴミ箱に入れよう。いや、その前に萌え絵の練習ぐらいしてもいいかもしれない。なんせ、パルプも貴重な資源なのでなんにせよ無駄遣いはよくないしね。
マイルストーンの修正ではゴールに到達出来ないことがわかったときは、ゴールの再設定をする。
そもそも、ゴールとはなんだろうか。私は、「幸せになること」だと答えたい。
最初にゴールを設定したとき、「幸せになるには結婚が不可欠だ」と考えてゴールを決定したが、如何なる方法でもそれが実現できないとするならば、どちらかを諦めるしかない。すなわち、結婚か、幸せかのどちらかだ。私は、全ての人間が幸せを追求する権利があるということを再び強く言いたい。
それにしても、結婚と幸せが関連しているなどと、我々はどうして思い込んだのだろうか?
これに関して、進化心理学の観点から色々述べることはできるが、差し控えておこう。結論から言えば結婚は結婚であり、幸せは幸せだ。両者には何の関係もない。それを勘違いさせているのは我々の脳だ。
そして、我々は脳で幸せを感じ取る。そこで、君には「虹嫁」を持つことを提案したい。
この提案に従ってゴールの再設定をすると、十年後の休日、君は「お兄ちゃん、もう朝だよっ(プンスカ)」という声で(その声を出しているのは君のiPhoneアプリだが)目覚め、目をこすりながら軽い朝食をとり、
ラーメンをすすりながらちゃぶ台の上でもう何度見たかわからない「リリカルなのは」の映画をパソコンで見る。昔はニコニコでコッソリ流される映画で実況コメントを打ちながら鑑賞していた事もあったが、「m9って何?」という指摘を受けてから君はそっちを引退してる。
変身するシーンをコマ送りにしながら、君は呟く「やはり大画面はいいな」。
惨めなのだろうか。そういう感想を持つ人もいるだろう。しかし、男を人間ATMとしか見なさない女と暮らしているより何百倍もマシなのではないだろうか。