タグ

開発に関するasakatanaのブックマーク (89)

  • 実践Drawio | フューチャー技術ブログ

    はじめにもともとはMicrosof Visioなどを使って作成していた図形(ネットワーク図、各種シーケンス、ERD..etc)ですが、ファイルストレージがクラウド(Google Drive)に移ることで、 そのまま編集したい 欲求が世の中で増しているように思います。 その場合の有効なツールとしてdraw.ioを利用するケースが増えてきたと感じます。そこで当社で蓄積したナレッジを文章化します。 Draw.io Tips1.ショートカット1.1. 公式ショートカットまずはここから始めましょう。 ショートカットはプロダクトの基操作が詰まっています。 https://about.draw.io/wp-content/uploads/2016/11/draw.io_shortcuts_basic_win_EN.pdf 2. 設定2.1. 日語化 画面右上の🌏マークから選択します メニューが開く

    実践Drawio | フューチャー技術ブログ
  • 設計ドキュメント腐る問題、Git管理で運用してみた結果 | フューチャー技術ブログ

    はじめにTIG真野です。 秋のブログ週間2023 の3目は、設計ドキュメントをGit管理して腐らせないようにがんばってみた話をします。 前段として6年前、「我々はいかにシステム開発におけるドキュメント腐る問題と戦えば良いのか」という記事を書いたのですが、その後の試行錯誤はどこにも残していないことに気づきました。普段のフューチャー技術ブログですとちょっと引け目を感じるテーマですが、秋の夜長を楽しむため読み物成分を多めに書くというテーマのこのブログリレーにピッタリな気がするため、この機会をお借りします。 ドキュメントも色々な種別があるかと思いますが、この記事では設計ドキュメントを指すことにします。設計ドキュメントは開発メンバーが参照するもので、ステークホルダーへの説明資料に引用して使うことはあれど、主目的は異なるという前提です。Design Docの場合もありますし、システム構成図、ERD、

    設計ドキュメント腐る問題、Git管理で運用してみた結果 | フューチャー技術ブログ
  • [JavaScript] URLを文字列結合で組み立てないために、url-cheatsheetを作った

    [JavaScript] URLを文字列結合で組み立てないために、url-cheatsheetを作った URLを文字列結合で組み立てると色々問題が起きやすいので、それを避けるためにURL APIやURLSearchParams APIでURLを組み立てるパターンをまとめたチートシートを作りました。 azu/url-cheatsheet: URL manipulation cheatsheet for JavaScript URLにユーザーが入力した文字列を含めるときはencodeURIComponentでエスケープする URLはプレーンな文字列ではなく構造化された文字列(文字の並びに意味がある文字列)として扱わないと、さまざまな問題を抱えやすいです。 たとえば、次のように文字列結合でURLを組み立てるとパストラバーサルの問題があります。 name に ../../adminのような文字列が

    [JavaScript] URLを文字列結合で組み立てないために、url-cheatsheetを作った
  • バッチ処理 プラクティス

    バッチ処理は既に先人の方々が多くのナレッジを公開してくれていますが、それでもなお難しさが変わらないテーマだと思っています。 この記事は、筆者がこれまでの開発経験で気づいたバッチ処理の実装ナレッジを整理し、体系化を目指して文章にしました。 ここでの内容が、より良い課題解決に貢献できれば幸いです。 自身の断片的な思考整理(メモ書き)の延長で内容を整理したため、一部書き振りが統一されておらず、読みにくいかもしれません。ご了承ください。🙏 バッチ処理の難しさバッチ処理は難しい。 人によっては簡単なテーマかもしれませんが、自分は難しいテーマだと思っています。 「難しさの根源は何か?」を考えると、1. 考慮点が多様にあること 2. 解決する課題によって答えが大きく変わること に整理できました。 この2点は、どのソフトウェア開発にも当てはまる項目ではありますが、ことバッチ処理においては顕著に現れます。

    バッチ処理 プラクティス
  • 第5回 セゾン情報システムズ 小野和俊―大規模な組織で柔軟性をいかに高めるか | gihyo.jp

    先進的な取り組みを続ける現場に訪問し、チームや個人としてどう成長していくべきかを取材するインタビューの第5回です。今回はセゾン情報システムズのCTO(Chief Technical Officer、最高技術責任者)およびアプレッソの代表取締役として、規模や特色の大きく異なる組織を率いている小野さんにお話を伺いました。セゾン情報システムズはSI事業が中心で組織規模は大きい一方、アプレッソは自社製品が中心のアジャイル開発チームということで、それぞれの特色を活かし、互いの良さを取り込むために小野さんがされていることについて聞きました。 【インタビューされた人】 小野和俊(おのかずとし)(⁠株⁠)セゾン情報システムズ 規模の違う企業での取り組み ─⁠─小野さんは現在、アプレッソの代表取締役とセゾン情報システムズのCTOという立場でお仕事をされています。それぞれの組織について教えていただけないでしょ

    第5回 セゾン情報システムズ 小野和俊―大規模な組織で柔軟性をいかに高めるか | gihyo.jp
    asakatana
    asakatana 2022/04/03
    アジャイルかウォーターフォールか自転車での例え
  • 手軽に負荷テストができるツール「Taurus」がスゴい

    modules: jmeter: version: 5.4.1 # ここに書いてあるバージョンを勝手にダウンロードしてくれる properties: log_level.JMeter: WARN log_level.JMeter.threads: WARN system-properties: org.apache.commons.logging.simplelog.log.org.apache.http: WARN 既存ツールのラッパーとして動作 デフォルトでは内部的にJmeterが実行されますが、以下のようなツールで作成されたスクリプトを流用することが可能です。 JMeter Gatling Locust Selenium Vegeta つまり、さきほどはYAMLでシナリオが記述可能とは言いましたが、もちろん既存のスクリプトを流用できるってことです。 いままで作り上げてきたスクリプトや

    手軽に負荷テストができるツール「Taurus」がスゴい
  • 「全ての住所フォームがこうなってほしい」 SIerが公開した“使いやすい入力欄”の作り方が話題 ソースコードも掲載

    郵便番号を入れる枠はひとまとまりに」「郵便番号を基にした住所の自動入力を搭載する」といった、使いやすい住所入力フォームを作る知見をまとめたブログ記事が話題だ。「はてなブックマーク」で1000ユーザー以上がブックマークした他、Twitterでも「参考になる」「全ての住所フォームがこうなってほしい」などの反応を集めている。 ブログでは、入力の煩雑さから離脱してしまうユーザーを減らすためにすべきことを大きく4つに分ける。 「郵便番号の枠はひとまとまりに」「郵便番号を入れたら即座に、もしくはユーザーがボタンを押したら住所を自動入力する」に加え「Webブラウザが備える住所の自動入力機能に対応・最適化する」「入力欄は『都道府県』『市区町村』『町名以下』の3欄を基とし、『建物』欄はオプションとする」といった機能が必要と紹介。それぞれの実装に当たっての注意点などを説明している。 これらの機能を搭載した

    「全ての住所フォームがこうなってほしい」 SIerが公開した“使いやすい入力欄”の作り方が話題 ソースコードも掲載
  • なぜエンジニアが作る画面はダサいのか…?「理由」と「対策」を徹底解説【エンジニア向け画面デザイン講座】 - Qiita

    なぜエンジニアが作る画面はダサいのか…?「理由」と「対策」を徹底解説【エンジニア向け画面デザイン講座】UXUIDesignUIデザイン画面設計 1.はじめに エンジニアの私がデザインを気で勉強した結果、デザイナーとエンジニアはそもそも思考が大きく違っているということがわかりました。 今回は「それ」をデザインに苦手意識のあるエンジニア方にも理解してもらえたらと思い、わかりやすくまとめてみました。 2.アプリの画面デザインを考えてみよう まず、こんなアプリを考えてみてください。 フィットネストレーナーが使うアプリ トレーニングルームでお客様とお話しながら使う 端末はタブレット そして 会員の個人情報確認 前回までのトレーニング状況の確認 次回の予約受付 といったことをします。 使える情報としては、こんな感じです。 あなたならどう画面デザインをするか、もしお時間があったら考えてみてください。

    なぜエンジニアが作る画面はダサいのか…?「理由」と「対策」を徹底解説【エンジニア向け画面デザイン講座】 - Qiita
  • 電子ペーパを使ったダッシュボードを設置した

    Likebook Mars 7.8(電子ペーパ) + Dashbling + Fully Kiosk Browserで、電子ペーパを使ったダッシュボードを作って動かすようにしたメモです。 電子ペーパーのダッシュボードを壁に設置した。 likebook mars + Fully kiosk Browser + dashbling. 結局材料みつけられなかったので、 余ってたエレコムのケーブル結束クリップで貼り付けた。 壁にマスキングテープ⇨梱包テープ⇨結束クリップで固定してるので簡単に剥がせる。 pic.twitter.com/LpLARCP3at — azu (@azu_re) February 2, 2021 最近Likebook Marsをあまり使ってなかったので物理的?なダッシュボードとして使うことにしてみました。 きっかけはDashblingの作者がKindleを使ったダッシュボー

    電子ペーパを使ったダッシュボードを設置した
  • Bash Scriptの作法 - Qiita

    はじめに チーム開発でシェルスクリプト(特にBash Script)を書く際に守るべきルールをまとめます。 シェルスクリプトのコードレビューをする際等にお役立てください。 スクリプト名 -区切りの小文字英数字(いわゆるkebab-case)をつける。拡張子は.sh. これは特に理由があるわけではないので_区切りでもよいし、チーム内にzshやfish等の他Shell愛好家がいる場合は拡張子は.bashでも良い。どちらにせよチーム内では統一しておかないと混乱の元となる。 改行コード LFを使用する。CRLFだと動作しないので書く際に間違うことはないが、Windows上のgitのautocrlf設定によってはご丁寧にCRLFでチェックアウトされてしまう。 避けるためにはgit config --global core.autocrlf inputとするか、.gitattributesをレポジトリ

    Bash Scriptの作法 - Qiita
    asakatana
    asakatana 2021/09/27
    シェルスクリプト
  • 目指すのは“C#大統一理論” Cysharpの多機能OSSで実現する最高の開発体験

    CA.unityサイバーエージェントが運営するUnityをテーマにした勉強会です。サイバーエージェントのサービス開発者と社外の開発者を交えて、Unityに関する知見を共有します。河合宜文氏からは、Cysharp社のOSSについて紹介がありました。 Cysharpのモットーは「C#の可能性を切り開いていく」 河合宜文氏(以下、河合):「A quick tour of the Cysharp OSS」というテーマでCysharpの河合が話します。お願いします。 私は河合宜文と言って、Cygamesの子会社であるCysharpという会社で社長をしています。今回イベントを主催したサイバーエージェントの子どもの子どもなので、孫会社です。Cysharpはいろいろとやってはいて、目に見えるところで一番大きなものは、OSSの提供だと思っているんですが、我々は「C#の可能性を切り開いていく」というのをテー

    目指すのは“C#大統一理論” Cysharpの多機能OSSで実現する最高の開発体験
  • Amazon SQS を使ったアプリケーションを本番で運用する際に考慮すべき基本的な 5 つのこと

    Amazon SQS は可用性やスケーラビリティの高いメッセジキューサービスであり、AWS の代表的なサービスの 1 つと言えるでしょう。ところが、番の運用に耐えられるアプリケーションにしようと思うと考えることが意外に多いものです。エントリーでは簡単なサンプルアプリケーションをベースに、番で運用するために考慮すべき点・注意点について見ていきます。題材として扱うのが SQS なだけで、SQS 以外を使ったアプリケーションにも応用できる内容もあるでしょう。 なお、SQS には Standard queue と FIFO queue がありますが、Standard queue を使う前提とします。 アジェンダは次のとおりです。 サンプルアプリケーション 1. ログ 2. At-least-once delivery と visibility timeout 3. デプロイ 4. 異常系 5

    Amazon SQS を使ったアプリケーションを本番で運用する際に考慮すべき基本的な 5 つのこと
  • C#でテキストエディタエンジンをフルスクラッチで実装してWebAssemblyで動かした話 - Qiita

    デモ 以下のリンクから試せます。 https://crash.jp/apps/crash-editor/ 未圧縮版(5MB) https://crash.jp/apps/crash-editor-br/ Brotli圧縮版(2.1MB) 環境によっては表示まで数秒かかります。二回目以降はキャッシュから読み込まれるので、表示に時間はかかりません。 キャッシュはブラウザの開発ツールから削除可能です。以下はChromeの場合。 開発ツール > Applicationタブ > Cache > Cache Storage ※デモを何度か上げなおしているので、エラーになる場合にはキャッシュを削除してみてください 動作環境 WebAssemblyに対応したブラウザが必要ですが、最近のブラウザであればまず問題ないです。 自分で確認した環境 Windows 10 Pro, Chrome/新Edge/Fire

    C#でテキストエディタエンジンをフルスクラッチで実装してWebAssemblyで動かした話 - Qiita
    asakatana
    asakatana 2020/10/06
    これはよい
  • 2019年末版 形態素解析器の比較 - Qiita

    形態素解析は日語処理の初歩であり、文を単語に分割したり、品詞や活用形、基形を分析するために行います。記事では形態素解析のツールをいくつかの出力例を交えて比較していきます。 (SentencePieceでいいじゃん、という人はお呼びでないですが、そういう方には、Twitterのトレンドが変な分割になってたら嫌では?と申し上げておきたいです) MeCab 言わずと知れた形態素解析器。とりあえずMeCabを使うという人は今なお多いことでしょう。とにかく高速であるということと、システムと辞書が分離されているのが特徴です。またPythonから使うのも簡単になりました(Janomeというものがありましたがmecab-python3の方が高速です)。Javaから使いたい人はKuromojiを使えばmecab(+ipadic)相当の結果が得られるはずです。 辞書はIPA辞書が推奨されていますが、Un

    2019年末版 形態素解析器の比較 - Qiita
  • 管理画面用のレイアウトやUIコンポーネントがほとんどすべて揃った、商用利用無料のHTMLテンプレート -Stisla

    商用のプロジェクトでも無料で利用できる、管理画面・ダッシュボードのレイアウトやUIコンポーネントが揃ったテンプレートを紹介します。 このテンプレートを使用すると、管理画面・ダッシュボードで必要なコンテンツを簡単に作成できます。 Stisla 管理画面・ダッシュボードに特化されたUIコンポーネントがほとんどすべて揃ったテンプレート。 30以上のサードパーティのライブラリと統合、多くのコンポーネントを簡単に利用できます。 HTML5とCSS3で記述されており、すべてのモダンブラウザでサポートされています。 Bootstrap 4をベースに、Flexboxでレイアウトされています。 一部のコンポーネントにはより簡単にやり取りするために、JavaScript APIを使用。 MITライセンスで、商用プロジェクトでも無料で利用できます。

    管理画面用のレイアウトやUIコンポーネントがほとんどすべて揃った、商用利用無料のHTMLテンプレート -Stisla
  • スマートレストランでGraphQL を採用した話

    3. 全体 流れ お客様 来店 着席 注文 事 会計 退店 ホール ②QRコードを読み取る ①来店登録、QRコー ドを発行してお客様に わたす ③iPadでオーダーを確 認し、調理する キッチン ④調理が完了したら、 通知を受取って配膳す る ⑤カードで会計をする ⑥会計が完了したら、お 見送りをする 4. レストラン スマート化 可能性 ホールキッチン ✔ 空席確認 ✔ 予約確認 ✔ アレルギー、好み 把握 来店後来店時来店前 ✔ 納品受け取り ✔ 仕込み ✔ おすすめメニュー 考案 ✔ メニュー表 更新 ✔ 予約確認・座席案内 ✔ 商品説明・レコメンド ✔ 配膳・バッシング ✔ お会計 ✔ 調理タイミング 管理 ✔ レシピ 共有 ✔ スキル 可視化 ✔ 満足度 把握 ✔ 在庫棚卸 ✔ 発注 お客様 ✔ 予約 ✔ 席 指定 ✔ 料理・ドリンク 注文 ✔ 会計 ✔ 二次会 検索 ✔ レビ

    スマートレストランでGraphQL を採用した話
  • 便利なクラスを使い回す!エクセルVBAで自作クラスをアドイン化する方法

    前回のおさらい では、前回までのおさらいからです。 まずは、標準モジュールから…こちらです。 Sub MySub() Dim timerObj As TimerObject: Set timerObj = New TimerObject Dim booster As PerformanceBooster: Set booster = New PerformanceBooster Sheet1.Cells.Clear Sheet2.Cells.Clear With Sheet1 Dim i As Long For i = 1 To 300 .Cells(i, 1).Value = i .Cells(i, 2).FormulaLocal = "=SUM(A1:A" & i & ")" .Rows(i).Copy Sheet2.Cells(i, 1).PasteSpecial Next i En

    便利なクラスを使い回す!エクセルVBAで自作クラスをアドイン化する方法
  • 【読書メモ】モニタリングでの4大シグナル/USEメソッド/REDメソッド - febc技術メモ

    最近、監視やモニタリング熱が自分の中で高まってきてます。 その一環で先月"Prometheus Up & Running"を購入しました。 Prometheus: Up & Running: Infrastructure and Application Performance Monitoring 作者: Brian Brazil出版社/メーカー: O'Reilly Media発売日: 2018/07/28メディア: ペーパーバックこの商品を含むブログを見る 少し前にようやく届いたので読んでいってます。 今回は読書のメモとして調べたサイトなどを残しておきます。 Prometheus Up & Runningに出てくるUSEメソッド/REDメソッド とりあえずPrometheus Up & Runningのchapter3まで読みました。 chapter3ではREDメソッドとUSEメソッドと

    【読書メモ】モニタリングでの4大シグナル/USEメソッド/REDメソッド - febc技術メモ
    asakatana
    asakatana 2019/02/17
    USE=使用率(Utilization)・飽和状態(Saturation)・エラー(Errors), RED=レート(Rate)・エラー(Errors)・時間(Duration)
  • ネットワーク越しでパイプしたり、あらゆるデバイス間でデータ転送したい! - Qiita

    何を解決したいか? Mac, Windows, Linux, iPhoneAndroidのスマホ・タブレットとかのデバイス間でデータの転送したいことがあります。 SlackとかLineとかSkypeとかAirDropとかあっても 送りたい相手と共通して使っているサービスを探す必要とか、 GUIのソフトウェアのインストールが必要とか、 AirDropだとApple系OSである必要 があるなどの転送の障壁があって、GUIが使えないデバイスに送りたいときなどは困ってしまいます。 すでにたくさんのファイル共有系のサービスがありますが、コマンドを使ったCUIベースにあまり親切な設計なものはあまりないと思います。 そこで、上記の問題を解決するために、以下のようなファイル転送の仕組みを作りました。 他デバイス間でデータ転送ができ、 別途ソフトウェアのインストール不要で、 パイプにとても親和性が高くエン

    ネットワーク越しでパイプしたり、あらゆるデバイス間でデータ転送したい! - Qiita
  • Expressのよさを語る2018 - keroxpのScrapbox

    2012年くらいから使っているが、一貫していいと思い続けているkeroxp.icon2018/8/1

    Expressのよさを語る2018 - keroxpのScrapbox