タグ

関連タグで絞り込む (150)

タグの絞り込みを解除

programmingに関するvanbraamのブックマーク (640)

  • プログラミングのできない学者や有識者がプログラミング教育をねじ曲げる – プログラミングの「プ」の字もなかった教科「情報」迷走の轍をふまないために – プログラミング教育の体系化が緊急課題

    InfoPath & SQL Server ! Office365 ! Microsoft365 ! Power Apps ! Power Automate ! Microsoft Power Fx ! プログラミングのできない学者や有識者がプログラミング教育をねじ曲げる – プログラミングの「プ」の字もなかった教科「情報」迷走の轍をふまないために – プログラミング教育の体系化が緊急課題 with 2 comments 念のため、文はあくまでも現場の一教員による私見であることを断っておく。 2003年から教科「情報」が高等学校ではじまったとき「教科『情報』はコンピュータを教える教科ではない」と声高に叫ばれ、そこで台頭してきたのは「なになに情報教育学会」といった新興のステークホルダーである。それは、長年日のコンピュータ教育をけん引してきた情報処理学会とは異にした流れの、教育学や認知科学

    プログラミングのできない学者や有識者がプログラミング教育をねじ曲げる – プログラミングの「プ」の字もなかった教科「情報」迷走の轍をふまないために – プログラミング教育の体系化が緊急課題
    vanbraam
    vanbraam 2018/03/01
    プログラムを書いた事のない人間が,プログラミングや,今世界で起きている"software is eating the world"現象を理解する事は決してない;だが後半"まず何よりもオブジェクト指向を取り上げるべき"以降には同意できない
  • Pythonで書かれたOSSのコードを最適化してPull Requestがマージされるまで - Sansan株式会社 | 公式メディア「mimi」

    はじめまして。2018年1月に入社した奥田(@yag_ays)です。 先日、scikit-learn-contribの1つであるCategory Encodersの最適化を実装したPull Requestがマージされたので、そこに至るまでのプロファイルや最適化の過程を紹介したいと思います。 普段、私の仕事機械学習データ分析がメインで、あまりPythonの処理レベルで早いコードを書いたりすることはありません。もちろん最適化なんてことについては、あまり経験を持っていない素人なのですが、この記事が皆さんのプロジェクトを最適化する際の参考になれば幸いです。 tl;dr scikit-learn-contribの中のcategory_encodersの実行速度を最適化した Pythonのプロファイリングにはline_profiler、デバッグにはpdbが便利 Pandasのカラムをfor文で書き

    Pythonで書かれたOSSのコードを最適化してPull Requestがマージされるまで - Sansan株式会社 | 公式メディア「mimi」
    vanbraam
    vanbraam 2018/02/21
    道具(line_profiler,pdb)と検索を適切に利用した真っ当な高速化の事例;タイトルは"最適化"より"ボトルネックの解消"の方が適切な様に思う
  • 「巨大プルリク1件vs細かいプルリク100件」問題を考える(翻訳)

    記事では、昔ながらの問題である「巨大なプルリク1件と超細かいプルリク100件、どっちなら戦う気になれる?」に対する回答を示したいと思います。チームの一員としてよりよいコードを書くためのガイドラインについてもある程度解説します。今回の記事は、すべて以下のツイートから触発されました。 10 lines of code = 10 issues. 500 lines of code = "looks fine." Code reviews. — I Am Devloper (@iamdevloper) November 5, 2013 何が問題だったか 私は、Fullscript社で行われているコードレビューが今ひとつ活用されていないことに気づきました。featureブランチが長期間取り残されていることがしょっちゅうでした。featureブランチのコードは数千行にまで肥大化し、まともなフィードバ

    「巨大プルリク1件vs細かいプルリク100件」問題を考える(翻訳)
    vanbraam
    vanbraam 2018/02/19
    巨大プルリクは悪,には同意するが,細かすぎるのもどうかと."限りなくゼロ行に近づける"はダウトだと思うし,"1行の変更のレビューを嫌がるレビュアーはいない"<これは1回なら真だが短時間に100回飛んできたら普通に嫌
  • 軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita

    ざっくり言うと リスト構造のデータに対してランダムアクセスはしちゃだめだぞ。お兄さんとの約束だ! 発端 数年前に他部署の支援で作ったJavaのシステムに、ちょっとデカめのデータを突っ込んだらありえないほど遅いので助けてくれ、と連絡が入った。 まぁクエリとかインデックスをちょっと見れば直るっしょ・・・と鼻をほじりながら支援に向かった。 処理内容 遅い部分の処理は以下のようなものであった。 処理対象のデータをListで受け取る。 それをforループで1件ずつ前処理する。 処理結果をオブジェクトに格納し、ORマッパーでDBにINSERTする。 これだけ? そう、これだけだ。並列処理なんて高級なことはもちろんやってない。 インフラ調査 処理中のサーバのようすを調査する。今回のインフラは典型的な3層3サーバ構成。 WEBサーバはなにもかもが余裕。 APサーバではCPUを1つ使い切っている。 14コア

    軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita
    vanbraam
    vanbraam 2018/02/19
    拡張for文で正解だけど,それがなかった時代でも普通にrecord.next()する案件だと思う;"ランダムアクセスしちゃダメ"というより,sequencial accessでいいのに無意味にrandom accessしてる例では
  • GraphQLを導入してみて得た知見と雑感。GraphQLはタイタニックの救命ボードになりえるかも - Qiita

    GraphQLは実装内容に合えばタイタニックの救命ボードのように混沌から救い出してくれる。だからと言って全てのプロジェクトがタイタニックな訳ではないので、使い所が合わなければそんな救命ボードにもあまり意味は無い、という話。 先日、個人開発して公開したプロジェクト「node-node-node」のバックエンドはRails APIGraphQLを使っていて、このプロジェクト内容に対しては最高の親和性を発揮してくれた。 GraphQLのメリットを一言で言えば「クライアント=サーバー間での複雑なトランザクション処理の全てをGraphQLが吸収してくれる」ということに尽きる。ややこしい技術の詳細を書いたところでメリットはこれ以外に無い。 /usersや/postsというそれぞれのエンドポイントにリクエストを投げていたのがRESTful。 GraphQLにするとエンドポイントを気にすることなく「これ

    GraphQLを導入してみて得た知見と雑感。GraphQLはタイタニックの救命ボードになりえるかも - Qiita
    vanbraam
    vanbraam 2018/02/11
    "親子関係が何回も続く階層構造になったノードがサーバー側のDBに"<この時点ではデータ構造の設計が悪いのでは?と思ったが,最後まで読むとデータ構造がグラフだった.そりゃGraphQLがハマる.というかRDBに入れない方がいい
  • 今あえてDRY原則に向き合う

    "I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)

    今あえてDRY原則に向き合う
    vanbraam
    vanbraam 2018/02/10
    アンチDRYではなく,"正しくDRYする為にはどうしたらいいか"というスライドだった;ただ,不変(そう)な物とそうでない物を予測する難しさが依然として残る事は肝に命じておくべきかと
  • Android案件を見積もる場合に考えておくことリスト - Qiita

    アプリ自体のコーディング見積もりのみに注力してしまうと忘れがちで、たまにつらい目に遭うので、必要に応じて追加していく予定。 アプリ仕様 仕様はそもそも決まっているか 「仕様は決まっている。動かない」「移植なのでこれ以上はありません」と言ったな。 それは嘘だ。 既に仕様がガッチリ確定していることはありえない。要求仕様(必要機能リスト)がある程度固まっているならばまだ良い方で、「今から仕様を一緒に考えていきましょう」「アイディアレベルです」まで様々。 その他にも、GCM/FCM等のアプリ外サービスと連携する場合、遅延コスト等どの程度許容できるかも事前に確定させる。特にプッシュ系サービスでは、ありえないレベル(全端末遅延1秒以内必須、とか)を既定路線に含めないように留意する。 改修か、新規開発か これは見積もりの前提として大きな影響力をもつ。 テクノロジーや設計の自由度・柔軟性をある程度コントロ

    Android案件を見積もる場合に考えておくことリスト - Qiita
    vanbraam
    vanbraam 2018/02/10
    via b:id:entry:357508495;"「簡単かを決めるのは開発者であり、企画者や営業ではない」と言い切ってしまおう"<完全同意
  • 『プログラミング未経験の社会人がプログラミングを勉強するのにいい題材を考える - log4ketancho』へのコメント

    ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

    『プログラミング未経験の社会人がプログラミングを勉強するのにいい題材を考える - log4ketancho』へのコメント
    vanbraam
    vanbraam 2018/02/10
    副業でサービス作りたいならRailsGirlsとか;個人的には,"役に立つ"系なら,日頃やってる繰り返し作業を自動化するツールか,同じ失敗を繰り返さないためのツール(alarm/reminder系)等かな
  • プログラミング未経験の社会人がプログラミングを勉強するのにいい題材を考える - log4ketancho

    社会人の方にプログラミング教えてほしいと言われることがちょくちょくあるのだけど、何をテーマに教えるのがいいか悩んでる🤔 どうせなら自分の生活がほんの少しでも豊かになるものを作ってもらいたいよね。— ちゃんけ (@ketancho) 2018年2月4日 このツイートについて考えたことを整理しようと思います。というよりは、考えがまとまらないので、とりあえず記事にすることで整理するきっかけにしたいというのが音です(笑)。この記事を通して、教材のネタ集めができれば嬉しいです。 背景 先日、文系出身の友人と飲んでいた時に「プログラミングできるようになりたい」ということを言われました。曰く、 職場で上の方の年次の方の人でExcelPowerPointを使えない人がそれなりにいる。その人達は(仕事上)結構損をしていると思う。でも自分が同じくらいの年次になった時に、同じように後輩から「あの人はプログ

    プログラミング未経験の社会人がプログラミングを勉強するのにいい題材を考える - log4ketancho
    vanbraam
    vanbraam 2018/02/10
    友人氏の話に限定すると,まず"マクロではない"の真意を探る所からでは?役に立つ物を作りたいとは限らない.Programmingとは何かを知りたいならalgorithmを学ぶパズル系の問題の方がいい;続きb:id:entry:357513364
  • まだAPI定義管理で消耗してるの?〜Swaggerを用いた大規模アプリ時代のAPI定義管理とコードジェネレート〜

    まだAPI定義管理で消耗してるの?〜Swaggerを用いた大規模アプリ時代のAPI定義管理とコードジェネレート〜 for DroidKaigi 2018

    まだAPI定義管理で消耗してるの?〜Swaggerを用いた大規模アプリ時代のAPI定義管理とコードジェネレート〜
    vanbraam
    vanbraam 2018/02/08
    中身も読まずに批判してるブコメは無価値;codegenの生成コードは正直topdownでそのまま使うには辛いと思うが,mockやprototypingには十分役立つ;YAMLが辛いという人は何ならいいのか?コメント書ける分JSONより10倍マシだと思うが
  • 型付き ⊄ 型なし - soutaroブログ

    最近、TypeScriptについて考えることが多い。SideCIでWebフロントエンドの開発に使いはじめたこともあるし、Steepの開発をしていて「TypeScriptだとどうなるんだっけ??」などと言いながら試してみることもある。 TypeScriptは型付きのJavaScriptである。構文はほとんど同じで、使えるライブラリもかなり近い。JavaScriptへの変換はかなり自明で、ランタイムは全く同じ。性能の差はない。Webpackやnpmを初めとするツール群もかなり共通しているし、アプリケーションも似たようなもん。書いている気分には、ほとんど差がない。つまり、TypeScriptJavaScriptでプログラミングしているときに、なにか違いを感じるとすれば、それは(ほとんど)型付きの言語と型なしの言語の差と考えて良い。 RubyJavaを比較するのとは、全然話が違う。構文も意味も

    型付き ⊄ 型なし - soutaroブログ
    vanbraam
    vanbraam 2018/02/07
    JavaScriptって動的型付き言語では? "型なし"や"型検査器がない"と書くのは違う様な;静的型付き言語の方が,実行前に計算機が型の整合性をチェックしてくれる分,安心して書ける&実行できるという点には同意するが
  • なぜプロダクトに Vue.js を採用したのか? 運用してみてどうっだった? という話 | Nagisaのすゝめ

    2018年2月6日 なぜプロダクトに Vue.js を採用したのか? 運用してみてどうっだった? という話 余り知られていませんが Nagisa ではアプリだけでなく Web のプロダクトやサービスもあります。マンガZERO や UPTOON! や 月刊コミックジヘン 辺りがそうです。 何れも Vue.js で作られている SPA で、社内・外両方から “なんで Vue.js なの?” とかよく聞かれます。そこで、今回はどうして Vue.js を選択したのか、Vue.js の何がいいのか、Vue.js で運用してみてどうだったかの話をしたいと思います。 はじめに Vue.js を導入する前のマンガ ZERO Web は 2.0系の Riot で作られていました。今ある SPA のような形ではなくサーバサイド (Go) にてメタタグを生成、空のマウントポイント <div id="app"><

    なぜプロダクトに Vue.js を採用したのか? 運用してみてどうっだった? という話 | Nagisaのすゝめ
    vanbraam
    vanbraam 2018/02/07
    これ読んで,自分がフロントエンド始めるならVue.jsかなと改めて思った.Modernかつsimple/compact,となるとこれが一番近そう;1箇所"Vue.jp"になってる.Typo?
  • タイムゾーン呪いの書 - Qiita

    コメント欄で「Software Design 誌 (2018/12) に寄稿した内容や修正などをこちらの記事にも適用したい」と言ったあと、やるやる詐欺でずっと放置していましたが、三年近く経ってようやく 2021年 7月に大幅に改訂し、同時に Zenn に引っ越すことにしました。 タイムゾーン呪いの書 (知識編) タイムゾーン呪いの書 (実装編) タイムゾーン呪いの書 (Java 編) なにやら長くなりすぎたので三部構成になっています。 この Qiita 版は、しばらく (最低一年は) 改訂前のまま残しておきます。 タイムゾーンの存在はほぼ全ての人が知っていると思います。ソフトウェア・エンジニアなら多くの方が、自分の得意な言語で、タイムゾーンが関わるなにかしらのコードを書いたことがあるでしょう。ですが、日に住んで日仕事をしていると国内時差もなく1 夏時間もない2 日標準時 (Japa

    タイムゾーン呪いの書 - Qiita
    vanbraam
    vanbraam 2018/02/07
    割と知ってる話だったが,Military Timezoneは知らなかった.あの`Z`にはそういう意味があったのか.Zeroの頭文字かと思ってた;そして今のJavaは新旧DateTimeライブラリーが入り乱れてて割と辛い
  • 🐟日本語入力の落とし穴 #burikaigi - みずぴー日記

    BuriKaigi2018で発表した。 入力メソッドについてのテキストを書いてる途中なので、それを流用する目論見だったが、まったく別のものになった。 🎤原稿 あいさつ このセッションはJava+αだと聞いてるので、+α部分の寛容さに賭けて日本語入力の話をする。 日語を受け取るアプリケーションがおちいりがちな落とし穴についての話をするので、テキスト入力を受けつけるアプリケーションを作るときとかに役に立つと嬉しく思う。 会社の紹介 ボクはMisocaという請求書を管理するWebサービスを作っている会社に勤めている。 日本語入力の重要性 Misocaの開発には、様々なサービス・ソフトウェアを使っている。RubyRailsSlackGithubなどは使っている会社も多いと思う。 この図には記載されていないが日本語入力の使用頻度も極めて高い。 アンケート さて、ここでちょっとアンケートを取

    🐟日本語入力の落とし穴 #burikaigi - みずぴー日記
    vanbraam
    vanbraam 2018/02/05
    面白かった;Input method周りの難しさはしばしば感じる.例えば辞書登録時の入力文字列の定義はキー入力列ではない(例:macOSではkk=>株式会社の"入力文字列"は"っk"になる);英語圏の人の入力/文字列周りへの無理解は常々感じる
  • もう管理画面のフロントコードを書く必要はありません、そう Viron ならね。 - Qiita

    管理画面のフロントエンドコードを書く時代は終わりました。 Vironがあれば、OpenApi(Swagger)でAPI定義を行い、実装するだけで管理画面が完成します。 そしてこれはOSSです。誰でも自由にお使いいただけます。 概要 Vironは、複数の管理画面を管理できるよう設計された、管理ツールマネージメントコンソールです。 APIサーバーとOAS2.0 jsonファイルを作成するだけで、管理画面が一つ完成します。 経緯 私の会社では、大小さまざまな自社サービスが開発・運用されています。 管理画面をサービス・サイト毎に作っていましたが、それには限界がありました。 エンジニアからしたら、管理画面用のデザインやAPIを作らなきゃいけない。工数がかかる。 運用・プロデューサーは、UIUXが管理画面で違うため、操作を覚えるという学習コストが高い。 さらに外から見たいときにスマホから見れないし、

    もう管理画面のフロントコードを書く必要はありません、そう Viron ならね。 - Qiita
    vanbraam
    vanbraam 2018/02/03
    具体的に何ができるのかが今一つ伝わらない文章.API部分のコードの自動生成(swagger-codegenで既にある),response定義からの表示コードの自動生成(見た事ないがstyle等はOpenAPI的に邪道な気がする),及びこれらの動的組み込み辺り?
  • ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習

    最近、あまりプログラミングが得意でない人のサポートをする形で、長い時間にわたってペアプログラミングを行っている。そのなかで、気がついた悪い習慣と成長するための良い習慣というものをまとめてみる。 この記事のバックグラウンドとなる体系的知識がになりました。 エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング あわせて読みたい 経営者マインドが足りない!vs. 現場に任せてくれない!の対立をなくすカードゲームをつくった話 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 心理的安全性ガイドライン(あるいは権威勾配に関する一

    ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習
    vanbraam
    vanbraam 2018/01/29
    表層だけを撫で回すか本質を追うか.コピペグラマーやExcel FAQは表層を撫でているだけなので少しでもパターンが変わると対処できない.本質を追うのは一見遠回りだが応用が利くので後々まで使える力がついて実は効率的
  • そろそろコードレビューそのものの必要性について考えるときがきているのかもしれない - タオルケット体操

    技術ブログの方に書くか迷ったのですが、かなりポエムの類な文章になりそうなのでこちらに書きます。 ちょっと前にバズったこちらの記事 medium.com に触発されました。 ちなみにコードレビューに関する話としてはまだ僕が色々と手探りだった3年前にもこんなことを書いていたようです。3年前の自分の考えに触れられるブログって面白いなという気持ちとこいつどんだけ軽率な文章書いてんだよという気持ちが合わさり甘酸っぱい気持ちが生み出されました。 hachibeechan.hateblo.jp 当時と今では日全体の技術的トレンドも変わっていますし、そもそも僕の所属している会社も違います。今の会社ではGitHubを使っており、コードレビューが当然のフローとして組み込まれています。 そしていま改めて当時のブログを読み返したのですが、びっくりするほどコードレビューに対する僕の考えが変わっていないので、改めて

    そろそろコードレビューそのものの必要性について考えるときがきているのかもしれない - タオルケット体操
    vanbraam
    vanbraam 2018/01/28
    ダメな(=理解/改造しにくい)コードも十分利子の高い技術的負債だと思うが,筆者がそれを許容する理由がわからない.綺麗じゃない/クオリティ低い≠ダメ,という事?;あとペアプロの"心理的負担が重くない"は同意できない
  • 研究者からエンジニアに転生して1年経ちました

    昨年の1月にDeNAに転職し、研究者からエンジニアに転生してから1年経ちましたので、色々振り返ってみたいと思います。ついでにMediumとやらを始めてみました。書いていて気持ち良いです。 前置き転職前は、KDDI研究所にて10年ほど画像検索・画像認識の研究をしていました。その間に、Stanford Research Instituteに共同研究で半年間滞在させてもらったり、事業部でスマホの企画開発やったり、同時期に博士課程に進学したり、育児休職を取ったりしました。その辺りについては下記に書きました。

    vanbraam
    vanbraam 2018/01/28
    "アルゴリズムを考案する一流セキュリティ研究者は一握りで良いが、それを実際に適用・運用していくセキュリティエンジニアはいくらでも必要"<同意."セキュリティ"抜いても通じる話
  • Amberで検討されているJava構文の変更 - Qiita

    Amberとは Java言語を拡張するプロジェクトです http://openjdk.java.net/projects/amber/ Amberのブランチ records データ保持用のクラスです sealed-types シールドタイプ newesapes line blockのエスケープ対応 patterns パターンマッチの全体的な開発 patterns-deconstruction パターンマッチでのデコンストラクション patterns-stage-1 instanceofのみのパターンマッチ pattern-runtime パターンマッチのランタイム? local-methods ローカルメソッド lambda-leftovers ラムダで_使えるようにする concise-method-declarations メソッド定義の簡略化 enhanced-enums 拡張enu

    Amberで検討されているJava構文の変更 - Qiita
    vanbraam
    vanbraam 2018/01/28
    予想より小幅な修正だった(Perl6比);recordは簡易classみたいなものか.やりたいことはわからなくもないがscopeを人間が理解しやすいように定義しないと死にそうな予感;他はまあ細かい改善
  • languagehealth.com - Domain Name For Sale | Dan.com

    VAT overview )Value Added TaxThe Value Added Tax (VAT) is a consumption tax applied in the European Union (EU) to all goods and services. All consumers in the EU are charged VAT on the purchase of goods and services. Businesses in the EU buying from a business in the same country are also charged VAT. Businesses in the EU buying from a business in a different EU country are not charged VAT. Consum

    languagehealth.com - Domain Name For Sale | Dan.com
    vanbraam
    vanbraam 2018/01/23
    "currently we look at the percentage of commits all to public projects on GitHub"<コミット数なのか,コミット量(行数?文字数?)なのか