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

  • 【Streamlit】JavaScriptが嫌いだからPythonだけでWebアプリをつくる - Qiita

    フロント(SPA)開発案件2つのプレイングマネージャーと開発リーダーやってますが、JavaScriptが死ぬほど嫌いです。 ブラウザ上で動作するスクリプトなので仕方ないし、async-awaitで大分便利になったけど、非同期処理がやっぱり好きじゃないです。 JavaとかPythonとかそれなりの期間触った言語は大概「みんな違ってみんないい」みたいな感じになるんですが、JavaScriptだけそうならないので当に嫌いなんだと思います。 因みにCSSはもっと嫌いです。 機械学習モデルの構築をPythonで実装することは多いと思いますが、ちょっとしたデモアプリでも作るとなると、フロント側はどうしてもHTMLJavaScriptCSSで組まないといけないです。 Jupyter Notebookも選択肢に入るかもしれませんが、Webアプリと比べると表現の自由度は下がるし、コードセルが見えるのは

    【Streamlit】JavaScriptが嫌いだからPythonだけでWebアプリをつくる - Qiita
    yukkesan
    yukkesan 2020/08/12
    js無しでどこまでできるか面白そう
  • レガシーエンジニアによるDocker入門 - Qiita

    初めに この記事は技術進化が5年前くらいで止まっている環境で働く私が、モダンな技術に触れる為に学習したことを記録したものです。 暇潰しに読んでいただければ幸いです 記事では、 Windows10 Home + WSL2の環境に、Dockerをインストール Golang + GitがインストールされているコンテナをDockerfileで立ち上げる VSCodeからコンテナに接続してHello World の3つを行います。 Dockerとは? DockerOracleVM等と同様、仮想環境を提供するソフトウェアです。OracleVMのようにOS全体を仮想化せず、OSの一部とアプリケーションの実行環境をまとめたコンテナと呼ばれる仮想環境を提供します。 コンテナはDockerfileというテキストファイルを元に作成され、Dockerfileが同一であれば、どのOSでも同一の環境を作ることがで

    レガシーエンジニアによるDocker入門 - Qiita
    yukkesan
    yukkesan 2020/08/11
    レガシーとは一体…。コボラーがどっかーでマイクロフォーカスとか動かす話かと思った。
  • carlo + parcelでお手軽デスクトップアプリケーション - Qiita

    ウェブ技術デスクトップアプリを開発するとなると、一番メジャーなのはやはりelectron/electronでしょう。ところがElectronは割と面倒です。配布ファイルのサイズ、セキュリティなど。 それとバンドラとして有名なWebpackですが、こっちも仰々しいです。 そこで今回はライトウェイトでゼロコンフィグな、carloとparcelの組み合わせについて書きます。 GoogleChromeLabs/carloは先日登場したばかりの headful Node app framework です。headlessならぬheadfulです。 中身はぶっちゃけると puppeteer-core の薄いラッパーです。 普通のPuppeteerはオープンソースのChromiumをダウンロードしてきて動作しますが、puppeteer-coreは既にローカルにインストールされているChromeなどを対

    carlo + parcelでお手軽デスクトップアプリケーション - Qiita
    yukkesan
    yukkesan 2018/11/15
    あとでためす
  • Windows7 - WindowsUpdate と ディスククリーンアップをしたらフリーズが頻発した

    事の経緯 ラップトップのHDD(SSD)容量が妙に逼迫していると思い、 ディスクのクリーンアップを試みたところ、WindowsUpdateの残骸が大量に残っていた。 殆どは C:\Windows\Install や C:Windows\Tmp 等にあり、200GBのSSDのうち120GB近くを ため込むという始末。 困ったことにディスクのクリーンアップでは消えてくれない。 幾つかWebを見て回ったところ、システムに影響が出るかも?という記載と 消してみたけれど影響でなかったよ?という相反するものが有り、いまいちよく分からない。 とはいえ、この容量を放置しているとディスク逼迫のせいで システムがやたら重い、という事象が避けられなくなってきたので 思い切って削除してみることにした。 結果 容量は当然空いた。 …が、シャットダウンに1時間近く掛かるようになった。 英語表記のラップトップなので、画

    Windows7 - WindowsUpdate と ディスククリーンアップをしたらフリーズが頻発した
    yukkesan
    yukkesan 2018/09/27
  • スマホ実機でhostsの追加が必要なページを確認した時のメモ - Qiita

    iphone hosts 追加」などでググると「脱獄が必要」という記事が目につきますが不要です。 Charlesで大丈夫でした。 プロキシすごい(よくわかってない) iPhoneの場合 PCiPhoneを同じネットワークに接続 PCでCharlesを起動 iPhoneのWifi設定の i マークタップ 一番下「HTTPプロキシ」を「手動」に サーバ「PCのローカルIP」ポート「8888」※Charlesのプロキシ設定のポート iPhoneからIPでページにアクセスすると、Charlesからポップアップがでるので「Allow」を選択して許可 見れました ※デフォルトのカーソル位置が「Allow」ではなくて「Deny」なので急いでクリックせぬよう Androidの場合 機種によって設定画面が違うのですが、基的なアプローチ(IPとポートを設定)は同じなので省きます。 Wi-Fi設定画面内を

    スマホ実機でhostsの追加が必要なページを確認した時のメモ - Qiita
    yukkesan
    yukkesan 2018/08/18
  • AWS Cloud9からVPSサーバへ接続 - Qiita

    以前、業務でCloud9を使用していたが、AWSに移行してから使ったことがなかった。 折角なのでAWSのアカウントを作成しつつ、EC2などのインスタンスではなく、 外部に借りているレンタルサーバーに接続することにした。 ■AWSのアカウント作成 こちらは特に難しいことはないので、割愛。 因みに初期は違ったようだけれど、AWS前のCloud9はクレジットカードが必要だった。 ■Colud9からレンタルサーバーへ接続 SSHで接続できればよいとの事だったので、早速試してみる。 ユーザー名、ホスト名を入れて、NEXTボタンを押下。 しかし、SSH接続エラーとなってしまう。 Public Keyとして表示されている公開鍵をサーバー側に設定必要なようだ。 レンタルサーバーのホームディレクトリに.sshフォルダを作成。 フォルダの権限を700に変更。 mkdir .ssh chmod 700 .ssh

    AWS Cloud9からVPSサーバへ接続 - Qiita
    yukkesan
    yukkesan 2018/05/24
    これがやりたかった
  • GitHub に AWS キーペアを上げると抜かれるってほんと???試してみよー! - Qiita

    🤔 前書き 稀によくある 、AWS を不正利用されちゃう話、 AWSで不正利用され80000ドルの請求が来た話 - Qiita 初心者がAWSでミスって不正利用されて$6,000請求、泣きそうになったお話。 - Qiita AWSが不正利用され300万円の請求が届いてから免除までの一部始終 - Qiita ブコメ等で GitHub にはアクセスキーを検索するBOTが常に動いていて、公開するとすぐに抜かれて不正利用される 的なコメントがつくのを何度か目にしたのですが、 当にそんな BOT が動いているの? どのくらいの時間でキーを抜かれて、不正利用が始まるの? というのが気になったので、検証してみました。 GitHub にそれっぽいパブリックリポジトリを作成、権限が一つもついてない AWS のアクセスキー&シークレットアクセスキーをうっかり公開、外部から利用されるまでの時間を計測します。

    GitHub に AWS キーペアを上げると抜かれるってほんと???試してみよー! - Qiita
    yukkesan
    yukkesan 2018/03/07
  • 「型」のお気持ち 〜 「型なし」と「動的型」って同じ?違う? - Qiita

    はじめに 「『型なし』と『動的型』って同じ?違う?」「ピピーッ!JavaScriptRubyを『型なし言語』と呼ぶのは間違いです!」 ツイッターを見ていると、このように「型」という言葉の用法に混乱がみられるので、私見で整理してみたいと思います。 まず、「型」という言葉の用法には、大きく分けて2つあります: 変数や関数についての静的にわかる性質 静的型言語では「型」と言ったら主にこちらを指します。 値の種類を区別するための実行時のタグ付け(型タグ) 「動的型言語」と言った場合の「型」はこちらです。 静的型言語でも「実行時型情報」という名前で、値にタグがついている場合があります。 前者の立場では、「動的型言語」は「型がない」ように見えて、後者の立場では、「動的型言語」にも「型がある」ように見えます。 「静的型 vs 動的型」(あるいは「型あり vs 型なし」)の議論をする際は、「型」という言

    「型」のお気持ち 〜 「型なし」と「動的型」って同じ?違う? - Qiita
    yukkesan
    yukkesan 2018/03/02
  • 軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita

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

    軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita
    yukkesan
    yukkesan 2018/02/28
    前職でクエリ結果をCSVに吐くだけで死ぬほど遅いjarがあったけど、こういう実装だったのかも。.netにもLinkedListがあることも知れて勉強になりました。
  • WindowsでのPython外部モジュール導入のはまりどころ - Qiita

    ちゃお……† 先日のこと、急に「自分がPyPIで公開してるモジュールたちはWindowsでも動くのかな?」と疑問が頭によぎったので調べました。(普段はMac使ってます) 結論から言うと、全部使えました! ですが、試行錯誤が過酷だったのでノウハウを共有したいと思います。 文字コードの問題 CやC++などのファイルをコンパイルできない場合 ファイルをなかなか離してくれない問題 文字コードの問題 PythonのモジュールはUTF-8前提のものがほとんどですが、 WindowsではCP932という文字コードを前提にしているので、 setup.pyでのインストール時に他のファイルを読み込むと下記のようなエラーが起こります。 C:\Users\yukino>pip install jctconv Collecting jctconv Downloading jctconv-0.1.tar.gz Com

    WindowsでのPython外部モジュール導入のはまりどころ - Qiita
    yukkesan
    yukkesan 2018/02/23
  • Javaではif (isAdmin == true)というコードを書いてはいけない - Qiita

    はじめに 当たり前だと思うのですが、意外と守られていないことがあります。その1つの例として、条件分岐でのbooleanの扱いを挙げてみます。 ~~タイトルには「Javaでは」と書きましたが、おそらくどの言語でも同じです。~~JavaScriptなど他の言語では当てはまらないので取り消します1。 何がダメか 明確にコーディング規約で否定しているケースもありますが2、Javaでは以下のようなコードは書いてはいけません。 if (isAdmin == true) { // isAdminがtrueのとき } if (isAdmin == false) { // isAdminがfalseのとき }

    Javaではif (isAdmin == true)というコードを書いてはいけない - Qiita
    yukkesan
    yukkesan 2018/02/20
    「真偽値」と「比較演算子」の意味を正しく分かっているなら書いていいのでは
  • PythonでさくっとWebスクレイピングする (JavaScript読み込みにも対応しつつ) - Qiita

    はじめに Webページから特定の要素を抽出してごにょごにょしたいときってよくありますよね。 (あるECサイトのある商品の在庫や価格を5分毎にウォッチしていたいとか、文書分類のために文を正確に抽出したいだとか、などなど...) そういう要素抽出をWebスクレイピングと呼んだりしますが、そんなときにもPythonは便利です。 ところでそういう目的ぴったりの、クローラー/スクレイピング Advent Calendar 2014というのがあって、以下の記事がよくまとまっています。(ちょっと前にその存在に気づいた) http://orangain.hatenablog.com/entry/scraping-in-python まずはやってみよう 前述の記事の最後にある通りPythonスクレイピングするときにはrequestsとlxmlでだいたい事足ります。 ではさっそくテレ朝ニュースの以下のペー

    PythonでさくっとWebスクレイピングする (JavaScript読み込みにも対応しつつ) - Qiita
    yukkesan
    yukkesan 2017/04/30
    python3でやってみた。printが関数化されてる以外はそのまま行けた。pythonすげぇなぁ。
  • すごーい! きみはプログラミング言語を実装できるフレンズなんだね - Qiita

    ジャパリパークのみんなー! フレンズのためのプログラミング言語ができたよー! サンプルコード Socrates すごーい! かばんちゃん は ヒトの フレンズ なんだね! すごーい! あなた が ヒトの フレンズ なら あなた は しっぽのない フレンズ なんだね! だれ が しっぽのない フレンズ なんだっけ? すごーい! 0 は 自然数の フレンズ なんだね! すごーい! きみ が 自然数の フレンズ なら きみ の 次 も 自然数の フレンズ なんだね! すごーい! 0 は 3の倍数の フレンズ なんだね! すごーい! きみ が 3の倍数の フレンズ なら きみ の 次 の 次 の 次 も 3の倍数の フレンズ なんだね! すごーい! 0 は 5の倍数の フレンズ なんだね! すごーい! きみ が 5の倍数の フレンズ なら きみ の 次 の 次 の 次 の 次 の 次 も 5の倍数

    すごーい! きみはプログラミング言語を実装できるフレンズなんだね - Qiita
    yukkesan
    yukkesan 2017/02/14
    たーのしー
  • Awesome Java : 素晴しい Java フレームワーク・ライブラリ・ソフトウェアの数々 - Qiita

    元記事: Awesome Java Awesome List in Qiita Awesome Ruby Awesome JavaScript Awesome Node.js Awesome Python Awesome Go Awesome Selenium Awesome Appium Bean マッピング Bean マッピングを容易にするフレームワーク dOOv - 型安全なドメインモデルの検証とマッピングのための API を提供します. アノテーション, コード生成, および型安全 DSL を使用して, Bean の検証とマッピングを迅速かつ簡単にします. Dozer - アノテーション, API または XML 設定を使用して, あるオブジェクトから別のオブジェクトへデータをコピーするマッパー. JMapper - 高速コードマッピングのためにバイトコード操作を使用. アノテーシ

    Awesome Java : 素晴しい Java フレームワーク・ライブラリ・ソフトウェアの数々 - Qiita
    yukkesan
    yukkesan 2017/02/11
  • 2点間の距離計算 (C, Clojure, Go, Haskell, Java, LOGO, OCaml, Ruby, Rust, Scratch, Swift) - Qiita

    2点間の距離計算 (C, Clojure, Go, Haskell, Java, LOGO, OCaml, Ruby, Rust, Scratch, Swift)ClojureOCamlRustSwiftScratch 地球を真球とみなして、緯度経度による2点間の距離をいろいろなプログラミング言語で計算する。 基方針は以下。 関数/メソッド1つをコピペして使えそうなコードにする require/import系を書かなくてよいなら書かない 標準ライブラリだけを使う 関数/メソッドの引数はプリミティブな浮動小数点4つ 変数/再代入不可変数/定数については「シンプルで違和感のない表現で」と思ってはいるけど決めかねている #include <math.h> #include <stdio.h> // 球面三角法により、大円距離(メートル)を求める double distance(double l

    2点間の距離計算 (C, Clojure, Go, Haskell, Java, LOGO, OCaml, Ruby, Rust, Scratch, Swift) - Qiita
    yukkesan
    yukkesan 2017/02/02
  • Junitでprivateメソッドのテスト方法 - Qiita

    はじめに Javaのテストユニットとして、Junitは当たり前に使用されるようになりました。 publicメソッドのテストは当然ですが、private,protectedメソッドの テストはおろそかになりがちです。 ホワイトテストの実施は、プログラマーの義務を思いますので、 テストの実施が必要です。 そこで、すべてのメソッドのテスト実施を行う方法を紹介します。 テスト用のコードを用意 まず、テスト対象のコードを用意します。 以下は、参考までに。 public Sample { public int add(int x, int y) { return (x + y); } protected int minus(int x, int y) { return (x - y); } private int multiplication(int x, int y) { return (x * y

    Junitでprivateメソッドのテスト方法 - Qiita
    yukkesan
    yukkesan 2017/01/18
  • Windows がなんか重いときにコマンドで調べる(WMIC PROCESS) - Qiita

    Linux だと ps, top, vmstat, iostat 等々、有名かつ簡単なコマンドが、みんなに共有されていて、「Linuxだと、調べるのも簡単」のようなことがある。 Windows が好きだったり、利用を余儀なくされる方が、Linux の ps にある種の嫉妬を感じることがある。Linux ではあんなに簡単な事が、Windows では、やり方すらわからない。もちろん、Ctrl+Shift+ESC でタスクマネージャーを表示すれば、同じことはできるのだが、なんでもかんでも自動化が叫ばれる昨今において、タスクマネージャーを表示させるぐらいでは、どうにもならない。 この記事では、WMICコマンドでプロセスの調査(WMIC PROCESS, WMIC PATH Win32_PerfFormattedData_PerfProc_Process)、RubyでWMIC同等のことする方法を扱う

    Windows がなんか重いときにコマンドで調べる(WMIC PROCESS) - Qiita
    yukkesan
    yukkesan 2016/12/16
  • Slackで多人数オンラインアクションゲームを作る方法 - Qiita

    この記事はドワンゴ Advent Calendar 8 日目の記事です。 昨日は @mokumoku さんの 「サーバサイド Swift でウェブページを運用している話 」 でした。 実は僕も仕事ではSwiftを書いていて(クライアントサイドですが)、Swiftは好きな言語の一つです。サーバーサイドSwiftはまだ書いたことがないため、記事を読んで挑戦しようと思いました。 今日のお話はSwiftは全く関係ない、SlackとBotとPythonのお話です。 あるおやすみの日のはなし ある日、弊社プロダクトのニコニコ動画を見ていると面白い動画と出会いました。 面白い実況者が爆弾を使うゲームを自作し、プレイして実況しているのをみて、僕はこう感じました。 「あぁー、僕も爆弾を置いて敵と戦うゲームやりて〜〜」 でも、その時はゲーム機を持っていなくやることができないのが心残りでした。 前置きが長くなり

    Slackで多人数オンラインアクションゲームを作る方法 - Qiita
    yukkesan
    yukkesan 2016/12/10
  • Rubyやってます、(`・ω・´)キリッ という為に押さえときたいテクニック - Qiita

    最近、スタートアップ系や新規開発でRuby(Ruby on Rails)を採用するところも増えてきており、Rubyやってる人がちらほら増えてきた感があるのですが、たま〜にRubyやってて何故それ知らないんだという事もたまにあり、Rubyやってます(`・ω・´)キリッ とそれでよく言えるなと呆れる事もありました。。。 そこで、少なくともこれは押さえておいて欲しいテクニックを紹介したいと思います。 クラスメソッド、インスタンスメソッド ★★★★★ これはテクニックではないですが、Rubyで最初に躓いたり、混乱する元の一つなので、Rubyをやっている以上、ちゃんと理解しておくべきことであると思ってます * 定義したClassから見た表 名称 説明

    Rubyやってます、(`・ω・´)キリッ という為に押さえときたいテクニック - Qiita
    yukkesan
    yukkesan 2016/12/10
  • ScalaでExcelを操作する 基本的な読み書き編 - Qiita

    import org.apache.poi.ss.usermodel._ val workbook = WorkbookFactory.create(new File("/path/to/excel/file"))

    ScalaでExcelを操作する 基本的な読み書き編 - Qiita
    yukkesan
    yukkesan 2016/10/12