タグ

ブックマーク / qiita.com (54)

  • 【AtCoder】中卒の主婦が青コーダーになったおはなし【競技プログラミング】 - Qiita

    はじめまして。mayocornです。 先日のABC281で青コーダーになりました! 経歴 20代の主婦。旦那は競プロやってないです。 中学卒業→高校入学→高校中退→バイトを転々とする(ITに関してはSESで半年ほど働いた経験あり)→今の住所に引越してきてからは無職 趣味ゲームで、最近やっているタイトルはファイアーエムブレムエンゲージ、Splatoon3です。音ゲーやカードゲームに熱中してた時期もありました。CHUNITHMは旧レートでベスト枠15.3くらい。でものめりこむほどお金がかかるのでやめました。競技プログラミングは何問解いても無料なので続けられてます。 学力に関して話すと、高校数学は確率、論理と集合がちょっとわかるくらいで三角関数、微分積分、行列あたりは全然分かりません。青パフォーマンスをとるのにこのへんの知識が必要になったことはなかった気がします。(私が参加した回の中では) 競

    【AtCoder】中卒の主婦が青コーダーになったおはなし【競技プログラミング】 - Qiita
    i0001c48
    i0001c48 2023/02/11
  • Salesforceに少しでも関わる方々にお伝えしたいたった1つのこと - Qiita

    皆様こんにちは。 先日、株式会社セールスフォース•ドットコム社より感謝状をいただきました。 すごく立派な感謝状です。 どうやら今回感謝状をいただけた方々はごくわずかだったようで、当に当にありがたいことこのうえないです。 さて、そんな私ですがSalesforceに少しでも関わる方々にどうしてもお伝えしたいことがありここに記事を執筆いたします。 今回私が皆様に言いたいことはたった1つです。 それは 「Salesforce当に難しい」 です。 大事なことなのでもう一度言います。 「Salesforce当に難しい」 私はSalesforceのお仕事に携わり数年経ちますが、未だに分からないことだらけで毎日ヒーヒー言いながらSalesforceをカチカチいじっております。 Salesforce当に複雑で難しく、日々気づきや学びを得ながらも、新しい謎が次々に生まれとても大変です。 ここ最

    Salesforceに少しでも関わる方々にお伝えしたいたった1つのこと - Qiita
    i0001c48
    i0001c48 2021/02/12
  • 最短経路問題総特集!!!~BFSから拡張ダイクストラまで~ - Qiita

    的アルゴリズム(幅優先探索など)から応用(経路復元、拡張ダイクストラなど)まで、最短経路問題に関するアルゴリズムを総特集しました。 基的なグラフ理論の用語については、次を参考にしてください。 グラフ理論 用語集 queueなどのデータ構造の用語については、次のスライドの後半を参考にしてください。 C++ STL講習会 by @e869120 最短経路問題とは 一般的に、次のような問題とされます。 $V$ 頂点と $E$ 辺からなるグラフが与えられる。頂点 $u$ と 頂点 $v$ を結ぶパスのうち、重みの総和が最も小さいものはどれか。 始点を固定して他のすべての頂点との対について最短経路問題を解く場合や、任意の2頂点の対について解く場合などが実際には多いです。 実社会とも強く密着した問題のため、古くからたくさん効率的な解法が考えられてきました。 今回はそれらを紹介しつつ、細かいテクニ

    最短経路問題総特集!!!~BFSから拡張ダイクストラまで~ - Qiita
    i0001c48
    i0001c48 2020/01/19
  • 続・Rubyのオススメの機能7選 - Qiita

    はじめに この記事は Ruby Advent Calendar 2016 の 17日目です。 去年、Rubyのオススメの機能7選 という記事を書いて、バズって、はてブホッテントリ入りしました。それに気をよくして、今年も同じようなネタで勝負したいと思います。 みなさん、ストック、いいね、ブクマお願いします。 Range#bsearch 、 Array#bsearch Array や Range はよく知られているクラスかと思います。その中でもあまり使われていないかもしれないメソッドとして bsearch メソッドがあります。 二分探索(binary search) が簡単に使えます。y = f(x) があったとき y から x を高速に求めることができます。 たとえば、下記では、二乗根を求めています。 def square(x) x * x end def root(y) (0..Float

    続・Rubyのオススメの機能7選 - Qiita
    i0001c48
    i0001c48 2019/11/25
  • Jenkinsのビルドジョブをdockerコンテナ上で行う - Qiita

    動機 Jenkinsが汚れていくのは見ていられない Jenkinsでjavaだけではなく、python、nodejs、rubyのビルドを行う場合はそれぞれの環境をインストールしなければならず、Jenkinsの中身が汚くなってしまいます。 特にJenkinsをコンテナとして運用する場合、変更をイメージとしてcommitしなければいけません。 Jenkinsでのコンテナビルドって面倒そうだと思っていた、が Jenkinsfileもあまり浸透してないこともあり、werckerみたいに、dockerイメージを選んでyamlを書けば自動でやってくれるようなイメージがなかったです。 が、下記サイト様を閲覧し、Jenkinsfileで気楽にできることを知りました。 参考 初めての Jenkins と Declarative Pipeline https://qiita.com/propella/item

    Jenkinsのビルドジョブをdockerコンテナ上で行う - Qiita
    i0001c48
    i0001c48 2019/06/15
  • 優れた開発者の習慣:Apple系ソフト開発者以外にもオススメのWWDC2019で発表されたセッション和訳 - Qiita

    初投稿です。 先日、WWDC2019に行ってきたのですが、そこである素晴らしいセッションに出会いました。 "Great Developer Habits" (優れた開発者の習慣) by Josh Tidsbury SwiftUIでもなければ、iOS13の新機能でもない。 一見するとあまり花のないセッションタイトルでしたが、内容はとても素晴らしいものでした。 忘れ去られるにはもったいないセッションでしたので、トピックを要約・和訳させていただきました。 Apple系の開発者に依存しない内容がほとんどです。 ぜひ、自分の開発体制を見直したりする一助としていただければと思います。 この記事の元セッション セッションのビデオ(約35分) 導入 私たちのチーム(Technology Evangelism)は真に素晴らしいアプリをデベロッパーの人たちに作ってもらうために存在している。 今日紹介するTip

    優れた開発者の習慣:Apple系ソフト開発者以外にもオススメのWWDC2019で発表されたセッション和訳 - Qiita
    i0001c48
    i0001c48 2019/06/14
  • Goコンパイラをゼロから作って147日でセルフホストを達成した - Qiita

    Go言語コンパイラをスクラッチから書いてセルフホストを達成しました。 Goコンパイラの実装はほとんど見ずに、ほぼ 8cc というCコンパイラから学んだ知識のみで作りました。 特徴 コンパイルするとアセンブリを吐きます 字句解析・構文解析は手書きです。yacc/lex などのツールは使っていません 標準ライブラリも自作です コード行数はテストをのぞくと 9,152行でした。 セルフホストに必要な機能しかないので、Go言語の全機能は網羅していません。 例えば以下の機能は未実装です。 ガベージコレクション go routineとchannel 浮動小数点 設計 70%くらいは 8cc の設計をそのまま引き継いでいます。 残り25%(map,slice,interface,method,型推論等)が自分のオリジナル、残り5%が9cc、くらいな感じです。 かかった期間 2018/10/7に着手し

    Goコンパイラをゼロから作って147日でセルフホストを達成した - Qiita
    i0001c48
    i0001c48 2019/05/20
  • 低レイヤーを学ぶための技術書をまとめてみる - Qiita

    半年前から低レイヤーに関する勉強をしている。 その中で読んだ技術書の感想、そしておすすめの読む順番をここにまとめてみる。 OS 30日でできる! OS自作入門 おすすめ度:80(満点100) 一言:自作OSの初心者向け 自作OSでまず初めに候補に挙がるのがこの。2006年に出版されたではあるが、OSの根幹を理解するにはとても良い。最初からアセンブリでメモリ操作をがっつり書くため、アセンブリの経験やレジスタ周りの知識が無いと挫折してしまうかも知れない。そこを乗り越えれば楽しくOSを実装していける。 コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方 おすすめ度:95 一言:一からOSを作って学べる格的な指南書 論理回路と呼ばれるレベルからメモリやCPUを作っていき、アセンブリ言語やアセンブラの開発、そして独自言語とそのコンパイラ、OSまで開発する。CPUなど各要点の考え方

    低レイヤーを学ぶための技術書をまとめてみる - Qiita
    i0001c48
    i0001c48 2019/01/12
  • 全ての開発者が学ぶべき5つの言語 - Qiita

    「どの言語を学ぶべきか」という議論はエンジニア向け記事の定番ネタですが、HackerNoonに投稿された5 Programming Languages Every Master Developer Should Learnという記事がなかなか興味深かったので翻訳してみました。 (2018/11/04追記) こちらの記事に関する「別視点からの意見」として下記のような記事を追加いたしました。宜しければこちらも併せてご参照ください。 Ruby->Go->Scalaという習得順序がエンジニアの爆速の成長に最適である理由 はじめに 「プログラマーは新しい言語を毎年1つは習得するべきだ」という趣旨の文章をどこかで読みました。(多分CODE COMPLETEだったと思いますが) もしそれが難しくても、キャリアの中で最低限この後に紹介する5つの言語に通じておくことをお薦めします。 あらゆる会社は、多言語を

    全ての開発者が学ぶべき5つの言語 - Qiita
    i0001c48
    i0001c48 2018/11/04
  • ブラウザで取得した音声データを、サーバーでwav形式で保存する - Qiita

    PCに繋いだマイクから簡単にサーバーに音声を送れないか、いろいろと調べた結果のメモです。 社内向けのちょっとしたツール用なので、「とりあえずGoogle Chromeの最新版で動けばいいや」という仕様です。 ほとんど自分用の覚書ですし、私はJavaScriptの知識はほとんどありません。Pythonはサーバーサイドやデータ分析用途でよく使っています。 もしかすると音声通信用の良いJSのライブラリがあり、以下に述べるような作業が一発で終わってしまうかもしれません。もしご存じでしたらコメントで教えてください! ブラウザで音声を取得し、websocketで送信する これは、GoogleのWEB開発者向け記事の『ユーザーから音声データを取得する』が参考になりました。 <script> var handleSuccess = function(stream) { var context = new

    ブラウザで取得した音声データを、サーバーでwav形式で保存する - Qiita
    i0001c48
    i0001c48 2018/06/14
  • 畳み込みニューラルネットワークすごさを従来の機械学習のアルゴリズムと比較する - Qiita

    畳み込みニューラルネットワーク(CNN)が画像判別でよく使われるというのは知っていても、従来の機械学習アルゴリズムと比較してどれぐらいすごいものなのかというのがいまいちピンとこなかったので確認してみました。だいぶ長いよ! 概要 機械学習のアルゴリズムとして、ディープラーニングが出る前は例えばロジスティック回帰、サポートベクトルマシン、ランダムフォレストなどがありました。従来の手法というと漠然としますが、Scikit-learnでできるアルゴリズムと考えてよいです。これらの手法は現在でも有効で、これらのどれを使っても、手書き数字(MNIST)に対して最低でも8割、ちゃんと実装すれば9割の精度は出ます。Scikit-learnはとても使いやすいライブラリで、学習効率・実装効率ともによく、計算が比較的簡単なので高速です。逆にその段階で9割近く出ちゃうと、「学習が大変で処理も遅いディープラーニング

    畳み込みニューラルネットワークすごさを従来の機械学習のアルゴリズムと比較する - Qiita
    i0001c48
    i0001c48 2018/06/04
  • 計算量オーダーの求め方を総整理! 〜 どこから log が出て来るか 〜 - Qiita

    NTT データ数理システムでリサーチャーをしている大槻 (通称、けんちょん) です。今回は計算量オーダーの求め方について書きます。 0. はじめに 世の中の様々なシステムやソフトウェアはアルゴリズムによって支えられています。Qiita Contribution ランキング作成のために用いるソートアルゴリズムのような単純なものから、カーナビに使われている Dijkstra 法、流行中のディープラーニングに用いられている確率的勾配降下法など、様々な場面でアルゴリズムが活躍しています。アルゴリズムとはどんなものかについて具体的に知りたい方には以下の記事が参考になると思います: アルゴリズムとは何か ~ 文系理系問わず楽しめる精選 6 問 ~ アルゴリズムを学ぶと $O(n^2)$ や $O(n\log{n})$ や $O(2^n)$ といった計算量オーダーの概念が登場します。こうした記法を見ると

    計算量オーダーの求め方を総整理! 〜 どこから log が出て来るか 〜 - Qiita
    i0001c48
    i0001c48 2018/05/11
  • AWSがリリースしたブロックチェーンフレームワーク「AWS Blockchain Templates」は何がスゴイのか - Qiita

    2018年4月21日 アマゾン(AWS)がブロックチェーンフレームワーク「AWS Blockchain Templates」をリリースしました。 AWS Blockchain Templates AWSがブロックチェーンフレームワークをリリースしたことによる、開発者サイドの利点について以下のとおり調査しました。 1.結論 クラウドシェア世界No.1であるAWSが、ブロックチェーンフレームワークをリリースしたことによる市場へのインパクトは大きい。 AWS上で、ブロックチェーンの環境構築、アプリケーション開発、アプリケーションのリリースまで一気通貫でできる。 AWS Blockchain Templatesは、EthereumとHyperledger Fabricの2つのフレームワークから選択できる。 AWS Blockchain Templatesは無料で利用できる。必要なコストは、ブロック

    AWSがリリースしたブロックチェーンフレームワーク「AWS Blockchain Templates」は何がスゴイのか - Qiita
    i0001c48
    i0001c48 2018/04/24
  • Chrome ヘッドレスでファイルダウンロード[Golang + chromedp] - Qiita

    やったこと Chrome Devtools Protocolを用いて、HeadlessChromeでファイルダウンロードをする。 実際のコード 例としてMoneyForwardにログインして、家計簿のcsvをダウンロードするコードを書いてみる。 package main import ( "context" "log" "time" "os" "github.com/chromedp/chromedp" "github.com/chromedp/chromedp/runner" "github.com/chromedp/cdproto/cdp" "github.com/chromedp/cdproto/page" ) func main() { var err error // create context ctxt, cancel := context.WithCancel(contex

    Chrome ヘッドレスでファイルダウンロード[Golang + chromedp] - Qiita
    i0001c48
    i0001c48 2018/04/18
  • CTFを始めるときにおすすめな本とか - Qiita

    CTFは分野も幅広いし分かりやすいステップもないので、やり始めるときどうするか結構迷いやすいと思います。 なので自分にとって役に立ったものをまとめてみました。書籍がメインだけどサイトへのリンクも増やしていきたい。 紹介している(とamazonへのリンク) CTF全般 セキュリティコンテストチャレンジブック CTFで学ぼう!情報を守るための戦い方 セキュリティコンテストのためのCTF問題集 Rev デバッガによるx86プログラム解析入門 リバースエンジニアリングバイブル 大熱血アセンブラ入門 楽しいバイナリの歩き方 Reverse Engineering for Beginners Pwn HACKING: 美しき策謀 Crypto 秘密の国のアリス 暗号解読 Web 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践 第2版 前提 簡単なプログラムが書ける、読めること

    CTFを始めるときにおすすめな本とか - Qiita
    i0001c48
    i0001c48 2018/02/10
  • Web Developer Roadmap 2018が出たので2017年版と比較してみる - Qiita

    のようなイメージではないでしょうか? (灰色と橙色の分け方は作者のおすすめ度(匙加減)な気もしなくないんですが) はい…まさにこの通りですのでこれを参照頂ければなと思います。隅まで目を通していないのがバレますね。 では早速題 🚀Introduction これが2017版 2018版 左の奴らが軒並みチョーヤバいです。雑だな! まあここは導入みたいなもんなんで深くは追及しません。最早OSSや仮想鯖、クラウド環境化での開発は必須なんだってことが言いたいんだと思います。(適当) デザインパターンってのはGoF(Gang of Four)というおじさん4人がソフトウェア開発に取り入れたオブジェクト指向プログラミングにおけるこう書くとオブジェクト指向的にええと思う!っていうパターンの集まりです。全23種、知らず知らずのうちに使っているものも多いです。 なんで今追加されたのか僕にはよくわかりません

    Web Developer Roadmap 2018が出たので2017年版と比較してみる - Qiita
    i0001c48
    i0001c48 2018/01/17
  • serverless frameworkを使って本格的なAPIサーバーを構築(魅力編) - Qiita

    最近、推しメンの serverless framework の記事の第1弾です。 保守メンテが楽になりつつも、実戦で速攻で構築ができます。 目次 serverless frameworkを使って格的なAPIサーバーを構築(魅力編)← 今ここ serverless frameworkを使って格的なAPIサーバーを構築(ハンズオン編) serverless frameworkを使って格的なAPIサーバーを構築(Express編) serverless frameworkを使って格的なAPIサーバーを構築(テストコード編) こんにちは!某会社のインフラエンジニアをしておりますが、最近は サーバーレス という言葉が流行ってますね。 今回は、serverless frameworkで 「 lambda + APIGateway + DynamoDB 」 の構成でいくつかサービスを作ったので、

    serverless frameworkを使って本格的なAPIサーバーを構築(魅力編) - Qiita
    i0001c48
    i0001c48 2018/01/03
  • ノンデザイナーでもイケてるLPを作成する方法 - Qiita

    はじめに イケてるは誇張かもしれませんが社内にデザイナーがいなく、 エンジニアにランディングページを作ってと振られたときのケースを想定して ノンデザイナーでも体系的にCSSコーディングすることでそれっぽいランディングページを作成できることを目的としてます。 デザインは一朝一夕でできるものではなく、ブランディングに関わる部分の画像に関しては、商材の撮影やPhotoShopやIllustratorで専用のアイコンやロゴ画像を別途制作する必要があります。 格的に作成する場合はやはり職のデザイナーさんに依頼した方が良いでしょう。 (それっぽいといったのは今回はそれらのブランディングに関わる画像の作成を省いて、素材画像やCSSでごまかしているからです。) 今回はCSS Designerという仮想CSSエディターの商材を想定してランディングページを作成しました。 作ったページ全体のサンプルはこちら

    ノンデザイナーでもイケてるLPを作成する方法 - Qiita
    i0001c48
    i0001c48 2018/01/03
  • 知っておきたいLinuxファイルシステムの概念 - Qiita

    ファイルシステムとは ファイルシステムとは、データとメタデータをある構造に従ってストレージデバイス上に格納したものを指す。 ファイルシステムの作成には mkfs(8) コマンドを使用する。 全体アーキテクチャ 以下の図の通りである。詳細は以下で説明する。 ファイルシステムの構造 ここでは、古典的ファイルシステムであるext2をベースに説明する。 ファイルシステム内で領域を割り当てる基単位を論理ブロックという。ディスクデバイスの連続する物理ブロックから構成される。論理ブロックサイズ1024,2048,4096バイトのいずれかを選択できるが、これは mkfs(8) のパラメータとして与える。 ディスク上では、以下のように格納される。※ext2の構造はブロックグループごとに分かれており、もう少し複雑になっている。 ブートブロック・・・OSを起動する情報を保存する。すべてのファイルシステムでブー

    知っておきたいLinuxファイルシステムの概念 - Qiita
    i0001c48
    i0001c48 2018/01/02
  • React とGUI 設計論、あるいは新世代のホームページビルダー - Qiita

    注意。実装はまだないです。思考実験的な意味合いが強いです。 持論 Reactやredux/Rxのデータモデリング手法の発達で、ツリー構造の末端に渡すまでのデータモデリングが主戦場になりつつあります。これはロジックを注入する部分と、プレゼンテーショナルなものが明確に分離されてきたことを意味します。 僕は個人的に、 GUI にまつわるものは、GUIで設計したい、という気持ちがあります。そう、僕が作りたいと思っているのは、悪名高きホームページビルダーです。 とはいえ、プログラミング抜きでxxxできる!というものではありません。むしろプログラミングとGUIを横断するイメージで、Unity や UnrealEngine のような開発環境を想定しています。 今やりたい理由 ブラウザの仕様が安定してきた 色々と使えるパーツが増えた JS で複雑なツールを作れるようになり、インブラウザな開発ツールが作

    React とGUI 設計論、あるいは新世代のホームページビルダー - Qiita
    i0001c48
    i0001c48 2017/12/16