タグ

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

  • [#JTF2020 解説版]理解して拡げる 分散システムの基礎知識 - Qiita

    はじめに July Tech Festa 2020において、「マイクロサービスの今だからこそ!理解して拡げる 分散システムの基礎知識」のタイトルで登壇をしてきました。スライドはこちらにありますが、資料内や当日のトークで話せていない部分を含めて、こちらでblogとして解説をしておきたいと思います。 1. セッションの導入 - 新たなムチャブリ - 今回は昨年の#JTF2019で私が話した、「Cloud Native開発者のためのDatabase with Kubernetes」からの続編という形にしてみました。 昨年は、 「せっかくKubernetesを使うのにアプリケーションだけじゃもったいない。 DB、そしてステートフルなワークロードにも適用していきましょう」 という話をしましたが、Kubernetes-native Testbedなど、そうした取り組みが増えつつある傾向にはとても興味を

    [#JTF2020 解説版]理解して拡げる 分散システムの基礎知識 - Qiita
    upamune
    upamune 2020/08/04
  • プログラミングスクールで100日間勉強してできるようになったこと・思ったこと - Qiita

    はじめに フィヨルドブートキャンプというプログラミングスクールに通って100日間で457時間勉強しました。100日間でできるようになったことや感想などを書こうと思います。 自分の前提 プログラミングは完全に未経験 スクールに入る前にprogateをやった パソコンは昔から好きだったが、ネットサーフィンとゲームをしていただけ 100日間で勉強したこと HTML & CSS Linux Vim HTTP Nginx Git & GitHub Ruby だいたいこんな感じです。Rubyに55日かけたので1番の進歩はRubyだと思います。チェリーを読んで、lsコマンドとwcコマンドを作りました。この2つの課題はただ動くだけではダメで、オブジェクト指向でリーダブルなコードを書かないと合格をもらえなかったので、とても難しかったです。しかしひたすらググり、試行錯誤してコードを書く→レビューしてもらう、

    プログラミングスクールで100日間勉強してできるようになったこと・思ったこと - Qiita
    upamune
    upamune 2020/06/08
  • サーバーレスの理解とメリット・デメリット(2020年版) - Qiita

    (出典:ガートナー) CNCF(Cloud Native Computing Foundation)におけるサーバーレスの定義 CNCFでは、サーバーレス・コンピューティングのホワイトペーパーを公開しています(2018年)。 ここでは、以下のように定義されています。 A serverless computing platform may provide one or both of the following: Functions-as-a-Service (FaaS), which typically provides event-driven computing. Developers run and manage application code with functions that are triggered by events or HTTP requests. Develop

    サーバーレスの理解とメリット・デメリット(2020年版) - Qiita
    upamune
    upamune 2020/06/01
  • すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita

    sqlsとは sqlsとは、いま私が開発中のSQL用Language Serverです。SQLをエディタで編集するときの支援機能を実装したサーバとなっており、主な特徴は以下です。 Language ServerなのでLSクライアントが存在するエディタであればどんなエディタでも利用可能 SQL編集支援機能 自動補完(テーブル名、カラム名など) 定義参照 SQL実行 複数のRDSMSに対応 MySQL PostgreSQL SQLite3 Language Serverとは Language Server(あるいはLanguage Server Protocol)とは、プログラム言語の開発支援機能をエディタに提供するサーバ、およびその通信内容を規定したプロトコルです。ただしサーバといってもほとんどの場合ローカル内にホスティングしてローカルのエディタと通信をします。 ここでは主題ではないので詳し

    すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita
    upamune
    upamune 2020/05/16
  • スナック「jQuery」 - Qiita

    ……あら、いらっしゃい。 若いお客さんなんて珍しいわねえ。昔は、この街一番の人気店でね、若いお客さんもたくさんいたんだけどさ。最近はめっきり減っちゃってね。 何飲む? ……水割り? わかったわ。 じゃあさ、ちょっとだけ、あたしの昔話に付き合ってもらってもいいかしら。 What is jQuery? この店――『jQuery』がオープンしたのって、2006年なんだけどさ。その頃の、この街の様子って覚えてる? ……知らないか。あなた、まだ若いもんね。その頃って、そりゃあヒドイもんだったのよ。 その頃、シェア率トップだったブラウザって、もちろんInternet Explorerだったんだけど。当時はバージョン7が登場したばかりで、あの悪名高きIE6もまだまだ主流だったの。 他のブラウザは、Safariがバージョン3がMacWindowsに公開されていた頃で、Firefoxはまだバージョン2.0

    スナック「jQuery」 - Qiita
    upamune
    upamune 2020/05/07
  • 明日から使えるDDDのためのユースケース駆動開発(ICONIXプロセス) - Qiita

    この記事について この記事は2020年3月30日に BPStudy#151〜オブジェクト指向、モデリング、設計 LT大会[リモート開催]という勉強会でDDD時代に考えたいICONIXプロセスというスライドを発表させて頂いたのですが、発表時間の都合上説明できなかった部分をもう一歩踏み込んで具体的なやり方を紹介する為にまとめたものです。 スライドをご覧になって頂いた上で読んで頂くとより前後関係がわかりやすくなりますが、スライドを見ていなくてもこの記事から読んで頂いても問題ありません。 序 みなさんDDDは好きですか? 筆者は大好きです。 DDDとは簡潔に説明すると**「ドメインに詳しい人と一緒に育てたモデルをそのままコードに落としむ」**という設計手法です。 モデルとコードが対応しているからモデルの育成と共にコードを育てられる。そしてそのモデルはドメインに詳しい人と共に育てる。 凄く良さそうで

    明日から使えるDDDのためのユースケース駆動開発(ICONIXプロセス) - Qiita
    upamune
    upamune 2020/05/07
  • Haskellで超簡単にWebアプリケーションを作る(モナドも出てこないよ) - Qiita

    はじめに Haskellは静的純粋関数型プログラミング言語と言われるジャンルの言語であり、型や状態に厳しくWeb開発に向いていないと思われる方が多いと思います。 しかし 型の力によるクリーンアーキテクチャ 抽象化による高級な記述 圧倒的な型推論による軽量言語のような書き心地 意外と高いシングルスレッド性能 パフォーマンスも非常に高く, 書きやすい並行並列処理 上記のような利点があり、実はWeb開発に非常に有用な言語であると思っています。 HaskellでのWeb開発における標準的なインターフェースであるwai(web application interface)、そのインターフェースのアプリケーションを動作させる標準的なサーバーであるwarpという二つのライブラリを用いてボトムアップでWebアプリを作っていき、徐々に応用させていこうと思います。 waiとwarpはHaskellのWeb開発

    Haskellで超簡単にWebアプリケーションを作る(モナドも出てこないよ) - Qiita
    upamune
    upamune 2020/05/04
  • Let's Encryptを使用しているウェブページをブロックするプロキシサーバー - Qiita

    Let's Encryptはドメイン認証証明書を無料で発行してくれるたいへん素晴らしいサービスです。ウェブサイトをHTTPSで提供するためには証明書が必要ですが、Let's Encryptの登場以前は認証局から有料で証明書を発行してもらうのが主流でした。それを無料で発行してもらえるのは大変ありがたいことです。また、発行プロセスは自動化されておりとても簡単です。筆者も個人のウェブサイトは全てLet's Encryptで証明書を取得しています。 ところが、Let's Encryptが発行する無料の証明書なんて信頼できないという教義を信奉するタイプの人々も存在するようです。筆者は最近Twitterで見かけました。ということで、そのような思想を持つ方も安心してインターネットを利用できるように、Let's Encryptによって発行された証明書を使用しているウェブサイトのみブロックするプロキシサーバ

    Let's Encryptを使用しているウェブページをブロックするプロキシサーバー - Qiita
    upamune
    upamune 2020/05/03
  • iOSウィジェットにCO2濃度を表示する 【Raspberry Pi × CO2-mini × co2meter】 - Qiita

    WFH、捗ってますでしょうか。 我が家の場合、机やモニターなど家で仕事をするのに十分な設備は元々整っていたのですが、たったひとつだけオフィスにはあって自宅にないものがありました。 CO2モニターです。 成果物 パッと目につくところに表示させたかったので、iOSのウィジェットに置くことにしました。 最終的にこんな感じでCO2濃度、ついでに室温が見えるようになりました。 iPhone iPad 構成と概要解説 構成はこんな感じです ポイントは以下です。 CO2-miniでCO2濃度、室温を計測する CO2-miniとRaspberry Piを接続して定期的な計測を行い、Webサーバーとしてアクセス可能にする iOSアプリからWebサーバーへアクセスし、ウィジェットとして表示する 換気したくなる CO2濃度の計測は既製品であるこちらを使います。 CO 2モニター CO2-mini | 自然環境測

    iOSウィジェットにCO2濃度を表示する 【Raspberry Pi × CO2-mini × co2meter】 - Qiita
    upamune
    upamune 2020/05/01
  • 大幅にリニューアルされた Next.js のチュートリアルをどこよりも早く全編和訳しました - Qiita

    数日前(4/21頃)に Next.js のチュートリアルが一新されました。 Next.js は 3 月頭に ver 9.3 がリリースされ、ビルド時に静的に HTML を生成する関数などが追加されるなど、今までよりもかなりパワフルになり、いわゆる JAMstack と呼ばれるようなアプリケーションを作りやすくなりました。 そのバージョンアップに対応するかたちで、チュートリアルも大幅に書き直されました。 参考(開発チームの @chibicode さんのツイッター) Next.jsの公式チュートリアルを最新版に沿ってゼロから書き直しました! 🎓英語ですが初心者向けです! ⚛️最近導入されたgetStaticProps等の関数や、 🎨CSS Modulesの解説をしています! 🗣ブログを作りながら学びます 🤗ご感想お待ちしております!https://t.co/R4j9vpAQoc — S

    大幅にリニューアルされた Next.js のチュートリアルをどこよりも早く全編和訳しました - Qiita
    upamune
    upamune 2020/04/26
  • 左手骨折したので右手専用キーボードを自作した話 - Qiita

    左手骨折しました エンジニアにとって、手は商売道具です。手が使えなければ一般的なタイピングができず、コードを書くことができない。すなわちエンジニアとしての死を意味します。多くのキーボードは両手が使えることを前提に設計されているため、片手が使えないだけでも一気にハードモードになります。 わかっていた。わかっていたのに、事故というのは突然起きてしまうものです。 2週間ほど前、陽キャの真似をして人生2回目のスノーボードに挑戦しました。思ったより自由に滑れるなぁ、陽キャの道も近いなぁ、と調子に乗った次の瞬間でした。スピードを出し過ぎ、恐怖から重心を崩してしまい、派手に転んでしまいました。しかも、お尻からではなく左手から転んでしまったのです。。。 直後、左手首があらぬ方向へ曲がった感覚と、経験したことのない痛みが走りました。僕はこの人生、骨折の経験は一度もなかったのですが、それでも一瞬で骨が逝ったこ

    左手骨折したので右手専用キーボードを自作した話 - Qiita
    upamune
    upamune 2020/04/03
  • 新たな開発プラットフォーム "Dark/Darklang" を実際に触ってみて - Qiita

    はじめに 先日、私が以前に申請していたDarkのプライベートベータ版に漸く招待されたので、実際に触ってみた感想を述べよう思います。 1. Darkとは? Darkとは、Ellen Chisa、そしてCircleCIの創業者であるPaul Biggarによって設立された会社で開発されている「偶発的な複雑さ」を無くし、バックエンドWebサービスを構築するための総合的なプログラミング言語であり、エディタであり、インフラストラクチャです。呼称するならば、総合的なソフトウェア開発プラットフォームみたいな感じです。Web上にエディタが展開され、そこで全ての開発を行える為、開発ツールやパブリッククラウドと言った多くのテクノロジーを直接触る必要はありません。 また、最大の特徴としてはデプロイレスです。デプロイレスとは、入力したものが即座にデプロイされ、番環境ですぐに使用できます。Darkはインタープリタ

    新たな開発プラットフォーム "Dark/Darklang" を実際に触ってみて - Qiita
    upamune
    upamune 2020/03/23
  • io.Readerのファイルタイプを判定する - Qiita

    概要 Goでファイルを読み込んでいる時に、そのファイルのタイプを判別したいことがたまにあります。例えばGzipかどうか分からないけど、もしGzipならgzip.NewReader噛ませたい、みたいな場合です。雑にgzip.NewReader噛ませてerr返すかどうかで判定とかやってみたんですが、普通に10バイト読み進められちゃうのでerr返ったあとに別のファイルタイプとして処理しようとするとinvalidなヘッダーになって死にます。実は読み進められたバイトを戻す方法あるよ、という場合は教えて下さい。 そもそもGzip以外の判定をしたいときもあるので、NewReaderの方針も必ず使えるわけではありません。もしファイルがos.Fileとかbufio.Readerの形であればReadしてからSeekしたりPeekしたり出来るのですが、io.Readerの場合どうやるのか分からなかったので調べま

    io.Readerのファイルタイプを判定する - Qiita
    upamune
    upamune 2020/01/08
  • macOSでDockerを使ったGoのアプリケーション開発を爆速にするホットリローダを作った - Qiita

    はじめに メリークリスマス!! みなさんは Go のアプリケーション開発をどのような環境で行っていますか? 弊社ではゲームのアプリケーションサーバに Go を採用しており、開発は macOSDocker for Mac を利用しています。開発当初はこの構成による不満は特に感じていませんでしたが、1年半ほど経ってプロジェクトの規模が大きくなったことで、無視できないレベルで開発スピードを低下させる要因となってしまいました。 弊社ではアプリケーション開発にソースコードの自動生成を多用しており、その影響もあってかコードベースの Go のコードは 150万行を超える規模になっています。 加えて、ビルドする際は cgo 経由で利用している C++ のコードもそれなりの量絡んでくることもあり、 Docker for Mac を使った Docker コンテナ上でのビルドに要する時間は、 メモリ8GB

    macOSでDockerを使ったGoのアプリケーション開発を爆速にするホットリローダを作った - Qiita
    upamune
    upamune 2020/01/02
  • 温故知新 makeを使いこなす - Qiita

    最近社内でビルドの手順がちょいちょいMakefileで書かれているため、意外と知らなそうなmake及びMakefileの基的な使い方をまとめてみました。 参考図書はこちらです https://www.oreilly.co.jp/books/4873112699/ 。 基 まずは基から。makeの来の用途は、ソースコードのビルド手順を自動化することで、Makefileはその手順を記載したファイルになります。主にC言語をターゲットにしています。 一番基的な内容はターゲットと依存、そしてビルド手順の3つを記載したルールで構成されています。たとえば、次のように書きます。

    温故知新 makeを使いこなす - Qiita
    upamune
    upamune 2020/01/02
  • リビングの環境監視ダッシュボードを60分で作る方法(Nature Remo Cloud APIとGoogleサービス連携) - Qiita

    リビングの環境監視ダッシュボードを60分で作る方法(Nature Remo Cloud APIGoogleサービス連携)GoogleAppsScriptGASGoogleSpreadSheetNatureRemoGoogleDataPortal はじめに アレクサで、古い家電を操作する目的で購入したNature Remo。 センサーがとても秀逸だったので、部屋のモニタリングする仕組みを作ってみました。 部屋の環境が一目でわかるようになり、色々活用できそうです。 Nature Remo Cloud APIを利用して、Googleのサービスで作ってみました。 GAS(GoogleAppsScript)でGoogleスプレッドシートにデータを頂いて、Googleデータポータルにまとめてみました。これでサーバーレスかつセキュアなクラウド型環境監視ダッシュボードが完成しました。 とりあえず、トリガ

    リビングの環境監視ダッシュボードを60分で作る方法(Nature Remo Cloud APIとGoogleサービス連携) - Qiita
    upamune
    upamune 2019/12/31
  • ほんとうに酷い。Dropboxのサポート - Qiita

    Help us understand the problem. What is going on with this article? さくらインターネットの投稿が一世を風靡したので、私も負けじと投稿します。私のは、DropboxのCSに関する報告です。さくらさんほどじゃないですし、無料のサービスではあるんですけど、こっちも酷いとは思います。これも消されるんでしょうか? そもそも 元々の問い合わせは「SlackとDropbox Paper連携プラグインが上手く動作しない」ということでした。 それ自体は、日からエスカレーションされた(社の人と思われる)外人とやり取りして、すぐに解決したので何の問題もありません。酷かったのは、エスカレーションされるまでの「日法人のCSの対応」です。 やり取り(1回目) まず、最初に連絡したとき、不具合が発生するまでの手順をキャプチャ付きでDropbox

    ほんとうに酷い。Dropboxのサポート - Qiita
    upamune
    upamune 2019/12/30
  • 株AIを結構頑張ったら、儲かりそうな雰囲気が出ている - Qiita

    ABEJA Advent Calendarの10日目です。 はじめにのはじめに 以下は、あくまでテストデータで上手く行ってるよという話で、当にこれをやったら儲かるかというと、まだまだわかりませんのであしからず!あとネタがネタだけに、今回のはあくまで個人のやってみた記録であり、組織の取り組みとは関係ありません。 はじめに お金が欲しい!無限に寿司がいたい!株で儲けたい! 研究やエンジニアリングをしながら生きてく上で、将来のキャリアや技術スタックについて日々考えてるんですが、よくよく原点に立ち返るとそもそも技術スタックとかどうでもよくて、好きなものを作って漫画読んで生きていきたいんです。つまり結局、世の中は金なんですよね金。なので、何とかして寝てても圧倒的に儲かる仕組みを作りたい!そんな気持ちで私利私欲のために機械学習を使ったという記録です。 以下は、今回紹介する方法で実験したテストデータ

    株AIを結構頑張ったら、儲かりそうな雰囲気が出ている - Qiita
    upamune
    upamune 2019/12/26
  • 電波調整、ヨシ! - Qiita

    はじめに この記事は10年以上前の新卒時のやらかしを当時の記憶を思い出しながら書いているため、用語や整合性のズレ、肝心のやらかしが複数要因のどれだったか不透明なためにそれぞれの対処法を書いているなどの問題があります。 また、現場特有かもしれない開発フロー・やらかし内容を書くにあたって特定の可能性があるため、当時の関係者に配慮するための事情説明により乱筆乱文となっている事をご了承ください。 背景 10年以上前にとあるソフトウェア会社の組込み部署に新卒で入社し、携帯電話(ガラケー)開発の現場にN人の中の一人として出向していた時の話です。 新卒で現場出向する事例はあまり無いのですが、学生時代にC++とD言語でコードばっか書いてた時の作品をスキルチェックの為に見せたり、研修でのWindowsアプリやH8マイコン課題の結果から、新卒でも大丈夫だろうとの事で出向と相成りました。 現場は、そこで携帯のハ

    電波調整、ヨシ! - Qiita
    upamune
    upamune 2019/12/26
  • @moitaroのマイページ - Qiita

    posted articles:Excel:11%WindowsServer2012R2:11%Windows:7%WindowsServer:6%PowerAutomateDesktop:5%

    @moitaroのマイページ - Qiita
    upamune
    upamune 2019/12/26