X



ぶっちゃけ始めるのにいい言語て何?
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2020/03/03(火) 17:17:13.89ID:VgWTKanI
ぶっちゃけていいよ
0132デフォルトの名無しさん
垢版 |
2020/03/13(金) 18:35:24.03ID:SdgZi2lA
フリーランスで月100万稼ぐ人が、初心者は(何でもいいんだけど)文法が簡単だから
とりあえずRubyで、と言ってたからRubyでいいんじゃないかな
要はC++とかじゃなければいいのではないか
0134デフォルトの名無しさん
垢版 |
2020/03/13(金) 19:54:56.80ID:1BdG/sXQ
フリーランスで月100万って本当に大したことないぞ?やってみりゃ分かるけども。
サラリーマン換算で月30万台じゃないか?ボーナスは含まず。
これで月毎に変動だぞ。
0135デフォルトの名無しさん
垢版 |
2020/03/13(金) 20:34:06.86ID:yORqQ+vG
Ruby は可読性が高いから、紛れがない。
Python, JavaScript は、Ruby の3倍掛かる!

フレームワーク・Rails を使って、アプリを仕上げる。
アプリ製作の全工程を、Rubyで覚えるのが基本!
0136デフォルトの名無しさん
垢版 |
2020/03/13(金) 21:45:01.15ID:1gFsIjGl
初心者がすぐにRailsに飛びつくのは勧められないが
Rubyから始めるのと学習効率が高いのは間違いない

20近くの言語を学んできたが
初心者に戻ってどの言語から学びたいかと聞かれれば
迷うことなくRubyって答える
0137135
垢版 |
2020/03/13(金) 22:05:48.22ID:yORqQ+vG
YouTube の雑食系エンジニア、KENTA も言ってる

将来、AI などを始めたいからと言って、Python から始めるのは間違いです!
初心者は、Ruby でプログラミングを覚えるべき

初心者は、言語の文法よりも、プログラミング自体を学ばなければならないから、
できる限り、可読性が高く、紛れがない言語を選ぶべき

そこでプログラミングのデザインパターンを覚えてから、他言語へ行くと、
他言語の文法だけに集中できる

アプリの作り方は、どれも同じだから
0139デフォルトの名無しさん
垢版 |
2020/03/13(金) 23:58:13.45ID:1gFsIjGl
HTML/CSSをすでに理解してる人は
ブラウザでJavaScriptから学ぶのもいいと思う

JavaScriptでもNode.jsから始めるのは
Ruby/Pythonに比べると少しハードル高い
0141132
垢版 |
2020/03/14(土) 00:05:52.43ID:PZhKPfiu
>>133
その人は別にPythonを否定してはいないよ
RubyでPaizaの課題をやったら後は自分の都合に合わせて選んでね、というニュアンス
0142デフォルトの名無しさん
垢版 |
2020/03/14(土) 00:45:19.95ID:Rm16y0UE
江添亮さんって職質食らって切れて裁判起こした人でしょ(笑)
人格的に問題抱えてそうな人の発言はちょっと微妙
0143デフォルトの名無しさん
垢版 |
2020/03/14(土) 06:10:53.18ID:gV6D4u67
>>1
Scratchだな
その目の前のブラウザさえあれば、何もインストールしなくても始められる
0146デフォルトの名無しさん
垢版 |
2020/03/14(土) 09:37:30.40ID:o8m3ZWoY
>>142
他人の話を聞かずに独善的なタイプに見えるな。まあ人格と純粋な技術的な部分は切り離して、著書の中でもそいつの主観に関わらないところは参考にしていいと思ってる。
0147デフォルトの名無しさん
垢版 |
2020/03/14(土) 10:08:30.75ID:SWe9uEe5
>>138
ケンタとやらは知らないけど、いろんなスレで迷惑かけて非難されまくってるのにまったく変わらない>>137はキモイと思う
0150デフォルトの名無しさん
垢版 |
2020/03/14(土) 12:19:35.62ID:ZeKcOEI3
結局自分がやってる言語は将来があると思いたくなるけど、何も確かなことはないんだから、言語そのものの仕組みを勉強して新しい言語学ぶハードル下げたほうがいいよね
0152デフォルトの名無しさん
垢版 |
2020/03/14(土) 16:32:32.18ID:ILPzjwAA
>>40をブレイクダウンして
初心者向き言語に求められる特性を上げるとこんな感じ
将来性とかは正直どうでもいいと思う

1. 初心者がプログラミングとはどういうものなのかを効率よく理解するために必要な特性
- 初心者にとっての言語仕様の理解しやすさ
- チュートリアルのわかりやすさ
- リファレンスのわかりやすさ・探しやすさ
- 良質な情報の豊富さ、定番サイト/書籍の有無
- コーディング時の思考ノイズの少なさ・目的の達成しやすさ
- 付随して学ぶ必要がある知識エリアの少なさ
- コミュニティ/ユーザーフォーラムの親切さ

2. 自分にとって役に立つ小さなプログラムを繰り返し作って形式知を暗黙知化するために必要な特性
- 導入/環境構築のしやすさ
- REPLやパッケージマネージャなどの開発道具の使いやすさ/わかりやすさ
- エラーメッセージのわかりやすさ
- 特定のエラーに対する対応策の見つけやすさ
- デバッグのやりやすさ・テストのしやすさ
- コンパイル/ビルドの速さと容易さ
- 初心者が試すべき基本機能の使いやすさ(テキスト処理/コレクション処理/ファイルIO/Webアクセス等)
0153デフォルトの名無しさん
垢版 |
2020/03/14(土) 16:57:01.08ID:ILPzjwAA
今日Pythonスレであった例だけど

v=[1,2,3]
[c=c+1 for c in v if c==1]

↑これを実行すると↓このエラーが出る

File "script.py", line 12
[c=c+1 for c in v if c==1]
 ^
SyntaxError: invalid syntax

文法エラーなのは分かるけどエラーメッセージからは
なんでinvalidなのかどう対処したらいいのかわからない
これだと初心者はリファレンスのどこを調べたらいいかわからないだろうし
エラーメッセージでググっても同じ原因でエラーになってるものを見つけるのも難しいと思われる

エラーメッセージの親切さは初心者じゃなくても重要なんだけど
特に初心者にとっては学習効率を左右する大きな要素なので
最初に学ぶ言語を選ぶ時はよく見極めたほうがよい
0154デフォルトの名無しさん
垢版 |
2020/03/14(土) 17:34:21.62ID:JKHuUiBu
まず既存のコードのメンテでそういう間違いのコードを見る機会はない
自分で書いたなら自分でそれくらいデバッグできんでどうすんの(「リスト内包」でググるくらいしろ)
自分で書いて急ぐ必要があるならfor文で書き直すことを考えろ
で、話は終わりだ
0156デフォルトの名無しさん
垢版 |
2020/03/14(土) 17:55:52.61ID:o8m3ZWoY
>>153
その質問、質問者自信は内包表記に代入がかけないことは分かった上でこういうことはできないの?って質問だったな。
この例では構文エラーの位置を具体的に示してくれてるんだからエラーメッセージとしては十分分かりやすい方だろう。ユーザーの意図を正しく解釈して適切なメッセージを提示するのは限界がある。
C++のテンプレート絡みのエラーやかなりひどいが、それ以外ならどのメジャーな言語も大差ないんじゃね。
0157デフォルトの名無しさん
垢版 |
2020/03/14(土) 18:59:15.28ID:ILPzjwAA
>>154
初心者が初級者になろうとして学習してる時に試行錯誤してるコードの話だよ

「リスト内包表記 代入」ってキーワードが思いつけば
代入はできないってことはすぐ分かるだろうが、なんでできないのかはすぐには分からないんじゃないかな
それにリファレンスを調べずにググってQiitaやブログの記事を鵜呑みにするのは
初心者に限らずダメなやつの調べ方で学習効率が低い
0158デフォルトの名無しさん
垢版 |
2020/03/14(土) 19:07:18.95ID:ILPzjwAA
>>156
エラーが出るから自分のコードが間違ってることは理解してるだろうけど
代入できないことを理解してたかどうかはわからない
少なくとも代入できない原因はわかってなかったんじゃないかな

テンプレートとかマクロ関連とかで
わかりにくいエラーメッセージしか出せない状況があるのは理解できるが
このケースはそうじゃないよね?
文法エラーでinvalid syntaxとだけしか分からない言語って
最近そうないと思うんだけど
0159デフォルトの名無しさん
垢版 |
2020/03/14(土) 19:09:25.52ID:ILPzjwAA
>>155
個人の感想で言えば
C#(その他.NET言語)、Ruby, Rust, Elm

静的言語のほうが有利な面はあると思う
0160デフォルトの名無しさん
垢版 |
2020/03/14(土) 19:42:33.80ID:R7iBZnY8
python 3.8から代入式使えるぞ!
:= だ。
勉強になったな!
0161デフォルトの名無しさん
垢版 |
2020/03/14(土) 20:23:53.45ID:JKHuUiBu
>>158
いや普通代入しようと思わんだろうし、あんなエラー踏むこと自体ねーよ。
コピペでプログラムしてもああならん。
本気であれを書いてなおかつ直せないんだったらプログラムをやるべきじゃない。

所詮は脳内で考えた素人コードだわ。
0162デフォルトの名無しさん
垢版 |
2020/03/14(土) 20:41:55.30ID:eph4O7WW
脳内で考えた素朴な素人コードが動かないんなら始めるのにいい言語ではないな
0163デフォルトの名無しさん
垢版 |
2020/03/14(土) 21:00:46.67ID:EZnfjiau
RubyやPythonが簡単なのは間違いないけどだからと言ってJavaScriptを差し置いて初心者がやるべき言語とはならないだろ
特にRubyやPythonはIT初心者にとっては大事な要素であるWindowsと相性が悪いっていう致命的弱点があるからな
その点jsはブラウザさえあればすぐ動くしWindows化においてもGUIアプリ作れちゃうしな
0164デフォルトの名無しさん
垢版 |
2020/03/14(土) 21:20:25.70ID:jI+WJaIx
よくわかんないけどRubyやるわ
0167デフォルトの名無しさん
垢版 |
2020/03/14(土) 23:10:31.62ID:R7iBZnY8
まあ初心者にはインストールが一番の難関だもんね…
0168デフォルトの名無しさん
垢版 |
2020/03/14(土) 23:41:05.53ID:ChiCBkOA
>>163
プログラム初心者にGUIのコーディングさせるつもりなのマジで草生えるんだが
初心者でどうしてもGUIが必要ならコーディングレス開発の一択だし
習熟目的ならCUIでやる以外の選択肢ないよ
0169デフォルトの名無しさん
垢版 |
2020/03/14(土) 23:59:50.35ID:ILPzjwAA
>>163
ブラウザのJavaScriptだと何か実用的なことをしようとすると
HTML/CSS/DOM/HTTPもほぼ必須で学ぶ必要があって
馴染みのない人にとってはそれが結構重い
逆にHTML/CSS程度はすでに理解してるという人はJavaScriptオススメ

RubyやPythonのWindows環境での使い勝手はWSL + Windows Terminalで状況変わって来てる
WSLすら難しいってレベルの人は
最初は簡単な入出力機能のあるオンラインエディタでもいいんじゃないかな
0170デフォルトの名無しさん
垢版 |
2020/03/15(日) 00:19:11.51ID:b9Qsc7j/
Python は、Guido も批判しているように、内包表記で時間を取られる。
それと、引数に、self がついてまわる

それと海外では、Julia の認知度が100% だろ

SASS もそうだった。
海外で100% だった時に、日本では、ほとんど知られてなかった。
でも今は、50% ぐらい知られている

Python, JavaScript では、偽が10種類ぐらいある。これがやっかい。
空配列・空文字列とか、色々な型で、偽となるものがあるけど、
Ruby では、nil・false の2つだけ

Python, JavaScript では、関数の外側のローカル変数が、内側に入り込む

Ruby では入らない。
関数スコープは強固だけど、ブロックスコープには入り込む。
C のように、関数・ブロックという2つのスコープを持つ

Python では、高卒プログラマーの仕事がない。
高学歴のノンプログラマーが使うイメージ

プログラミングで、どうにかなる感じではない。
Rubyでは、OS を学んで、サーバー側へ行ける。
Go へ進んでもよいし
0171デフォルトの名無しさん
垢版 |
2020/03/15(日) 00:32:40.03ID:b9Qsc7j/
Ruby でも、MSYS2/MINGW は、日本語でバグル・日本語入力できなかった。
それが、WSL では、日本語でバグらない!
WSL の登場で、次第に、Windows 版のRuby Installer は、使われなくなっていく

それに、VSCode の拡張機能、Remote WSL が出たから、
Windows 10 では、Ubuntu 18.04 が標準になる

rbenv という、Rubyのバージョンマネージャーを、Linux側にインストールする

rbenv のトップページを、Chrome で、日本語に翻訳して読む
https://github.com/rbenv/rbenv

Basic GitHub Checkout の所の、rbenv-installer のリンクから、rbenv-installer のページへ移動する
https://github.com/rbenv/rbenv-installer#rbenv-installer

rbenv-installer の説明通りに、以下を実行する

curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-installer | bash

このシェルスクリプト内では、Mac のHomebrew または、Windows なら、git を使っている

~/.bashrc に環境変数を追加して、
最後に、rbenv-installer のページのrbenv-doctor で、再チェックする

curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-doctor | bash
0172デフォルトの名無しさん
垢版 |
2020/03/15(日) 00:50:27.41ID:CE9w6MSu
Rubyについて5chで質問すると、ボットみたいに同じ言動を繰り返しおかしな日本語で的外れな回答する奴に絡まれるから、初心者には勧められない
0173デフォルトの名無しさん
垢版 |
2020/03/15(日) 03:11:01.73ID:xrGBHzYH
>>172
いろんなスレで「Ruby では…」って突然Rubyネタ披露する人もそうだね
なんで必死にRuby推しするのか知らないけど却ってイメージ悪くしてるよ
0174デフォルトの名無しさん
垢版 |
2020/03/15(日) 03:37:27.61ID:3o1DpNlP
大学行ってた頃、一般教養の情報の講義ではJavaを使ってた
その時は何でCをやらないんだろって思ってたけど、
今ならJavaにしてた理由がよく分かる

失礼、脱線しました
0176デフォルトの名無しさん
垢版 |
2020/03/15(日) 04:40:36.13ID:3YzLvkry
> Python, JavaScript では、偽が10種類ぐらいある

また嘘吐いてんのかrubyキチガイ。
これでrubyは理解してんのかと思いきやrubyスレで初心者も吹き出すような質問してたりするからなこのカスw
0180174
垢版 |
2020/03/15(日) 13:12:41.28ID:3o1DpNlP
>>179
もう15年以上前の話になるけど

CにはString型が無いので文字列の扱いが大変だということ、
scanfなどの入力関数の動作があぶなっかしいということ、
ポインタを使いこなすのが難しいということ、など
0181デフォルトの名無しさん
垢版 |
2020/03/15(日) 18:02:14.53ID:ljKtR3CB
なんで日本語が出てこないのか?
0182デフォルトの名無しさん
垢版 |
2020/03/15(日) 18:36:54.92ID:XbDoNvCk
日本語?良い言語だよ。
一音一音はっきり発音する聞き手に優しい言語で、動詞が最後に来るっていう最高にクールな言語さ!
0183デフォルトの名無しさん
垢版 |
2020/03/15(日) 19:20:26.11ID:5Duda6ao
限らないだろ最後に来るとは。
よくないよそういう決めつけ。
0186デフォルトの名無しさん
垢版 |
2020/03/19(木) 00:10:50.42ID:JIE5H5WB
大事なことは5ちゃんなんか見てないで
どの言語でもいいから入門書なり入門サイトなりで今すぐ勉強を始めること
0189デフォルトの名無しさん
垢版 |
2020/03/19(木) 22:11:26.48ID:CIyGoh8G
html→css→JavaScript→Ruby
0190デフォルトの名無しさん
垢版 |
2020/03/19(木) 22:42:05.44ID:CueowRO4
>>106
>>88と比較するならtakeでなく‼︎使え。共通点も見えてくる。
あと、1行ならdoは要らん。

main = (print.fib) 9

fib = (fibs!!)
(fib n = fib!!nをカリー化で見た目の引数を省略)

fibs = 0:1:zipWith (+) fibs (tail fibs)

output:
>34

fibsはこう動く。

fibs
= 0:1:zipWith (+) fibs (tail fibs)
= 0:1:(0 + 1):zipWith (+) [0:1:...] [1:...]
= 0:1:1:zipWith (+) [0:1:...] [1:...]
= 0:1:1:(1 + 1):zipWith (+) [1:1:...] [1:...]
= 0:1:1:2:zipWith (+) [1:2:...] [2:...]
= 0:1:1:2:(1 + 2):zipWith (+) [1:2:...] [2:...]
.
.
.
0191デフォルトの名無しさん
垢版 |
2020/03/21(土) 16:58:19.93ID:He36jL2X
Haskellはいろんな概念を学ばないといけないのもあるが
声に出して読みにくいのが致命的に初心者向きではない
0192デフォルトの名無しさん
垢版 |
2020/03/21(土) 17:00:57.53ID:7CIer+Qg
学んだら眼から鱗だけど、学ばないといけない訳じゃない。
0194デフォルトの名無しさん
垢版 |
2020/03/22(日) 13:45:33.56ID:ZvBqcowf
>>188
ひねくれた答えを出したかったんだろうけれど、本人にやる気があるならそれもありだよ。
ただ初心者が自発的にコボルを選ぶことはないだろう。
0197デフォルトの名無しさん
垢版 |
2020/03/23(月) 23:22:05.72ID:fI4BXARU
>>196
今どきCかよ
無難なのはJavaだろ
0198デフォルトの名無しさん
垢版 |
2020/03/24(火) 00:36:36.42ID:QVOPY4xn
ほんとの初心者ならVBAとかJS(chromeで打ち込む)でいいと思うけどな
コードいじる実感が沸いたほうが次に繋がる
0203デフォルトの名無しさん
垢版 |
2020/03/24(火) 01:12:46.69ID:cu1HFh78
ヒューマンリソースマシンってゲーム評判よかったからやってみたけどガワ被せたアセンブリじゃねーか今どきこれは無いわ
0206デフォルトの名無しさん
垢版 |
2020/03/24(火) 01:50:55.72ID:n5EM3Zd9
>>199
JavaScript+CanvaAPIでゲーム作り
右も左もわからん時に、HTML/CSSほとんど触らずに
プログラミングに集中できたのは良かった
0209デフォルトの名無しさん
垢版 |
2020/03/24(火) 09:43:53.73ID:l++MC8Rs
とある時代は深く考えずとも一択だった
でも今は10くらい選択肢がある
だからこういうスレがある

なのでオッサンに聞いても「始めるのにいい言語」という質問の意味自体が分からない
そして現役の今の奴らに聞いても十人十色なら、あとはアンケートの多数決で決めるしかない

その時代に自分が一番最初に習った言語を挙げるしかないなら、
当時の人気だけで「始めるのにいい言語」が決まる
そして当時の人気言語は今は大抵は廃れてるから、
「始めるのにいい言語」はどの世代であっても永遠に分からない

つまりオッサンに聞いてもわからないし誰に聞いても分からない
謎の人気でプッシュされてる言語をやるのがベター
0211デフォルトの名無しさん
垢版 |
2020/03/24(火) 12:33:02.31ID:UBy3gEYu
>>209
>謎の人気でプッシュされてる言語をやるのがベター

結論が唐突w
一番金になる初心者が興味本位で食いつきやすい言語がプッシュされる
初心者のためになるかどうかは知ったこっちゃない
0212デフォルトの名無しさん
垢版 |
2020/03/24(火) 13:19:13.97ID:l++MC8Rs
……そういう言語であっても母数が多けりゃ正規分布の6σ外は必ず出るので
「わたしは○○を最初に学んだからプログラマになりました」という奴も必ず出る
つまり統計的には○○がなんであってもすごく出来る奴はどの時代も一定数出てくる
0213デフォルトの名無しさん
垢版 |
2020/03/24(火) 14:29:00.43ID:GuqOhGpz
統計用語の「母数」の意味を調べよう。
…まあ、この訳つくった奴がセンス皆無という恨み節も聞こえるが…
0215デフォルトの名無しさん
垢版 |
2020/03/24(火) 15:45:04.97ID:5rcQQ4G6
Hu-BASICから始めてマシン語ちょい勉強しその後30年以上プログラミングやってなく
一昨年からC言語触り出して今はコンソールでゲーム作ったりビットコ用のbot作ったりしてる
0216デフォルトの名無しさん
垢版 |
2020/03/24(火) 20:29:48.56ID:1n+V7cka
就職して使う言語勉強すりゃいいじゃん。そういう回答が嫌なんだろうけれど。
0217デフォルトの名無しさん
垢版 |
2020/03/24(火) 21:24:44.33ID:G3YLWB5X
趣味でプログラミングやりたくて、いろんな言語に手を出したんだけど、
ほとんど三日坊主でダメだった。唯一ある程度使えるようになったのがLISPだった。
LISPってライブラリの少なさとか環境は良くないのかも知れないけど、
言語の習得というか、きれいでなくても動くものをつくるぐらいになるにはそれほど難しくないと思った。

と言うことで、LISPがおすすめ。個人的見解です。
0219デフォルトの名無しさん
垢版 |
2020/03/25(水) 00:06:33.97ID:WTlT29dU
>>89
プログラミングは数学では無いが、数学はプログラミング言語の一種だよ。
コンピュータが誕生する遥か前に誕生したプログラミング言語。
数学者はプログラマーと言える。

Haskell学べば学ぶ程そう思う。
0221デフォルトの名無しさん
垢版 |
2020/03/25(水) 01:05:55.03ID:02AjkBHQ
数学は神学あるいは哲学
0223デフォルトの名無しさん
垢版 |
2020/03/27(金) 07:58:25.23ID:tow1DnVv
>>22
人気がある→だからなに?
開発環境→なんだかんだでどれも簡単
書籍→主要な言語なら書籍たくさん
習得しやすい→どれも難しいしどれも簡単
0228デフォルトの名無しさん
垢版 |
2020/03/28(土) 11:54:01.10ID:LHycPpou
シャドバとプログラミングって似てない?


言語→ドラゴン(Java)、ネクロ(PHP)、ネメシス(Scala)
ライブラリ(API含む)→フォロワー、スペル
クラス特性→文法
設計→構築やコンビを考える
要件→デッキのコンセプト。どういう勝ち方をしたいか
実装・実行→プレイング
ローテ→流行りの言語
ローテ落ち→古い言語
基盤のルール(守護疾走とか?)→Webやミドルウェアやらセキュリティやらの仕組み(インフラ系も?)
勝利条件→アプリの完成
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況