Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

結果はどうなったでしょうか。 自分が今使っているGoogle Chromeだとこうなりました。 結果は{a: 10}というオブジェクトです。まあ、これは当然ですね。3 + 5と入力すれば実行されて8が返ってくるのですから、{a: 10}というオブジェクトリテラルを書けば{a: 10}というオブジェクトが作られるのは当然です。 ……。 ここで、一部の人は「おいふざけんなよ」と思っているかもしれません。というのも、この例は環境によっては違う結果になるのです。具体的には、Chrome以外2のブラウザのREPL(FirefoxやEdgeなど)が該当します。あと、ts-nodeのREPLも該当するらしいです。これらの環境では、結果は{a: 10}ではなく次のようになります。 オブジェクトを作ったはずなのに結果が10とか意味不明ですね。そもそも、こんな簡単なプログラムで結果が全然違うとか、JavaSc
2022/01/17追記:この方法では無効化できません。【Chrome】ServiceWorkerを今度こそ決定的かつ完全に消去するを参照してください。 ServiceWorkersというAPIが存在します。 ブラウザをフルスクリーン表示したり、デスクトップにアイコンを作成したり、PUSH通知を行ったり、バックグラウンドでJavaScriptを動作させたりといった機能を提供します。1 見てのとおりユーザには何一つ利のない機能なので、必ず無効化しましょう。 なに、動かなくなるサイトがあって困る? 大丈夫。 ServiceWorkersがないと動かないサイトは、存在そのものが不要なサイトです。 手順 PC版Chrome 無効化 URLにchrome://flags/と入力すると、全面英語の設定画面のようなものが出てきます。 最上部の検索欄に「Worker」および「PWA」「Progressiv
##時刻同期は大切です! WindowsサーバをNTPサーバにするとLinuxからの時刻同期に手こずることがよく有りますよね?そんな人のために設定手順をまとめてみました。 ##環境 外部NTPサーバ: ntp.jst.mfeed.ad.jp (210.173.160.87) 内部NTPサーバ: 192.168.0.1(Windows Server 2012 R2) 内部NTPクライアント: 192.168.0.23(CentOS 7.x) ※Active Directory 環境の場合はFSMO(PDCエミュレータ)を持っているドメインコントローラ、それ以外のドメインコントローラーともにデフォルト状態でLinuxから時刻同期をすることができました。確認したのはWindows Server 2016になります。 時刻同期フロー 外部NTP←内部NTP←(Linux、Windows、ルータ等の
発端 VirtualBox上にCentOS 6.7のサーバを構築・稼働させていましたが、先日、VirtualBoxをバージョンアップさせてからNTPによる時刻同期ができなくなっていました。 現象としては、時刻がかなりのスピードで遅れていく。 NTPDの代わりにChronyを入れてみたり、いろいろと試行錯誤するも時刻同期がうまくいかない状況。仕方ないので、VirtualBoxのAddtionを突っ込んで、時刻同期するようにしました。 VirtualBoxのAddtionによる時刻同期設定 1. VitualBoxのAdditionのインストール (1) VirutalBoxのメニューから、「デバイス」-「Guest Additonalのインストール」を選択 (2) CDのマウント
先日CentOSでLAMP環境を構築する機会があったのですが、サードパーティのyumレポジトリは使用したくないため、いろいろ探してみたところ、Software Collections(SCL)というCentOSの公式レポジトリ(要追加)があることがわかりました。結構新しいバージョンのphpやhttpd,mysql(mariadb)が配布されているため、手っ取り早く環境を構築したい人はおすすめです。 本記事では、EPELやRemiなどその他の主だったyumレポジトリと比較してSoftwareCollectionsの位置づけと概要をまとめてみたいと思います。 EPEL EPELとはExtra Packages for Enterprise Linuxの略で、Fedoraの有志が作成、メンテナンスしているRed Hat Enterprise LinuxやCentOSでも使えるパッケージレポジトリ
なぜこの記事を書こうと思ったか 配属されてからは、業務でCSSを書くといったら、Bootstrapのclass名を付与したり、機能追加の際にちょっと書くといったことだったのですが、大幅にサービス全体のCSSを見直さなきゃいけない機会があったので、どんなことを考えたのか書いておきます。 CSSのリファクタリングや再設計は工数がかかる上に、そこまで対価がない結構辛いことだと思います。また運用していて数年が経てば大体の場合がCSS設計は崩壊していきます...。 特に途中で気づいた、最初に決めておけばよかったということも多々あったので参考になればと思います。 前提条件 下記のような時に、この記事は役に立つのではと思って書いてます。 すでにあるWebサービスの大幅なデザイン改修がある 新しくCSSを書かなきゃいけないページが5ページ以上ある 既存のCSS設計を見なさなきゃいけない(CSSファイルが6
過去にWordPressを題材にしていろいろな脆弱性のケーススタディを取り上げました。 Webアプリケーションの脆弱性ケーススタディ(WordPress編) Webアプリケーションの脆弱性ケーススタディ(WordPress編その2) 今回は、ReDoS(Regular Expressions DoS)について取り上げてみたいと思います。ReDoSとはOWASPによると以下のように記載されています。 The Regular expression Denial of Service (ReDoS) is a Denial of Service attack, that exploits the fact that most Regular Expression implementations may reach extreme situations that cause them to wor
はじめに JavaScript おじさんが教える本当の Modern JavaScript 入門 1 で気になった項目について自分なりに書いてみました。 書くモチベーションはゼロなのでおかしいところが多々あると思います。 ブログでやれよ。っていう話もあると思うし、僕もそう思うけど、まぁ許してくれ。 編集リクエストがあるじゃん。っていう話もあるけど、多分とりこんでくれないかなーと思ったので、別記事にした。 Qiitaの人にも申し訳。 一応書くアレになったアレをアレしておきます。 では書いてもらえませんか? — 1日一つ強くなる中西 (@better_than_i_w) 2018年8月25日 記事のはじめ まずこの記事で言う「JavaScript」はブラウザで動作するJavaScriptのことを指しています。 そのためNodeとかは考えておりませんのであしからず。 またJSに限らずですが、常に
はじめに 背景と目的 元ネタは、@ozuma5119氏のスライド個人でEV SSL証明書が欲しい話でした。スライド36枚目から、オレオレEVSSL証明書1を作ってブラウザ(Firefox)に認識させようという試みが説明されているのですが、結局成功していませんでした。 そこでこの話に触発されて、 オレオレEVSSL証明書をブラウザ(Firefox)に認識させることはできるのか 件のスライドの説明よりもっと楽な方法はないか 件のスライドでうまく行かなかった理由は何か を調べた話になります。 前提 SSL/TLSの本当に基礎については、拙記事SSL/TLSの見落とされがちな「認証」という基本機能をご覧ください。その中でEVについても軽く触れています。 また、今回の話の全体像をつかむためには、冒頭で紹介したスライドを一読されることをお勧めします。 注意 本記事の趣旨はあくまで、ブラウザがEVだと認
一部修正しました Udemy で React コース公開してます。(絶対 Udemy の 1200 円割引価格にはしないので、このリンクから買ってもらうのが一番お互いに得です。) Udemy React + Redux コース 本発表における Modern JavaScript とは何か Phase 1 として以下の環境での開発ができれば Modern JavaScript に入門できたものとする。 Webpack, Parcel 等の module bundler による "module system" の活用。 ES2015+ や TypeScript といった *"Compile to JS 1" の使用。それに伴う Babel によるトランスコンパイルツールの使用。 ESlint, Prettier といった集団開発における、ソース品質安定のためのツール の使用。 ここまでのツール
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? #はじめに パワーのあるPCにとってはさほど関係のない話なのですが、セカンドマシンやポータブルマシンとして、薄型低スペックのマシンを持ち歩いている人も多いと思います。 これは、モバイル機を快適に使うためのTipsみたいなものです。 重い、遅い モバイル機に多く使われているeMMCというストレージですが、こちら読み込みは高速なものの書き込みが遅いため、MSが標準搭載しているWindows Defenderやバックグラウンドで動作するWindowsアップデートが走ってしまうと、まともに操作できない状態に陥ることがあります。 そこで、この、重
NIX 互換環境に見られるようなパッケージマネージャが Windows 10 で遂に公式にサポートされるようになった。既存のサードパーティ製パッケージマネージャを内包して抽象化するエコシステムが取られている。 備忘録としてメモ。 概要 Package Management for PowerShell Modules with PowerShellGet - The Microsoft MVP Award Program Blog - Site Home - MSDN Blogs 上図のように、既存の NuGet や Chocolatey を 1 つの Provider として位置付け、PowerShell 上から共通インターフェースでそれらを扱える仕組みを提供している。 図の転載元記事にあるように、このエコシステムは PowerShellGet と OneGet と呼ばれる。 2015
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? SysVinitおぢさんなので。 コレのメモ書き http://www.slideshare.net/enakai/linux-27872553 SysVinit / UpStart systemd の起動処理/操作方法 journald のログ管理 Unit設定の書き方 Tips SysVinit / Upstart BIOS が Grub を読み込んで実行 → Grub が Kernel と初期ラムをメモリに展開して Kernel 実行 → Kernel が init Script を実行 SysVinit/Upstart は /e
普通のプログラミング言語での開発に慣れた人ほどシェルスクリプト、特にBashで戸惑う部分の一つに、i = 0のように空白を開ければエラーになるし、かといってif[$i!=0]のように詰めてもやっぱりエラーになる、という点が挙げられます。書きたい物を思うように書けなくて「なんだよこのクソ言語は!!!」とブチギレる人は少なくないのではないでしょうか。この記事では、そのイライラを解消するポイントをお伝えしようと思います。 以下、特に断り無く「シェルスクリプト」と書いている場合はすべて「Bashのスクリプト」という意味になります。zsh等他のシェルではまた事情が異なりますので、ご注意ください。 (※以前プログラマーの君! 騙されるな! シェルスクリプトはそう書いちゃ駄目だ!! という話という記事を書いたのですが、この記事は、その増補リファイン版として執筆させて頂いたSoftwareDesign 2
Rapidusの進捗を記していく。逐次更新 どんなJSエンジンを目指してるのか 自作ブラウザ(Naglfar)に組み込めるようなもの ↑でも当分はNodeJSみたいなのを目指すと思う (それ単体で使えるような物、という意味) JITに対応し、速い (LLVM使う?) 8/11追記: Tracing JITが部分的に動いた 課題 グローバル変数の呼び出し、遅い ネストした関数、実装してない 実装しました VMとVMのコード生成に関するコードのテストを書いてない (最近書き始めた) よく考えたら、字句解析器がコメントに対応してない 対応 参照渡しできない 進捗 日数は、Gitでコミットした日を数えてます。(7/1 7/2 7/5 とコミットしていたら、7/5は3日目としてカウント) 1日目 字句解析器がほぼ完成
2つレゲックス patternを見ると、どれが良いですか、すぐに答えられます。 **基本的に、レゲックス pattern は長ければ長いほど良いです。**もちろん、正解なければなりません。 なぜは? 普通は、なんでも検索するとき、くわしく情報を入力すると、結果が正しくなって、時間もかからない。これも一緒。 #3.マッチする入力とマッチしない入力 1. [(.)]\s+(.)\s--\s:\s+(.) 2. [([12]\d{3}-[01]\d-[0-3]\dT[0-2]\d:[0-6]\d:[0-6]\d +#\d+)]\s+(.)\s--\s:\s+(.) [2016-05-02T16:05:18 #92430] INFO -- : Served asset /navi/hu-0005-03/style.css - 304 Not Modified (1ms) (1)すべ
となります。 (もちろん、上のパタンは、デタラメなものも引っかかるので、正しくないけど、そういうのはいったん無視。 感覚的には下の方がよさそうだけど。どういうことですか? ステップ数を見てみる! https://regex101.com/#pcre この素晴らしいサイトを利用します。 123-4567とのマッチングを考えます。 まず、/^\d{3}-\d{4}$/ はこんな感じで、7ステップ 一方、/^.*-.*$/ は..12ステップ ということで、.* の方がステップ数が増えてパフォーマンスが悪くなっていそうです。 (実際パフォーマンスはこのステップ数に依存しそうなので、悪くなっていると思います。後で時間測ります。 バックトラック(BACKTRACK)と出会いました。 上のツールを使うことで、正規表現の処理順序が視覚的に理解できます。 左から比較処理をしていくのですが、ステップ3を比較
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く