「エスケープ」を含む日記 RSS

はてなキーワード: エスケープとは

2020-05-23

anond:20200521175300

どもども。

「なにか作ってみろ」は有効アドバイス

わたし意見と経歴

わたしは「なにか作ってみろ」系の言説にはまったく同意しません。

わたし自身会社に3ヶ月間みっちり導入教育をしてもらい(COBOL85とPL/I時代がわかる……)、基本的アルゴリズムコントロールブレークマッチング、マスタ-トランザクションソートマージetc.いよいよ時代がわかる……)の演習を(給料をもらいながら)やって、その後もプログラムとつかず離れずでフラフラと生きてきました。

こういう経験新卒カードがあるから有効もので、では1から始めるとしたら……、というときに、プログラミングスクール専門学校)というのは悪くない選択肢ではないかと思います。が、行ったことないので正直わかりません。

実際自分が1から始めるという立場になったら、まったくオロオロして元増田さんのように世のなか(の気にいらないヤツら)に呪詛を吐いて満足するだけだったと思います(当然ながらそれをいくらやってもプログラミングは上達しません)。

「なにか作ってみる」前に動機をはっきりさせる

話をプログラミングだけに限っていえば、一番大事なのはやりかたじゃなくて動機だろうと思います

「なにか作ってみよう」というのは、なにか作ってみようと思ってない人にはまったく心に響かないでしょう。

動機リブンで「なにか作ってみた」人といえば思いだすのは、MikuMikuDance樋口優さん(ミクを簡単に踊らせたい!)とhinadanの若宮正子さん(高齢者にも遊べるゲームが欲しい!)でしょうか。

ただかれらはわたしから見れば(モチベーションを維持しそれを行動に移す)天才で、あんまり参考にならないのも確かです。

作ってみた」は就職に使える経験

あと、元増田さんの動機は「プログラミング生業にしたい」ということなので、野良プログラマでは履歴書上でのアピール力が弱いかも、と思います

ビジネスで使われるアルゴリズムにはそれなりのルールがあります安全な(バグの出にくい)コードの書きかた、「車輪の再発明」はぜず、枯れた(将棋で言えば定跡のような)アルゴリズムを使う、ほかの人に使ってもらえるための工夫(可読性の向上など)、etc.です。

「なにか作ってみよう」を繰りかえしても、そういった作法的なものが身につくかどうか、それは才能に関わってくる問題だと思います。才能だのみの手法を推奨するのは無責任だと思いますね。

また、たとえば「例をコピーして解析する」というのもある意味有効プログラミング学習法ですが、「下手に習うと下手が伝染る」ともいいます。どれがお手本として優れているか、それを見る目はある程度ビジネス用途プログラムに関わっていないと持てないというジレンマがあります

野生のプログラマ就職有効なくらいの力を見せるとしたら、なにかのコミッター(なにする人かよく知りませんが)とかになって「××ならこの人」となったり、プログラミングコンテストで上位の成績を残したりしなければいけないのかもしれません。

どうしたものでしょうね。ブクマカのみなさんの反応を見ると、専門学校でもあまり就職に有利にならない(ホントか?専門学校意味あるのか?)という話ですが、目的就職ならば、一番の近道のような気がします。

じゃあどうすべきか?は他人にはわからない

そこらへんからは、元増田さんがなにをしたいか、あるいは聞いてみたいだけだったのかによります仕事には適性とやる気が大事です。あとは年齢と必要性かな。進路はオーダーメイド以外にはありえないので、提示された案を自分で選んでそれに賭けるしかないのかな、と思います

「なにか作ってみました」の記録

自分がまず作ったもの晒してみろよ

さて、この文章は実はこの一文に反応してのものです。(↑のは前書き)

GWあたりからトシも考えずにRubyの再入門をしていまして、手始めに「首相動静」の整形ツールを作ってみました。

初心者で(Rubyに関しては仕事で使ったことないので)なにか作ってみよう、というとこの程度ですね。

これで就職に有利になるかというと、あんまりそうは思えないなあ。Excelマクロが組めるとかのほうがどこかの事務所に潜りこめそうですよ(でもそれも最近インフレ気味かもしれませんね)。

なにをするツール

朝日新聞首相動静は詳細ですが、改行が入っておらず、大変読みにくいものです。こんな感じです。

首相動静の例(2018年12月11日……話題になったものです)

 【午前】9時31分、自民党本部。33分、同党役員会。10時2分、官邸。5分、閣議。21分、宇宙開発戦略本部。34分、柴山昌彦文部科学相。38分、岩屋毅防衛相。41分、山下貴司法相。11時3分安全保障と防衛力に関する懇談会

 【午後】0時11分、政府与党連絡会議。44分、山口那津男公明党代表。1時27分、日韓議員連盟額賀福志郎会長河村建夫幹事長。2時20分、行政改革推進会議。52分、兼原信官房副長官補、秋葉剛男外務事務次官。3時36分、麻生太郎財務相財務省岡本薫明事務次官太田主計局長。4時7分、太田氏出る。可部生理局長加わる。15分、全員出る。25分、黒川弘務法務事務次官。34分、谷内正太郎国家安全保障局長、北村内閣情報官宮川内閣衛星情報センター所長。41分、谷内、宮川両氏出る。5時3分北村氏出る。10分、東京永田町ザ・キャピトルホテル東急宴会場「鳳凰」で中曽根康弘世界平和研究所設立30周年記念式典に出席し、あいさつ。20分、官邸。6時18分、ガーナのアクフォアド大統領を出迎え。記念撮影。19分、儀仗(ぎじょう)隊による栄誉礼、儀仗。27分、アクフォアド大統領会談。7時12分、署名式、共同記者発表。32分、公邸首相主催の夕食会。8時43分、アクフォアド大統領見送り。9時、ヨルダンのアブドラ国王電話協議

首相動静フォーマット

ただ、これはフォーマットがはっきりしており、

  • 午前と午後はそれぞれ1行になっていて、行頭には【午前】/【午後】という文字列が付いている。
  • 午前と午後の間には空行がある。
  • ひとつひとつイベント時刻表示で始まり句点「。」で終わっている。
  • 時刻は「h時m分」型で、前ゼロはつかない。後にかならず読点「、」が付く。「h時」の部分が前の項目と同じ場合には省略する。
  • 午前いっぱい、午後いっぱいの予定の場合には時刻をつけない(他の首相動静から)。

と、例を見るかぎりキッチリとしたルールに則っているようです。

動機

なので、「これだったら整形できるかも」と思い、再び学びはじめたRubyで整形ツールを作ってみることにしました。

整形ツール
ツール仕様
整形後の例(上記動静を整形)

【午前】

09時31分、自民党本部

09時33分、同党役員会。

10時02分、官邸

10時05分、閣議

10時21分、宇宙開発戦略本部

10時34分、柴山昌彦文部科学相

10時38分、岩屋毅防衛相

10時41分、山下貴司法相

11時03分安全保障と防衛力に関する懇談会

【午後】

00時11分、政府与党連絡会議

00時44分、山口那津男公明党代表

01時27分、日韓議員連盟額賀福志郎会長河村建夫幹事長

02時20分、行政改革推進会議

02時52分、兼原信官房副長官補、秋葉剛男外務事務次官

03時36分、麻生太郎財務相財務省岡本薫明事務次官太田主計局長。

04時07分、太田氏出る。可部生理局長加わる。

04時15分、全員出る。

04時25分、黒川弘務法務事務次官

04時34分、谷内正太郎国家安全保障局長、北村内閣情報官宮川内閣衛星情報センター所長。

04時41分、谷内、宮川両氏出る。

05時03分北村氏出る。

05時10分、東京永田町ザ・キャピトルホテル東急宴会場「鳳凰」で中曽根康弘世界平和研究所設立30周年記念式典に出席し、あいさつ。

05時20分、官邸

06時18分、ガーナのアクフォアド大統領を出迎え。記念撮影

06時19分、儀仗(ぎじょう)隊による栄誉礼、儀仗。

06時27分、アクフォアド大統領会談

07時12分、署名式、共同記者発表。

07時32分、公邸首相主催の夕食会。

08時43分、アクフォアド大統領見送り

09時00分、ヨルダンのアブドラ国王電話協議

う~ん、見やすい!ことないですか?

あと、午後の時刻を24時間制にしたいな、とも思いますが、それは今後の課題(つぎに首相動静話題になったとき)とします。全角数字計算ってどうやるんだろう?

ソース

たぶんRubyistにいろいろ突っこまれると思うけど、こんな感じです。

プログラマ玉石混淆ですが、これは石のほうの例だと思っていただければさいわいです。

はてな記法にはシンタックスハイライトあるけど、増田だとInternal Server Errorになるのではずしました。見にくくてスマソ。

# encoding: utf-8
# 漢字コンバータライブラリを取りこむ(String漢字変換メソッドを付けてくれる。神)
require 'kconv'

# 正規表現パターン
# 時刻をh時m分形式からhh時mm分形式にする
# 否定後読みを使用する
# 時は行頭にある
OneDigitHour = /^((?<![0-1])[0-9]時)/
# 分は時のあとにある。このパターンマッチすると、\1が時、\2が分になる。
OneDigitMinute = /^([0-9]{1,2}時)(?<![1-5])([0-9]分)/
# 分のない、時だけの行のパターン否定先読み使用
HourWithoutMinute = /^([0-9]{1,2}時)(?![0-5]?[0-9]分)/

# 行頭のh時m分をhh時mm分にするサブ処理(これは関数といっていいの?)
def convTopHourMinute2TwoDigits(oneLine)
    # 時を変換
    oneLine.sub!(OneDigitHour, "0\\1")
    # 分を変換
    oneLine.sub!(OneDigitMinute, "\\10\\2")
    # 分がない場合"00分"を追加
    oneLine.sub!(HourWithoutMinute, "\\100分")
    # 戻り値
    oneLine
end

# 入力ファイル名前
InputFilename = "首相動静2018年12月11日.txt"
# 出力ファイル名前
OutputFilename = "首相動静2018年12月11日_編集済.txt"

# 入力ファイルオープン
inFile = File.open(InputFilename, "r")
# 出力ファイルオープン
outFile = File.open(OutputFilename, "w")

# 時刻パターンシンプルに、h時、m分、h時m分、という3パターンを結合する
# 1つのパターンで全部カバーするよりこちらのほうが見やすい。というか、脳の容量の問題で1文に書ききれなかった
jikokuPattern = /[0-9]{1,2}時[0-9]{1,2}分、|[0-9]{1,2}時、|[0-9]{1,2}分、/
# 午前/午後
ampm = /(【午前】|【午後】)/

# 午前/午後、あるいは時刻の前で改行するためのパターン
kaigyouSign = Regexp.union(ampm, jikokuPattern)

# ファイル一括読み込み
# 昔は1行ずつ読みこんでました。メインメモリが3MByteとかだったので
contents = inFile.read.toutf8

# 入力終了。閉じておきます
inFile.close

# スコープ関係から、ここでローカル変数に代入
# ※ Rubyスコープと暗黙の型には泣かされました。これに慣れるのがRubyのコツかしら
#  明示的な型宣言はあったほうがいいと思うなあ。エラー出力の理由がわからなかったりするので。
hour = ""

# デバッグ行はコメント化しています
# 時刻パターンチェックのため、コンテンツを出力してみる
# p jikokuPattern.match(contents)

# エントリを改行サインで行に分ける
contents.gsub!(kaigyouSign, "\n\\&") # "\\&"はマッチした文字列のもの。2重のエスケープ"\\"が必要

# 改行チェックのため出力
# p contents

# 入力を行で分割して各行ごとに処理
contents.split("\n") do |oneLine|
    # 午前/午後を示す開きカッコ"【"があるか
    if (oneLine =~ /^【/) then
        # そのまま出力
        outFile.write(oneLine + "\n")
        # p "午前午後:" + oneLine
        next
    # 空白行は無視スキップする)
    elsif (oneLine =~ /^[\s ]*$/) then
        # 出力しない
        # p " 空白行:<skip>"
        next
    # 行頭に「時」があるか
    elsif (oneLine =~ /^[0-9]{1,2}時/) then
        # あったら時間表示を抜きだしておく
        hour = oneLine.match(/^([0-9]{1,2}時)/)[0]
        # p "   時:" + oneLine
        outFile.write(convTopHourMinute2TwoDigits(oneLine) + "\n")
        next
    else
        # 「時」がなければつけて出力
        oneLine = hour + oneLine
        # p "普通の行:" + oneLine
        outFile.write(convTopHourMinute2TwoDigits(oneLine) + "\n")
    end
end
感想

手でやったほうが早いね

以上

2020-05-21

CSVファイル読み込ませ

成功。アホアホマンやな。俺。項目の中に半角コンマが入っとったわ。そりゃあかんやろ。全角コンマにして取り敢えず逃げた。エンマークエスケープすんだっけ?

2020-04-10

anond:20200410085812

どうでもよすぎて草

エスケープされてると文章読めないんですか?

anond:20200410085524

増田の使い方覚えてから来ような

エスケープされてるの恥ずかしいぞ

2019-11-08

戦うのもいいけれど

疲れちゃったよ

 

夢も 現実

目を閉じれば

同じ 

 

 

から

dreaming of you 

夢にエスケープ in my room

ウソも ホントウも

口を閉じれば

同じ

 

 

今の心境に近いなこれ

2019-09-27

増田><を書く方法

増田で半角の><を書くと><にされてしま

バックスラッシュでのエスケープも駄目\> \<

pre記法でもだめ

>< 

どうすんのこれ

2019-08-29

[]2019年8月28日水曜日増田

時間記事文字数文字数平均文字数中央値
005411206207.542
01293895134.364
0215105170.136
03255333213.3142
04538376.629
05522244.431
0631302297.538
0739220456.540
0869461066.846
091281133788.636
101391037674.634
111981286965.041.5
12121609250.320
13104563054.129.5
141351089080.739
151711125365.841
161671452787.039
171451014069.931
18104641661.730.5
19829005109.834.5
209410280109.433
2110016014160.149.5
221731478285.432
231101046495.139
1日224319200185.637

本日の急増単語 ()内の数字単語が含まれ記事

left(10), ミト(4), 早期教育(4), ビリヤニ(11), 真夏日(4), キャラデザイン(3), エスケープ(6), 海原(4), 運び込ま(3), あんパン(3), UberEats(4), シャンプー(10), 遺族(11), 店主(6), 凍結(5), 太もも(5), ラーメン(21), 学年(5), 回文(6), 情緒(4), 冷え(4), 公表(9), トランプ(12), 聞け(17), 去っ(7), バグ(9), 飲み物(6), 酷く(6), 学費(7), 奥さん(15), 韓国人(12), 嫉妬(15), 就活(11), 遊ぶ(10), 京アニ(12), プログラム(10), 強要(9)

頻出トラックバック先 ()内の数字は被トラックバック件数

■「小さい子供いるから」という理由お気に入りの店を出禁になった /20190827164720(19), ■妹の将来が心配 /20190827144937(18), ■🛀お前らはシャンプーなに使っているんや /20190827191513(14), ■CHAGE and ASKAみたいな単語教えて /20190827172202(12), ■飲み物テンション上げるには?【追記あり】 /20190828121321(11), ■ビリヤニ警察です。 /20190827210036(10), ■ /20190828140440(8), ■ /20190828110157(8), ■おにぎりの具のネタが尽きた /20190828224254(8), ■仕事の断り方[追加しました] /20190828141458(8), ■内申点制度はクソ /20190827195428(7), ■ラーメンマンガの多様性のなさ /20190827220734(7), ■RPGタイトル画面、剣ささりすぎ /20190815151605(6), ■触手欲しい。触手! /20190827223603(6), ■すぐに死ぬわけでもないのに /20190828103644(6), ■ハーフハーフの子供は何て言うの? /20190828164229(6), ■anond20190827164720 /20190828083347(5), ■anond20190827214325 /20190828083051(5), ■三大改名しても昔の名前で呼ばれる人物 /20190827233911(5), ■主人公超能力を持っている漫画って /20190827171221(5), ■付き合ってる女性から10歳の娘がいることを告白された /20190828164701(5), ■自律神経の敵 /20190828174220(5), ■「涼宮ハルヒキャラデザイン池田晶子」とかニュースに出てるけど /20190828175045(5), ■完全にはてな民に当てはまる心理学用語を見つけた /20190828220625(5), ■ /20190828220739(5), ■ /20190828085857(5)

増田合計ブックマーク数 ()内の数字は1日の増減

6558940(2854)

2019-08-28

anond:20190828101127

じゃあ50回くらいエスケープしといたら?

他の文字も全部!

てか、サービス止めちゃったら??

anond:20190828085236

ヘボマめ。増田にいる、低レベルで自信ばかりはたくさんある典型

うちのシステムメンバーに絡むなよなw

住所にアンパ含むと使えないシステム作ったあげく、常識ですとか言うのか?非常識さを謝れ。

二重にエスケープしてるかプレーンテキストタグ使ってるからだろ、このバグ

anond:20190828085236

「&」を「&」とエスケープするのが正しいところ

間違って二重にエスケープして「&」にしてしまっているので明らかにバグだが?

はいろんぱ

anond:20190828083051

いやバグだろ

&が実体参照化された上で更にhtmlエスケープされてんだぞ。有料の仕事ユーザが思った通りの文字表現できないってそれで企業に納品できるの?

2019-08-22

anond:20190822112827

エスケープ文字使わない&は読まないのでは?

’&’とか¥&とか

2019-07-16

田舎者は知らないだろうけど満員電車通勤戦略重要

満員電車でも、乗車率場所により上下がある。降りる駅によって率は変わる。

知られていない、いくつかの技を紹介する。

・満員幻影(ファントムフルネス)

割と初期段階の戦略で、人が少ない時に使う技。見知らぬ他人との意思疎通、協力が必要

入り口に数人で立って、満員でこれ以上乗れない事を演出する。これによって乗車率を下げる。

幻影なので、入ろうとすると勝手に避けてくれる。

離脱謝罪(リムーブムーブ)

すみません降ろしてください」

と言う事で、戦いから降ろしてもらうことができる。

・雨季吐瀉(レイニーバーフ)

6月7月の蒸し暑い時期、気分が悪くなったお客様離脱謝罪が失敗し、満員電車ゲロまみれになる事。

もらいゲロが起きるとバイオハザードと呼ばれる。

台風ノ目(エスケープアイ)

入り口付近は混むので、入り口から一番遠いところに陣取る。意外と空いてることが多い。

ここが閉じてる時は諦めよう。

・定置記憶(シッティングメモリー)

始発組の顔と降りる駅を覚えて座る

2019-06-16

anond:20190616040143

うん、それでいいと思ってる

そうしないと多分認証とか大変そうだから・・・とは思ってるんだけど、どうもとっかかりがむずかしい

はてなブックマークエントリー情報取得API

API使用解説

http://b.hatena.ne.jp/entry/json/任意URL(この任意URL では # を %23エスケープする必要があります) を GET リクエスト送信することにより、JSON 形式データを取得することができます

例:) http://b.hatena.ne.jp/entry/json/http://www.hatena.ne.jp/

例:) http://b.hatena.ne.jp/entry/json/?url=http%3A%2F%2Fwww.hatena.ne.jp%2F

これURL部分にhttp://b.hatena.ne.jp/entry/json/https%3A%2F%2Fanond.hatelabo.jp%2Fほげほげ%2Fでアドレスバーいれてエンターしてみたけど、nullしか返ってこなかった

ローカルでも簡単いかなさそうでげんなりしてる

2019-06-11

送信から送られた文字列をhtmlspecialcharsでエスケープした気でSQL文にそのまま組み込んでた社内ライブラリをプリペアステートメントで幾分かセキュリティ向上させたものにしても給与は向上しない

2019-04-08

人は急に死ぬ

2019年4月8日、私の好きなバンドの一つであるヒトリエボーカル/ギターを務めていたwowakaが亡くなったと発表された。

かのぼれば私が二次元オタクになった最初きっかけはボーカロイドだった。世代だったと一言いえば済む話だが、私は中学二年生の頃に初めてインターネットという世界に触れ、ボーカロイドを知りそこからずぶずぶとネットの海におぼれていき、現在では息の仕方を忘れるほどになっている。そんな話は置いておいて、そのボーカロイドと触れ合う中で知ったのがwowakaという作曲家だった。しかし私がはまり始めたころには彼はちょうどその世界からは離れ始めていたころだったように思う。それから様々なボーカロイド楽曲に触れあいはしたけど、初めて曲を買おう思ったのは彼の『アンハッピーリフレイン』だった。CDの買い方を覚えてからは少しづついろいろな曲を買ったけれど。

そんなこんなでwowakaの新しい楽曲を聞けなくなったころ、私は一つのCDジャケットに惹かれてジャケット買いをしようと試みる。でもやっぱり慎重派なのでどんな人が作っているのかを調べてみるとwowaka文字があった。ヒトリエの『ルームシックガールエスケープ』だった。衝撃だった。彼はボーカロイド使用をやめ、自分で歌い始めていたのだ。すぐに買うことを決め家に帰ってCDを聴いた。その時初めて人間(ボカロ以外)のCDを買った自分にはそれはとても新鮮で新しい酸素がどんどん入ってくるみたいだった。いままでのボカロが歌っていた曲はあくまボカロで、本来の彼の音はこの音なのだと思った。それからというものヒトリエというバンドの音が好きになり、そこから他のバンド曲も聞き出した。私にとってwowakaという人間は私の音楽の様々な部分を踏み出させてくれた人間だった。

バンド好きな人からしたらライブに行くのは当たり前かもしれないけどやっとインターネットを使い始めたり、CDを買い始めたりとやっと人生の楽しみ方を知りだした人間にはまだハードルが高かった。世間知らずなのでいまだに様々なものチケットを取るということが理解できていない。それでも彼らの曲がCD音源として聴けるだけで私はすごくうれしかった。彼らの音が聴けていればよかった。

なのに彼らの音が急に聴けなくなった。いや音源的な意味で言えばCDは残っているので間違っているのかもしれない。でも私にとって音を聴くということは彼らが新しく作っていく進化していく曲を聴くことだとも思う。あまりにも急だった。こんなことな自分知識の無さを言い訳にせずライブに行くべきだった。私は馬鹿だ。

あなた歌声聴くと確かにあなたがそこにいる。生々しいくらいに。私はこれからあなたの声を再生するしかできない。

2019-04-04

anond:20190404134108

煽りに聞こえてたなら申し訳ない。確かに余計なことを書いたけど、ユーザから入力を受け付けるシステム(ここでは増田)ではコマンドに使われるような記号安全のためエスケープされるということをすぐに理解するのは無理でもいつかわかるといいと思って書いてしまった。

下手にジャンプを書いたらコードスパゲッティになるとか書こうかなーとは思ったけどスルーした。それに関数周りの話はもっとコンパクトでよかったね。

最後に、Ruby選択したのは日本語問題が滅多に出ない、その一点。Pythonも3ならまず問題ないと思うけど、2系は割と問題が出る。もうみんな3系に移行してると思うけど、もし2系を使ってしまう罠があったらと思った。Mac最初インストールされてるpythonも2.7だし。

こうすればプログラミング覚えられるよ【随時追記

プログラマじゃないけどプログラミング完全に理解した()おばさんが理解してる基礎知識書くよ。

追記 この文章プログラミング勉強をしたいけどその周辺にある基礎知識になかなか触れる機会がない人向けに書きました。これらの基礎知識があると、困ったときに調べ方すら分からないという状況は回避やすくなるはず)

まずLinuxUnix系OSの使い方。

ターミナル、いわゆる黒い窓からCUIコマンドユーザーインターフェース)でコンピュータを使う方法を覚えよう。これは大学コンピュータリテラシーで習った。MacOSXで復習すると捗った。(追記 すごく間が抜けてたけどMacOSXUnix系OSです)

まずはファイル操作Macターミナルを使って、cd Desktopって打ってからecho ohayou > aisatsu.txtって打ってみて、cat aisatsu.txtってやる。そうすると何が表示されるのか?とりあえずやってみよう。ここで>は増田の都合上大文字全角にしてるけど、ちゃんと半角にしてね。なんで増田の都合上半角がダメなのか、そのうち想像できるようになろう。(追記 ブコメ指摘感謝

そして、実際にデスクトップを見に行ってみると、aisatsu.txtってファイルがあるはずなんで、開いてみよう。これで何が起こったのか7割くらいはわかるはず。

こういうファイル操作の基本をまず覚えよう。これこそ空気みたいなものから

追記 ここも間が抜けてたけど確かにhogeって何かわからいね。直しました)

次に文字コードバックスラッシュの話。

最近は何も考えなければ文字コードはとりあえずUTF-8でなんとでもなるようになってるけど、バックスラッシュとかは環境設定で出てくるように設定しないと出てこないし、その意味合い、つまりエスケープとしての使い方を頭に入れておくと後々困らないと思う。あとEOF(エンドオブファイル)とか改行コードとかもそういうものがあるよ程度には覚えておこう。これ頭の片隅にはいってないと分からん殺し的な罠にはまることがある。

次にプログラミング環境の構築の仕方。

これは使いたいプログラミング言語公式サイトに行くと大抵書いてある。

でもMacだとだいぶ楽。とりあえずターミナルからgccって打ってみるとなんかCUIツールとか書いてあるものインストールしろって言われるのでインストールする。これだけでCとかC++とかRubyとかPythonとか一通り使えるようになる。もしかしたら最近はこのインストールすらいらないかもしれないけど。

あと、シェルコマンドとかプログラミング言語を実際に使うときはいろんなライブラリインストールする必要があるけど、そのライブラリ管理がすごく面倒なので管理をまとめてくれるコマンドがあったりする。aptとかhomebrewとかがそういうのだから、そんなものの使い方も覚えておこう。

追記 言語文法を追うだけなら環境構築なんてしなくてCloud9とか使ってもいいかもだけど、プロダクトを作ろうとした時にはまだまだ手元で環境作って必要ライブラリを入れてとやった方が後々応用がきくと思うのですよ。それにそうしていくとDockerの有り難みなんかも理解できるようになっていくのではと思います

最初勉強するプログラミング言語は、Javaだけはやめておけ。

なんでかっていうと、Javaオブジェクト指向言語ってやつなんだけどオブジェクト指向的にしか書けないから。古い人間だと言われそうだけど、最初手続き型言語から始めるべきだと思ってる。少なくとも、手続き型的に書ける言語から始めるべき。

なぜそう思うのかも含めて、とりあえずおばさんが理解しているプログラミング言語の発展の経緯を軽く解説する。

最初の頃のプログラミング言語は、手続き型と呼ばれるものが多かった。

この〇〇型ってのはプログラミングをするときの考え方によって名前がついているんだけど、手続き型はまず0を作って、0に1を100回足して、最後にその結果を表示してください、みたいな、上から書いた順番通りに動くのが基本のルールである考え方。プログラムは基本的にはこうやってデータアルゴリズムを使って変化させていって望む結果を得ている。でもこのやり方は問題も多かった。プログラム全体がひとかたまりになってしまっているので、数千行とかになるともう普通の人では手がつけられないし、人間ミスデータを間違って扱ってしまうことがバグの温床になった。

なので、この手続き型の考えに構造化という考えが加わって、関数というものが生まれた。関数っていうのは料理レシピに例えるとわかりやすいかも。

関数が無い状態だと、

1:玉ねぎをくし状に切ります

2:キャベツをざく切りにします。

3:豚こまに塩胡椒で味付けをします。

4:フライパンを火にかけ、油を入れて熱します。

5:豚こまを入れて色が変わるまで炒めます

6:玉ねぎを入れます

7:キャベツを入れます

8:野菜がしんなりするまで炒めます

9:火を消して8をお皿に盛り、野菜炒めの出来上がりです。

と書いていたものが、関数がある状態だと、

A:野菜を切ります

Aのやり方1:玉ねぎをくし状に切ります

Aのやり方2:キャベツをざく切りにします。

B:肉に味付けをします。

Bのやり方1:豚こまに塩胡椒を振ります

1:フライパンを火にかけ、油を入れて熱します。

2:Bを入れて色が変わるまで炒めます

3:Aを入れてしんなりするまで炒めます

4:火を消して3をお皿に盛り、野菜炒めの出来上がりです。

って書ける。ここではAとBが関数

この程度だとあまり意味を感じないかもしれないけど、これがもっと複雑なもの想像してみると、なんとなくありがたみが分かって来ないだろうか?こうすると、多人数でプログラミングをするときに、Aを書く人、Bを書く人、1〜4にまとめる人って感じで作業分担ができる。それに、バグが起きた時もAの領域バグったのか、Bの領域バグったのかとか、全体にまとめると上手くいかないのかとか、原因の切り分けがやすい。

でも、プログラムがとっても複雑化すると、これでも手に負えなくなる。料理の例えを拡大すると、料理店を運営することを考えるといいかも。

料理店でたくさんの料理をさばくときに、レシピを完全に1から作ることってないと思う。Aさんが野菜の仕込み担当、Bさんがスープの仕込み担当、というように各人に仕事が割り振られているはず。AさんもBさんもそれぞれの仕込みのレシピを持っていて、最終的に出てくる仕込みがちゃんとしてればAさんBさんの仕事の詳細までいちいちシェフが細かくチェックしない体制になっていると思う。大雑把にいうとそういう考え方をプログラムで再現したのがオブジェクト指向言語

なので、本気で料理初心者がいきなり厨房の仕切りを任されて上手くいくのは難しいように、構造プログラミングのありがたみすらわからない段階でオブジェクト指向プログラミングに手をつけても意味わからんだろうと思うのがおばさんの立場です。

追記 おばさんはRubyを勧めておきますオブジェクト指向言語ですが、手続き型的に書き下すことも出来るからです。一つの言語手続き構造オブジェクト指向、全部勉強できますメソッドも便利なのが一通りあるし、日本語を扱うのにも問題が少ないです)

次に問題を分解できるようになろう。

例えば、クイズゲームを作りたいと考えたときクイズゲームを作りたいです、って問題は大きすぎる。

クイズゲーム必要な要素は、問題文を表示する、回答を入力してもらう、正誤判定をする、正誤判定の結果を表示する、ということだなぐらいにまず分解する。

これを実際にプログラミングしようとすると、もっと分解できてさら問題が見えてくると思う。

コンピュータってのは創造的なことはできない代わりに、とても簡単なことをとても階層的に重ね合わせて大きな問題を解けるように作られてる。それを心するといいと思う。

からないことは調べられるようになろう。最後はこれ。

これ超大事プログラミングって本当に自分で1からものを考えなきゃいけないことってあまりない。大きな問題あなただけの問題かもしれないけれど、それを構成する小さな問題は大抵他の誰かが解いている問題なので、調べてみれば答えが見つかると思う。

エラーメッセージが出てきたらまずググってみる。翻訳しても初心者には意味がわからないし、ググったら誰かが解説付きで紹介してくれているのでその解説を読んだりしながらエラーメッセージとの付き合い方を覚えていけばいい。

メソッドの使い方がわからなかったら言語公式サイトに行ってみる。メソッドの使い方で大事なのは呼び出し方、返ってくる値の型とかそういうのだから、こういうところはググるよりも公式サイトに書いてあることをしっかり読んで理解する。

あと、アルゴリズム勉強もしてみるといいと思う。アルゴリズムデータ構造計算量の勉強大学学部レベル教科書ちゃんと読んでみると、例えばデータベースを操作するSQLというものを書くことになった時とかに効いてくる。あとは作ったプログラムが遅すぎてどうしようとかいうのを解決する時とか。

なんか深夜までいろいろ書いてしまったけど、あくまでもプログラマじゃないおばさんが書いたものなので、みんなでツッコミとか入れてくれると大変助かります

増田怖いよツッコミ怖いよ、もちろんおまんじゅうも怖い。

2019-03-02

脱出ゲーの面白さがわからない

ゼロエスケープはじめた

シボウデスの頃からもっといやあパソコンやらアイフォンアプリやらで脱出ゲーフラッシュとかが少しはやってたこからおもってたけど、

おれ脱出ゲー嫌いだわ

楽しくない

めんどくさいとしか思わない

極限脱出シリーズ脱出ゲー部分はゴミだと思ってるもん

俺はただ打越鋼太郎ストーリーが読みたいだけなんだよ

余計なげーむをやらせんなよ

と思ってしま

それにしてもシボウデスやったのが数年前ってことと999を未プレイなせいかキャラがまったくわからん

すげー途中から始まってる感じでキャラ同士の関係やら会話についていけねえ

シボウデスのときはここまでなかったと思うんだが

かといって999を今更やるのもなあ・・

2019-02-25

anond:20190224184457初級編をはてなに当てはめてみると

30年経って何の変化もないのか、予言に近づいていったのか

1 いない ほとんど見かけなくなった

2 いる すごく多い

3 いる はてなはこればっかり

4 いる 増田のツリー当人無視して伸びてゆく

5 いる 派閥間抗争をしている

6 いる はてなはこれでもっている

7 いる エスケープシーケンスhtmlタグに変わっただけ、色より大きさで主張する人が多い

8 いない ヤフオクメルカリ住み分けられた

9 いる 礼はともかくその後どうなったかの報告もない

10 いる はてブ使い捨てられたIDだらけ、ブロックが追いつかない

11 いる そこまでレベルが高くないことも多い

12 いる うんこ

13 いる 再投稿は甘え、自分で再投稿してないのに増えてることも

14 いる はてなの燃料

15 いる はてなの本質

16 いる はてな民意

17 いる 何年も同じ話題を繰り返している

18 いる 近頃はややこしい

19 いる 運営側も打っても響かなくなってる

20 いる

9割遵守されている

はてなが元々ネットの掃き溜めとしてデザインされているのかも

2019-01-07

機械が処理するデータで半角の記号を使うのって躊躇するよね

¥とか.とか!とか?とか

本当にちゃん入力されるんだろうかと心配になる

エスケープされたとしてもエスケープ記号まで1文字と数えてないだろうかと心配になる

2019-01-02

[]

昼に起きた

ゲオ安売りしてたなーでも別に欲しいものなかったしなーと思ったけど、

チラシみたら地球防衛軍5が税抜き2980だったからまじかよと思ってダッシュで買いに行った

でも家から近いゲオは売り切れ

つーか在庫なす

家かえって遠いゲオ電話して在庫あるってきいて、

仕方なく遠いゲオまでひーひー言いながらいった

雨も軽くぱらついて散々だった

遠いゲオには10子くらい在庫あってすごかった

他にも買うかなーと思ったけど、デトロイトは2980でそこまで安くなかったし、ドラクエヒーローズ1はつまんないらしいし、逆転裁判5は微妙そうだしやるなら4からやりたいし、仁王は難しくてストレスマッハになりそうだし、ゼロエスケープイベント飛ばせないし脱出ゲー好きじゃないしでもストーリー気になるけど

って感じだったから、とりあえず当初の地球防衛軍だけ買った

レジメガネのにーちゃんディスクの扱いがすげー雑で見ててイライラした

スリーブから出すときに盤面を指でつまむし、ケースにはめこむときディスク全体に均等に力がわたってディスクがいたまないようにとかい配慮が一切なくディスクはしっこを無造作に押してたし

こりゃうん悪けりゃマジで返品コースかもとオモタ

そのあと近くのブコフについでにいった

ペルソナ5とかげお298だったから下手すりゃせどりできるかもと思ったか

でもブコフでも398で、つーことはうっても よくて2000だからせどりどころか大赤字だって思ってやめた

ラノベコーナーが小説からマンガの横に移動してた

しっかしゲオ安いなー

他に競争相手いないのによくこんなに頑張れるわと思ってしま

昔みたいにゲームショップがたくさんあったときならまだしも・・・

さて明日、もうきょうか、は、ff15の999がめぼしい

半額で買えたらラッキーだけど、あと2本1480円以下ソフト見繕うのがめんどすぎる

買っても当分やんないだろうし無理してかわなくてもいっか

閑話休題

帰って地球防衛軍やる

4.1クリアしたばっかで連続EDFなのに全然飽きなくて楽しい!!!

なんか地味に快適度上がってるし!

こりゃまた2,3日ははまれそうだわー正月いっぱい

ログイン ユーザー登録
ようこそ ゲスト さん