タグ

プログラミングに関するmarmot1123のブックマーク (45)

  • タイムゾーン呪いの書 (知識編)

    「タイムゾーン呪いの書」は、もともと 2018年に Qiita に投稿した記事でしたが、大幅な改訂を 2021年におこない、同時にこちらの Zenn に引っ越すことにしました。 この改訂では Software Design 誌の 2018年 12月号に特集の一章として寄稿した内容も取り込みつつ、夏時間をめぐって各地で起きつつある変化について 2021年 6月現在の状況なども追加しました。そんな追記もしていたら記事全体が長大になってしまったため、この「知識編」と、「実装編」・「Java 編」に記事を分けました。「知識編」は、導入にあたる第一部です。 Qiita のほうは、引っ越した旨とこの引っ越し先へのリンクだけ追記して、しばらくそのまま残すつもりです。 はじめに タイムゾーンという概念のことは、ほとんどの人が聞いたことがあると思います。ソフトウェア・エンジニアでも多くの方が、時刻やタイムゾ

    タイムゾーン呪いの書 (知識編)
  • 講習会教育教材| 東京大学情報基盤センター スーパーコンピューティング部門

    mp4 ビデオ教材 (Internet Explorer 9以降、Firefox 17.0.1以降、Safari 6.0.2以降にて再生可能) 並列処理解説Ⅰ 並列プログラミングの基礎(17分52秒、60.3MB) 並列処理解説Ⅰ 性能評価指標(15分、46.0MB) 並列処理解説Ⅱ MPI プログラミングの基礎(11分28秒、38.4MB) 並列処理解説Ⅱ 基的な MPI 関数(22分49秒、92.7MB) 並列処理解説Ⅱ MPI プログラムの実例(15分28秒、70.4MB) 並列処理解説Ⅱ 実際の並列計算機構成例(5分58秒、39.0MB) 並列処理解説Ⅱ バッチ処理と MPI ジョブの投入(8分47秒、40.0MB) 並列処理解説Ⅲ 単体(CPU)最適化の方法の概要(4分15秒、15.7MB) 並列処理解説Ⅲ ループ内連続アクセス(5分17秒、22.4MB) 並列処理解説Ⅲ ルー

    marmot1123
    marmot1123 2020/06/04
    並列処理の解説
  • 一時期プログラミングのデザインパターンというものが大流行しましたが、現在ではどのように評価されているのでしょうか?

    回答 (5件中の1件目) この質問にかなり先行して2015年、Quora(家)で投げかけられた質問として、 Why do some functional programmers criticize design patterns in OOP languages as a sign of language deficiency, while Monad is also a design pattern? なぜ、関数型プログラマらは、オブジェクト指向(OOP)言語のデザインパターンを、言語の欠陥の象徴だと批判するのでしょうか?モナドもデザインパターンじゃないんですか? があります。...

    一時期プログラミングのデザインパターンというものが大流行しましたが、現在ではどのように評価されているのでしょうか?
  • [翻訳]あなたがプログラミングに向いていない10のサイン - Qiita

    ※この記事はJonathan Bluks氏の「10 Signs You Will Suck at Programming」を翻訳したものです。Mediumのコメント欄より翻訳の許可を頂きました。ありがとうございます。 より多くのステッカーは、より多くの成長にはなりません。 最近、RedditやQuoraで「自分がプログラマとして成功できるか、どうすれば分かりますか?」という質問をよく見かけます。キャリアチェンジを検討したり、あるいはソフトウェア開発に興味があったりするのであれば、それはごく自然な疑問です。 コンピュータに関する正式なトレーニングを受けていない場合、人々はプログラマになることに大きな心理的障壁があると思います。プログラミングが苦手であれば、あなたは自分がプログラマとして才能が無い人だと思うのは自然な考えです。もしあなたが俳優になりたいと思っていて、自分は演技が得意かどうかを疑

    [翻訳]あなたがプログラミングに向いていない10のサイン - Qiita
    marmot1123
    marmot1123 2019/03/16
    まあそんなこともあるよね。気にせずやりたいことやろうぜ。
  • “Rubyは死んだ”のか? まつもとゆきひろ氏が語る「プログラミング言語サバイバル」とRubyの未来 - Part1

    2018年12月14日、品川シーズンテラスカンファレンスにてRubyアソシエーションが主催するイベント「Ruby Business Users Conference 2018 Winter」が開催されました。すでにRubyを活用しているユーザーや、これからRubyをビジネスに活用しようと考えている人が集い、情報交換を行いました。基調講演「プログラミング言語サバイバル」に登壇したのは、一般財団法人Rubyアソシエーション理事長のまつもとゆきひろ氏。Rubyの開発をはじめて25年、今日のプログラミング言語の潮流とRuby開発者として感じている危機感について語りました。 プログラミング言語サバイバル まつもとゆきひろ氏(以下、まつもと):どうもこんにちは、まつもとと申します。今日は「プログラミング言語サバイバル」というタイトルでお話をしようと思います。 今年は、2月にイベントをやりましたが、Ru

    “Rubyは死んだ”のか? まつもとゆきひろ氏が語る「プログラミング言語サバイバル」とRubyの未来 - Part1
  • 開発者が知っておくべきSOLIDの原則 | POSTD

    (編注:2020/08/18、いただいたフィードバックをもとに記事を修正いたしました。) オブジェクト指向プログラミングが、ソフトウェア開発に新しい設計を持ち込みました。 その結果、開発者は単一の目的を処理するために、全体のアプリケーションに関係なく、1つのクラスの中で、同じ目的や機能を持つデータを結び付けることができるようになりました。 しかし、このオブジェクト指向プログラミングで、分かりにくいプログラムやメンテナンスができないプログラムを防ぐことはできません。 そこで、5つのガイドラインがRobert C. Martinによって作り出されました。これら5つのガイドラインすなわち原則により、開発者にとって読みやすく、メンテナンスが可能なプログラムを作成しやすくなりました。 5つの原則は、S.O.L.I.Dの原則と呼ばれています(頭字語はMichael Feathereによって名付けられま

    開発者が知っておくべきSOLIDの原則 | POSTD
  • 本当に諦めて刺身にタンポポ乗せたほうがよいのか(その1 プログラミングの勉強の順序の話) - Lambdaカクテル

    note.mu を読んだ.結論から先に書けや!といった旨のコメントをしてしまったが,「プログラミングを志す初心者のレベルが一定程度に達していない」という不満を表明している点については,同意する.自分も大学生であった頃に同期にプログラミングを教えた経験があるが,似た経験が多かったのである.ちょっと強く書いてしまってごめんネ. さて,初心者である以上,プログラミングについて知らないことがあるのは当然のことであるから,著者もその旨は了解しているはずだ. それを前提として考えてもプログラミングを身に付けるための知識や態度が身に付いていない初心者の存在こそを,彼(彼女)は憂いているのではないだろうか. この「学ぶ前提となるような知識や態度」について,上記記事の主張を見ながら,初心者が身に付けるべき知識・態度を探ってみてはどうだろう,と考え,この記事を書くに至った.俺は今正月で帰省中だが,充電器を実家

    本当に諦めて刺身にタンポポ乗せたほうがよいのか(その1 プログラミングの勉強の順序の話) - Lambdaカクテル
  • プログラミングに関する情報を英語でググるときのコツ - koogawa blog

    あけましておめでとうございます!今年もブログをよろしくお願い致しやす🙏 さて、私はプログラミングに関する情報を調べる際、基的に英語でググるようにしています。理由は単純で、英語のほうが圧倒的に情報量が多いからです。このエントリではいつも私が英語でググる際に使っているキーワードなどをメモしておきます。 実装した機能がうまく動かない場合 〜が表示されない メソッドなどが呼ばれない/実行されない プログラムで〜したい 2つの違いを知りたい 〜かどうかをチェックしたい 〜を検知したい 〜の実装方法を知りたい 〜についての最良の方法を知りたい あわせて読みたい 実装した機能がうまく動かない場合 〜 not work でググります。「動く」だからといって move で検索しても期待した検索結果にはなりません。 さらにOSバージョン等を指定する際は 〜 not work in iOS 12 のように

    プログラミングに関する情報を英語でググるときのコツ - koogawa blog
    marmot1123
    marmot1123 2019/01/02
    日本語は単語で、英語は文で検索すると良いとは聞くよね。
  • 競技プログラミングと現代社会、および就職について - chokudaiのブログ

    AtCoderはここ数年で大きく成長し、関わりのある企業も大きく増えました。競技プログラミングが社会に与える影響も、確実に変化してきています。 そのあたりについて、僕から見えているものをざっくりと書いていこうと思います。 そもそもAtCoderってなに? AtCoderは、プログラミングのコンテストを毎週オンラインで開催している企業です。土曜日午後9時頃に、毎週3000人程度のプログラマが参加しています。基的にはスポンサーがついていないコンテストをしていますが、就活シーズンには、多くの企業がAtCoderを利用したコンテストを主催しています。 AtCoderの利用企業 ここ 1 年間でAtCoderで大きめの取引があった企業(殆どがコンテスト実施)は以下の通りです。(株式会社とかその辺は省略してます。抜けがあったらごめんなさい。) KLab リクルート ドワンゴ DISCO MUJIN

    競技プログラミングと現代社会、および就職について - chokudaiのブログ
    marmot1123
    marmot1123 2018/12/05
    やってみたい
  • アルゴリズムを楽しく学ぼう! 独習に役立つWebサイト・参考書・競技プログラミングを紹介〈13選〉 - エンジニアHub|若手Webエンジニアのキャリアを考える!

    アルゴリズムを楽しく学ぼう! 独習に役立つWebサイト・参考書・競技プログラミングを紹介〈13選〉 プログラムの性能を改善して開発スピードを向上させるため、アルゴリズムを気軽に、かつ楽しく学べるWebサイトや書籍など、13種類のさまざまなコンテンツを紹介していきます。 アルゴリズム(algorithm)とは何なのでしょうか? 例えば、 Wikipediaにはこうあります。 アルゴリズムとは、数学、コンピューティング、言語学、あるいは関連する分野において、問題を解くための手順を定式化した形で表現したものを言う。 「問題を解くための手順を定式化した」とは、ソフトウェアエンジニアにとって「プログラミング」のことです。 みなさんも日々の開発業務において、問題(要件)を解くための手順を考え、その手順を特定のプログラミング言語で表現していませんか? アルゴリズムは、一般に「ソート(整列)」や「探索」と

    アルゴリズムを楽しく学ぼう! 独習に役立つWebサイト・参考書・競技プログラミングを紹介〈13選〉 - エンジニアHub|若手Webエンジニアのキャリアを考える!
  • AIZU ONLINE JUDGE: Programming Challenge

    Best viewed using Firefox, Google Chrome Aizu Online Judge Version 1.0 © 2004 - 2016 Univ. of Aizu Competitive Programming Club (ICPCPC), Database Systems Lab. University of Aizu

    AIZU ONLINE JUDGE: Programming Challenge
  • 読んで良かった基礎知識の入門書

    とあるエンジニア技術勉強法 (インターン学生向け) というスライドを先日 @iwashi86 が書かれていました。 インターン学生向けとありますが、新人プログラマ向けとしても素晴らしい資料だと思います。 ここでは「即、役立つわけではないが後から効いてくる」という「基礎知識」に絞って教材を紹介します。 目の前の仕事のために必要なことと並行して基礎知識を学ぶのは、長期的には良いと思います。 なお「基礎」==「簡単」というわけではなく、無理せず自分のペースで付き合うのがおすすめです。 自分で読んで、かつ、とても良いと思ったもののみを紹介するので、全分野をカバーしてはいません。 基礎にどのような分野があるかは新卒準備カレンダー2011や情報科学科カリキュラムが参考になります。 以下はどれも有名ななので、ググれば感想なども見つかるでしょう。 気になった、読もうと思うについては、ググるのも良い

    読んで良かった基礎知識の入門書
  • Haskellの入門から中級者になるまでの指針 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? プログラミング言語の学習は一般に大変である。 最初にどのようなことをすればいいのか、どのをよむべきなのか等疑問は尽きない。マイナーな言語で情報が少なければなおさらである。 この記事では諸事情でHaskellに入門することになった方にむけて、どのように勉強していくか、参考にすべきや記事を紹介する。 より良い指針にするためにも、指摘、感想等はコメントや私のTwitterアカウント(@Lugendre)に投稿して頂けるとありがたい。 入門〜初心者 環境構築 まずどんなプログラミング言語においても、プログラミングをする環境が必要である。Ha

    Haskellの入門から中級者になるまでの指針 - Qiita
  • 入社からの半年間でコードレビューで指摘されたことのまとめ - 30歳からのプログラミング

    実務未経験でプログラマとして入社して半年以上が経った。 コードレビューで指摘されたことを備忘録としてまとめておく。 自分なりにまとめたものなので、レビュアーが言いたかったこととニュアンスや解釈がずれている可能性はある。 初歩的な内容ばかりで我ながらうんざりする。 せっかく優秀な同僚ばかりなのだからもっと高度なことを学びたいが、こういう初歩的なことが出来ないのが俺の現状なのだから、仕方ない。 そもそもPullRequestを送ったこともなかったわけだし。入社初日は、一人でPullRequestの出し方を練習していた。 それを考えればまあ、こんなものだろうか。 当たり前のことをちゃんと当たり前に出来るようになって、早く、次のステージに進みたい。 PullRequest(PR) PRのタイトルは分かりやすいものに。必要に応じてチケットの番号なども入れる。 コミットやPRは出来るだけ粒度を細かくす

    入社からの半年間でコードレビューで指摘されたことのまとめ - 30歳からのプログラミング
  • 【改訂版】PHP7で堅牢なコードを書く - 例外処理、表明プログラミング、契約による設計 / PHP Conference 2016 Revised

    2016/12/15 @ PHPカンファレンス2016再演 https://saien.connpass.com/event/45318/

    【改訂版】PHP7で堅牢なコードを書く - 例外処理、表明プログラミング、契約による設計 / PHP Conference 2016 Revised
  • Python: ソケットプログラミングのアーキテクチャパターン - CUBE SUGAR CONTAINER

    今回はソケットプログラミングについて。 ソケットというのは Unix 系のシステムでネットワークを扱うとしたら、ほぼ必ずといっていいほど使われているもの。 ホスト間の通信やホスト内での IPC など、ネットワークを抽象化したインターフェースになっている。 そんな幅広く使われているソケットだけど、取り扱うときには色々なアーキテクチャパターンが考えられる。 また、比較的低レイヤーな部分なので、効率的に扱うためにはシステムコールなどの、割りと OS レベルに近い知識も必要になってくる。 ここらへんの話は、体系的に語られているドキュメントが少ないし、あっても鈍器のようなだったりする。 そこで、今回はそれらについてざっくりと見ていくことにした。 尚、今回はプログラミング言語として Python を使うけど、何もこれは特定の言語に限った話ではない。 どんな言語を使うにしても、あるいは表面上は抽象化さ

    Python: ソケットプログラミングのアーキテクチャパターン - CUBE SUGAR CONTAINER
  • なぜプログラマはあなたの事が嫌いなのか - megamouthの葬列

    営業やマネージャーにとって、現場にいるプログラマというのは扱いづらい存在である。 飲み会などで、普段の彼らを観察してみると。同じエンジニア同士で固まってボソボソとよくわからない話をして、控えめな声で笑っており、総じて温厚で、扱いやすそうな人々に見える。 ところが、仕事になると、彼らはなんやかんのと理由をつけて、スケジュールに文句を言い、プロジェクト途中のリクエストには素直に答えてくれず、あげくには遠回しな嫌味を言ってきたり、極端な場合には、その温厚な仮面を投げ捨てて、攻撃的な暴言さえ吐く事がある。 どうも彼らは我々の事が嫌いらしい、と感じている営業・マネジメント職の人もいるのではないだろうか? 彼らの人格や価値観に問題がある可能性も否定しないが、このような感情的な齟齬は、多くの場合、あなた自身が彼らの「自尊心」を傷つけていることに気づいていないことが多い。 プログラマの自尊心 プログラミン

    なぜプログラマはあなたの事が嫌いなのか - megamouthの葬列
  • これからプログラミングを学ぼうとする君へ | Social Change!

    今や、あらゆる場面においてソフトウェアが重要になってきた社会の中で、プログラミングを学ぼうと考える人も多いだろう。プログラミングを身につける方法は、インターネットにはたくさん情報があるし、も多くある。開発環境も無料で使える。独学したい人には良い時代になった。始めるのは、とても簡単だ。 一方で、挫折する人も多くいることが想像できる。情報が多くありすぎて、学び方ひとつとっても様々なことを言っているし、チュートリアルのようなものをやってみても、じゃあ自分で作るなら一体どうすれば良いかわからない。どの言語を選べば良いか、頭でっかちになって始められない人もいるかもしれない。 プログラミングを手っ取り早く身に付ける方法などあるのだろうか。これは、正解のない問題だ。人によるし、作りたいものにもよる。身に付けたい動機にもよるし、そもそもが、どこまで出来たらプログラミングを身に付けたと言えるのだろうか。

    これからプログラミングを学ぼうとする君へ | Social Change!
    marmot1123
    marmot1123 2017/01/14
    『新しいLinuxの教科書』が素晴らしいので、本を書くならそれと双璧をなす感じ(多分Linuxというよりプログラミング寄り?)で書いてもらったらいいんじゃないかなと勝手に感じた。
  • プログラミング学習、独学の限界から抜け出す方法とは : IT速報

    381:デフォルトの名無しさん (アウアウカー Sa6b-nn1e) 2017/01/04(水) 12:23:42.84 ID:BZb3HoVpa.net 1年独学したと書き込んだものですが、もともとフォートランを少しかじったことある程度なんで、 プログラミングを1からやりたいという気持ちでした。 なかなかサンプルの内容も?となることがまだ多くて、独学の限界かもって思ってました。

    プログラミング学習、独学の限界から抜け出す方法とは : IT速報
  • 低レイヤーの歩き方 - るくすの日記 ~ Out_Of_Range ~

    この記事は Kobe University Advent Calendar25日目の記事です。 低レイヤー技術(後述)をこれから学びたい人向けの入門記事です。 自身の経験を踏まえ、より多くの人達にこのレイヤーに興味を持ってほしくて書きました。 決して卒論がやばくてAdvent calendarのネタが作れなかったわけでは(ry なぜこんな記事を書いたか いわゆるシステムプログラミングのような低レイヤー(と言って差し支えない)ジャンルって一体何から始めれば良いのかいまいちピンと来ないし、何が面白いのかも分からないと思われている事が多いと思います。 にもかかわらず低レイヤーの魅力や学び方の指針みたいな物を示した、いわゆる入門記事ってかなり少ないんですよね。 記事はこれからシステムプログラミングを始めたい方や、既にかじってみたが中々先が見えてこない、将来何の役に立つのか不安という方達に読んでい

    低レイヤーの歩き方 - るくすの日記 ~ Out_Of_Range ~