タグ

Programmingに関するrAdioのブックマーク (77)

  • プログラミングの授業で「みんながニッコリするセリフ」を考えさせた途端に動けなくなる子がいる→良い"問いかけ"とは何か?

    Scratch とMagica Voxelと子どもたち @scratchhub31 ☆ Pythonの第一歩は大抵「print('○○○')」なんですが、 ここで「○○○にみんながニッコリするセリフ入れて」って言うと、1ミリも動けなくなっちゃう子がいます。特に学校の勉強ができる子に多い。 構文とかも大事なんだけど、そこんトコが人間のお仕事なんだけどなー、って感じ。#考える力 よんてんごP @yontengoP 割とリプ・引用RT含めて 「は?🤔」「何だその指示💢」「クソ客か???✊」って反応されてるけど、 どういう出題というか問い掛けしてるかだなぁ… 「例えばこういうニッコリ言葉があって…」って いくつか例示した上で 「皆も他のを考えてみて」とかならアリだと思う twitter.com/scratchhub31/s… はじめちゃん @hazy_o うん、仕事としての開発しているのではな

    プログラミングの授業で「みんながニッコリするセリフ」を考えさせた途端に動けなくなる子がいる→良い"問いかけ"とは何か?
    rAdio
    rAdio 2021/03/13
    プログラミング教育で同時に他の教育効果も得られて一石二鳥、みたいな考えなのかもしれないけど、主題が曖昧になってどっちつかずになるし、そういう「貧乏性」みたいなのは失敗しか生み出さない悪習だと思う。
  • プログラミングスクールのメンターを辞めました - Qiita

    追記 2021/1/25 あとがきを追加しました。 概要 半年近くとあるプログラミングスクールでメンターをしていましたが、諸事情で辞めました。これは決してネガティブな理由でやめたわけではないのはお断りしておきます。半年間メンターをしてみて、SNSでの悪評なども踏まえた上でプログラミングスクールに通うという選択についてどう思うのか個人の意見として書きます。内容は鵜呑みにはせず参考程度に考えてもらえると幸いです。ちなみにこの記事はスクールの比較記事ではありません。なのでおすすめのスクール紹介等は一切ありません。 結論 最初に結論を述べておきますが、プログラミングスクールに通うという選択自体は悪くないです。ただし、どのスクールを選択するのか、スクールの利用の仕方、自身の考え方によってはお金の無駄になる場合があると思っています。ただ個人的にはスクールに通う必要性というものは全くなく、好きな時間に質

    プログラミングスクールのメンターを辞めました - Qiita
  • The 23 Patterns of Software Negligence

  • What Not to Do — The Beginner Programmer’s Guide

  • 頼むから、センスのないやつはプログラマにならないでくれ

    当に迷惑なんだ。 センスがない奴の何が問題かというと、技術がないとか、ベストプラクティスを知らないということではなく、根的に「頭がおかしい」ことなんだ。 センスのない奴は、普通の人間が到底思い付かないことを平然と行う。所詮、に書いてあるようなアンチパターンは、「経験のない人は典型的にこういうことをしがち」という例であるが、センスのない奴はそういう典型的なアンチパターンにすら当てはまらないほど意味不明なことをする。だから、「センスのない奴は典型的にこういうことをする」という具体例を挙げることが非常に難しいし、「ここがダメだから直せ」という指摘もできない。 最近見た例を書いてみる。2次元のテーブルを扱うJSONだ。 普通の人なら、何も考えず以下のような実装をするだろう。フィールドの定義とデータが分かれているのは、ユースケースによってフィールドが可変だからだ。 [ {fieldName:

    頼むから、センスのないやつはプログラマにならないでくれ
    rAdio
    rAdio 2020/08/01
    悪い例の実装は、コミュニケーションを最少に済ませて後からどうとでもなる先送り思想が見える。設計せずにとにかくその時のデータでのみ動けば良い、という印象。センスというか「こざかしさ」「ごまかし」の問題。
  • N予備校のプログラミング教材編集に約3年携わって得られた知見 - Qiita

    プログラミング教材の編集に携わって3年経ち、いろいろな知見が貯まってきたので「ドキュメント執筆に関するアウトプット」を行ってみようと思います。 自己紹介 ドワンゴでN予備校のコンテンツ制作に携わっているアルバイトの1人、 ryo-a です。 現在の業は大学生で、慶應義塾大学にて計量経済学の分析に関係するあれこれをやっています。4月から慶應義塾大学大学院に進学予定です。交通関係の情報や大規模データの処理を好んでおり、最近は地理空間情報処理ツールや各種CLIツールなどを作っていたりします。 2017年4月よりアルバイトとしてドワンゴで働いており、主にプログラミング教材の制作補助に関わっています。働きはじめて3年近く経ち、色々な知見が貯まってきたので教材編集を通じて得られた知見を書いてみます。 併せて、プログラミング教育におけるノウハウが業界内で共有されていけばいいな、とも思います。 (個人的

    N予備校のプログラミング教材編集に約3年携わって得られた知見 - Qiita
  • プログラミングスクールの問題点 - Speaker Deck

    Transcript Burikaigi2020 プログラミングスクールの問題点 合同会社フィヨルド 駒形真幸 None None 今⽇お話すること 1. フィヨルドブートキャンプ概要 2. プログラミングスクールの問題点と対応策 3. スクールとしての⽬標 フィヨルドブートキャンプ概要 None ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙

    プログラミングスクールの問題点 - Speaker Deck
  • githubで最もやべー関数を発掘する - Qiita

    はじめに 先日、職場で「自分が 改修したor 書いちゃった いちばんやべー関数」ネタで盛り上がりました。 みんないろいろ話してくれましたが、やっぱり僕の書いた「コマンドパターンのメインループ関数(1500行)」の圧勝でした。 なんであんなコード書いたんだろ。 そこで、今日は僕の傷ついたプライド癒すべくgithubから「世界でいちばんやべー関数」を発掘します。 つまり、「俺が書いた関数よりやべー関数に会いに行く」 結論 マジでやべー関数は次の2つ 「opencvリポジトリのcv::agast_cornerScore<AgastFeatureDetector::AGAST_7_12s>関数」(複雑度1868) 「SuiteCRMリポジトリのOpenTag関数」(複雑度1509) 言語毎の傾向に着目すると... javascriptにはやべー関数が多い python/java/swift/rub

    githubで最もやべー関数を発掘する - Qiita
  • スーパーマリオのジャンプのアルゴリズム - Qiita

    先日、気持ちのいいジャンプを目指してというQiitaの記事を見かけました。記事中では、マリオのジャンプについても触れられています。マリオというと、マリオブラザースやスーパーマリオブラザース等々、色々あるのですが、これはおそらくスーパーマリオブラザースの事だと思われます。ジャンプアクションゲームといったらスーマリですね。 そのマリオのジャンプの仕組みは「マリオの速度ベクトルを保存しておいて座標を計算するんじゃなくて~」と書かれていて、別サイトのブログへのリンクが張られています。 マリオのジャンプ実装法とVerlet積分 ただ、この記述については不正確であるという別のブログもあったりします。 マリオの完コピvol.28 ジャンプの解析と修正 ホントのところはどうなんでしょうか?世界で最も有名なゲームジャンプがどのように処理されているのか気になったので調べてみることにしました。 原典にあたる

    スーパーマリオのジャンプのアルゴリズム - Qiita
  • 元プログラマーの情報の先生の採点が酷いと話題に

    竹林人間🍣🍊3g+◢ @Chromium_Linux 日常生活で思ったことや、簡単なロゴモーション、3DCG、IoT開発等 日々研究しながら呑気に暮らしています。(たまにLinux使ってます)お仕事などの依頼はこちらまで info@otintin.world line.me/R/ti/p/%40hwh0…

    元プログラマーの情報の先生の採点が酷いと話題に
    rAdio
    rAdio 2019/10/16
    こういう実用科目の教育って、実運用してる現場との乖離が大きくて他も似たようなものになってそう。それがICT科目だと顕著にあらわれるという印象。現場の技術者教育も真っ当なものが少ないんだから推して知るべし。
  • 『スパゲティコード書くやつらは成果がすぐでるせいで評価されてるのほんま許せん』保守作業を行う人がダメの烙印押される現象も

    ぴくすふぁんく @pxfnc マジでスパゲティコード書くやつらは成果がすぐでるせいでプログラム分からん人たちからめちゃくちゃ評価されてるのほんま許せん その人がやめて保守やるタイミングで、保守に時間がかかった時に「ソースコードのせいにするダメなエンジニア」って烙印押されるのも許せん スパゲティに死を 2019-05-26 10:20:58 リンク Wikipedia スパゲティプログラム スパゲティプログラムまたはスパゲティコードとは、プログラムのソースコードがそれを制作したプログラマ以外にとって解読困難である事を表す俗語。名称の由来は、皿に盛られたスパゲッティのようにロジックが絡み合っていることから。 実務において、特にクライアントからの受注や業務委託に求められるコーディングは他者が解読可能な形態、すなわちコードの整序やリファクタリングされたプログラムコードを求められる。しかし、コード共

    『スパゲティコード書くやつらは成果がすぐでるせいで評価されてるのほんま許せん』保守作業を行う人がダメの烙印押される現象も
    rAdio
    rAdio 2019/05/29
    動けば良かろうなのだ、ってのは、上っ面しか評価してないという意味で「ルッキズム」と同じなんだよね…。そりゃあね、非現実的な理想を追い求めるような「本質主義」もアレだけど、バランス欠いたら死ぬだけよ。
  • 文科省のPythonはPythonじゃねぇ - Qiita

    TL;DR 文科省によるプログラミングの教材はダメダメ。PEP8読め。 追記 もちろん、この指摘が普通のコードに対するものだとすれば 「重箱の隅をつつきすぎ」 だというのは全くその通りだと思います。こんな指摘をするつもりはさらさらありません。 しかし、これが文科省という権威ある機関が発表するものならば話は全く違います。 全ての日教育を一身に背負うくらいの気持ちと成果を伴わなければならないとも思います。 そういう理由での、厳しい(というか細かい)指摘です。 追記2 自分の説明が足りませんでした(すみません)。ちなみにこの教材は「教員研修用」です。 この教材で研修を受けた教師にプログラミングを教えられると思って考えてみてほしいと思います。 追記3 (2019/9/25 文科省の改訂を受けて) この度文科省がPythonに関する資料の改訂版を発表しました。 文科省に対して改善を求める当初を行

    文科省のPythonはPythonじゃねぇ - Qiita
    rAdio
    rAdio 2019/05/20
    汚いなりに、自動でチェックしたり様式整えたりするツールもあるわけだし、そういう物の紹介と、ツール選定の勘所もあわせて教程に入れておけば良いんじゃないかな。いっそ文法と読解と作文の授業に分けたらどうか。
  • 体系的にプログラミングを教えられると挫折するタイプの人はご注意!|ふろむだ@分裂勘違い君劇場

    「専門学校では、全くの素人に、体系的にプログラミングを教えることで、それなりにプログラムが書けるようにしている」という記事が賛同を多く集めていた。 しかし、私の場合、まったく逆だった。体系的にプログラミングを教えられたらすぐに挫折したけど、体系もカリキュラムも全部無視して、自分の興味の赴くままにプログラミングを学んだら、ごく短期間に、劇的にプログラミング能力が高まった。 元記事によると、専門学校では、素人は、まず、簡単なアルゴリズムの問題集をやらされるとのことだが、こんなことをやらされたら、僕のようなタイプの人間は、まず挫折する。 実際、大学でプログラミングの授業を履修したときは、すぐに挫折した。 なぜなら、退屈だからだ。 僕は、子供の頃からそうなのだが、退屈なことを続けることができない。だから、小学生の時に公文式をやったときも、すぐに挫折した。しかし、学校の算数のテストでは、満点以外の点

    体系的にプログラミングを教えられると挫折するタイプの人はご注意!|ふろむだ@分裂勘違い君劇場
    rAdio
    rAdio 2019/01/05
    自分には天才性は全くないけど、俺も興味のない開発業務ではさっぱりで、好きなインフラ業務を通してでしかプログラミングを学べなかったので、特性的にはそういう傾向はありそう…。
  • [Redux/Fluxでも役立つ] サーバーが返却するデータは正規化して格納すべし

    こんにちは、Pairs Global事業部のiOSエンジニアのmuukiiです 🤠 今回はクライアントサイドにおけるデータの保管方法についての話をします。 最近ではGraphQLやProtocol Buffersなどの利用機会が増え、サーバーAPIが返却するレスポンスは美しくネストされた構造化が進んでいます。 構造化を行うことは反復的な表現を表すのに優れ、ネーミングの明快さを向上し、データを見やすく保つことに貢献します。 GitHub API v4 GraphQLを用いたレスポンスレスポンス構造と保存時の構造は必ずしも一致するわけではないしかし、このような構造はあくまで通信先にデータを渡すときに作り上げられるものであり、レスポンス構造と保存時の構造は必ずしも一致するわけではないということです。 逆に言えば、GraphQLの返却する深くネストされたデータ構造は利用用途に合わせて崩しても良い

    [Redux/Fluxでも役立つ] サーバーが返却するデータは正規化して格納すべし
  • バカにC言語は難しい~プログラミングの機会損失~

    プログラミングは難しい 注意: この記事は「プログラミング学習とはかくあるべき」、「こうやって学習するのが一番」ということを言いたいのではなく、プログラムを勉強したいが右も左もわからない人に少しでも勇気と情報を与えることを目的としています。過去の挫折経験からか、なかば愚痴っぽくなっていますがご勘弁を はじめに自分のプログラミング歴を軽く紹介して起きます。 年 言語 学習目的 2010 C言語 学校の実習 2011 C++ 組み込み系 2012~2017 None None 2018 Go,Js,Scala,Python 研究、Web開発 といった感じです。2012~2017年がNoneになっているのには原因が「C言語に挫折し、とにかくプログラミングがしたくなかった」からです。そう思ってしまった原因と、そこから立ち直ったことがこの記事を書いた理由です。 「おいおい、C言語ごときで挫折とは情け

    バカにC言語は難しい~プログラミングの機会損失~
    rAdio
    rAdio 2018/10/23
    同じく高校大学とCどころかBASICですら挫折したが、働き出してから業務上のサーバ管理を起点としてプログラミングを覚えた。具体的なタスクがないと身に付けられない人というのはいる。
  • オブジェクト指向が0.05%も理解できない記事

    尽く書を信ずれば即ち書無きに如かず 《孟子『尽心下』より》 イントロダクション 「最も理想的なオブジェクト指向を実現しているプログラミング言語は何か?」と問われたとき、君は何と答えるだろうか? C++Java、C#。君がそうだと思っているのは表面だけで、たぶん何もわかっていないのだろう。無知であることを知っているのであれば、無知のまま過ごした方が幸せなときもある。 Simula、Smalltalk、Ruby。君は質をいくらか知っているようだから、引き返すなら今のうちだろう。深淵を覗けば、君もまた怪物にならざるを得ない。 JavaScriptPythonGo。君が真剣にそう答えるなら、私とは異なる真理に辿り着けたのだろう。君と私のどちらかが正しいのではない、どちらも常に正しく、どちらも常に間違っている。 Erlang、Elixir。君は既に答えを知っているようだから、この記事は全く以

    オブジェクト指向が0.05%も理解できない記事
  • プログラミング言語 - 初心者のソースコードの読み方(147782)|teratail

    プログラミングの仕事を始めて半年くらいの人にソースコードの読み方を聞かれたのですが、どう答えたらいいでしょうか? とりあえず以下は私が普段から意識してることなのですが、他にもいい読み方があれば教えてください。 (初心者に限らずのお話しだと思いますが。) よろしくお願いします。 ************************* ・その変数に何がはいっているかデバッグする それがmodelのインスタンスの配列なのか、IDの配列なのかなどを見る また自分の想定通りの値が入っているかを都度確認する ・そのメソッドがどこに定義されているのか探す またはどこから呼ばれているのかを探す そのメソッドの返り値はなにかも意識しておく ・変数名やメソッド名から機能などを想像する コードに記載されてるコメントからも同様に想像する たまに全然違う名前の場合があるので注意 ・git blameでコードのgitログ

    プログラミング言語 - 初心者のソースコードの読み方(147782)|teratail
  • わかっちゃいるけど、やめられない - Pythonあるある凡ミス集 - Qiita

    >>> list((1, 2, 3)) [1, 2, 3] >>> list = list((1, 2, 3)) >>> list = list((1, 2, 3)) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'list' object is not callable listという変数名を付けてしまうと、その後list()が呼べなくなってしまいます。 組み込み関数 組み込み型 標準モジュールと同じ名前のモジュールを作ってしまう 何かちょっとした確認をしたいときにtest.*という名前のファイルを作ることはよくあります。 でもPythonでこれをやっちゃダメなんです。標準モジュールにtestがあるので名前が衝突してしまうからです。 test以外にもPython標準モジュ

    わかっちゃいるけど、やめられない - Pythonあるある凡ミス集 - Qiita
  • styleguide/pyguide.md at gh-pages · google/styleguide

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    styleguide/pyguide.md at gh-pages · google/styleguide
  • PEP 8 – Style Guide for Python Code | peps.python.org

    PEP 8 – Style Guide for Python Code Author: Guido van Rossum <guido at python.org>, Barry Warsaw <barry at python.org>, Alyssa Coghlan <ncoghlan at gmail.com> Status: Active Type: Process Created: 05-Jul-2001 Post-History: 05-Jul-2001, 01-Aug-2013 Table of Contents Introduction A Foolish Consistency is the Hobgoblin of Little Minds Code Lay-out Indentation Tabs or Spaces? Maximum Line Length Shoul

    PEP 8 – Style Guide for Python Code | peps.python.org