注意 本件記事ですが、私の不適切な行動(拾ったスクリプトを検証なく走らせる)が原因です。「dockerは(特に何もしなくとも)危険」との誤解を皆様に与えた点、ご迷惑をおかけいたしました。申し訳ございません。 拡散されている記事を削除するのはさらなる誤解を招きかねないと思いましたので、冒頭に注意を付記しております。以下の記事は、「自分が何してるかをきちんと検証できないとセキュリティホールを生み出す」という意味で参考にして頂ければ幸いです。 追記 Twitterやはてブで言及いただきました皆様、ありがとうございます。 本件はpullしてきたイメージが悪意ある開発者によるものかどうかにかぎらず、不適切な設定をしていると起こり得ます。 ※コメント欄に質問への回答という形で、私がそのときに走らせていたイメージの一覧を挙げておりますが、どのイメージも評判あるものだと思います。 皆様におかれましては「あ
キーボードショートカットを使う キーボードショートカットを使うには、1 つまたは複数の修飾キーを押しながら、ショートカットの最後のキーを押します。たとえば、「command + C」(コピー) を使う場合は、「command」キーを押しながら「C」キーを押した後、両方のキーを同時に離します。Mac のメニューやキーボードでは、特定のキーが記号で表記されることがあります。以下の修飾キーは、その一例です。 Windows パソコン用のキーボードでは、「option」キーは「Alt」キー、「command」キーは「Ctrl」キーまたは Windows ロゴキーで代用してください。 Apple 製の一部のキーボードでは、たとえば、ディスプレイの明るさ調整、キーボードの明るさ調整 など、特殊な記号や機能を割り当てられたキーがあります。こうした機能のないキーボードをお使いの場合でも、自分でキーボードシ
イベント・セミナー集客プラットフォーム 「こくちーずプロ」を使えば、驚くほど簡単で安全なイベント告知・集客ができます。誰でも使えるシンプルさ、とことんまでイベント集客の手助けができる拡張性、大規模なイベントの大量な申し込みも安心して受付ができる高機能を併せ持っています。 一般的なイベントだけでなく講演会や、定期的に開催する地域セミナー、クローズドな社内勉強会、大規模な学会など様々なイベント形態にあわせた募集が可能です。 サービスのトップへ セミナー会場検索サービス 「こくちーずスペース」は、イベント・セミナーの開催に適したセミナー会場(貸し会議室・ホール)を所有する全国2,700箇所以上の公共施設を掲載!リーズナブル・格安で安心して利用できる貸し会議室やレンタルスペースを中心にイベントの規模や設備など目的にあった施設を簡単に検索できます。 今まで見つけにくかった公共施設の詳細な情報をまとめ
文字列 数値をASCII(アスキー)コードに対応する文字に変換するには、chr関数を使用します。 #!/usr/bin/perl use strict; use warnings; # ASCII文字コードでは65,66,67はそれぞれ 'A','B','C'に対応する。 my $a_num = 65; my $b_num = 66; my $c_num = 67; print chr( $a_num ), "\n"; print chr( $b_num ), "\n"; print chr( $c_num ), "\n"; __END__ 続きを読む
最近、Linuxではaptやyumなど、パッケージ管理ツールで多くのアプリケーションやライブラリが管理されるようになり、普通に利用している限りはソースからコンパイルして"make install"することがほとんどありません。 とはいっても、マイナーなソフトウェアをインストールしたりとか、まだパッケージ管理されていない最新バージョンのものを使いたい場合などは、ソースからコンパイルして"make install"をしたくなる場合も有るかと思います。 しかし、"make install"した場合の最大の欠点は、インストールしたソフトウェアの管理ができないことにあります。そのため、何が入っているのか分からなくなっているとか、アンインストールが出来ない、などのケースが起こりうるわけです。 特にアンインストールする可能性があるソフト(ほとんどのソフトがそうですが・・・)をインストールする場合は、わざ
EF15形は高性能な電気機関車であったが、引き出し性能が蒸気機関車に劣ると誤解されていた。 誤った運転方法により本来の性能を引き出せていなかったのである。 (spaceaero2 [CC BY 3.0], ウィキメディア・コモンズより) こんにちは、エムスリー・エンジニアリングG・基盤開発チーム小本です。 WEBサイトは RailsやSpringなどの「本体部分」だけでは完結しません。レポート作成・データ更新などの細かい処理も必要です。 過去にはこうした用途にはBashがよく使われました。しかし、Bashは落とし穴が多かったり、クラスなどの抽象化機能がなかったりして、規模が大きくなると辛くなります。 そこで、Bashの代替候補に挙がるのがPythonです。エムスリーでもかつてはBashを使っていましたが、現在は新規案件にはPythonを推奨しています。 しかし、実際にPythonで書き直そ
このドメインは お名前.com から取得されました。 お名前.com は GMOインターネット(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 ※1 日本のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 ※1 レジストラ「GMO Internet, Inc. d/b/a Onamae.com」のシェア値を集計。 ※1 2020年8月時点の調査。
人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 自分がLinuxエンジニアになりたくて、入社一年目にやってよかった事をまとめておこうと思う。一年目にどれだけやるかが、勝負の別れめといっても過言ではない。それは技術を学ぶだけではない。いっぱいあるんだけど、最低限やって良かったなと思う項目を列挙する。 それがぼくには楽しかったからを読む Amazonとかで買う。出来れば原著がいいけど無理しなくて良い。 Just for Fun. Linuxがどうやってできたか、なぜそれをしようと思ったのかが分かり、今後自分がLinuxのエンジニアとしてどういう動機で仕事をしていきたいかを考えさせてくれる本。この本を読めば、自分が仕事でオープンソースを扱っていることに自信を持てると思う。 「なんでその仕事してる
κeenです。雰囲気でシェルを使ってる人が多いとのことだったので少しばかり込み入った知識を。 あと一応POSIX準拠かどうかも気にしながらやっていきます。 基礎知識編 シェルの種類 まず、POSIXにシェルが定義されています。 これに最低限の機能で準拠しているものをPOSIXシェルと呼ぶことにします。いわゆる/bin/shです。具体的な実装はbsh、ash、dashあたりでしょうか。 最低限の機能以上に色々拡張されているシェルを拡張POSIXシェルと呼ぶことにします。具体的な実装はbash、zsh、kshなどでしょうか。 ここでは触れませんがPOSIX準拠でないシェルも存在してcshやtcshなどのシェルがあります。あと確か最近話題のfishも違ったような。 さて、1つ問題になるのは普段使いのコマンドラインはおおむね拡張POSIXシェルでしょうが、サーバで使うシェルやデプロイスクリプトで呼
エンジニアという職業柄かシェルスクリプトを書くことはちょくちょくあるのですが、自分なりに気を付けていることを備忘録&自分への戒めも含めて、簡単に書いてみたいと思います。 変数は大文字 シェルスクリプト書いていれば変数の出番は至るところであるでしょう。その際、可読性を増すように、変数は大文字を使っています。 RET=`cmd1`みたいに。好みの問題もあるでしょうが、分かりやすいので。 クオテーションは選ぶ クオテーションにはシングルだったり、ダブルだったり色々ありますが、使い分けておいたほうがよいでしょう。 変数の展開がないようであれば、シングルクオーテーションのほうがスマートでしょうし、展開があるのならダブルクオーテーションを使えばと。 ダブルクオーテーションを使うのにも意味があって、変数は「$RET」のようにクオテーションで囲まなくても動作はたいていするのですが、 echo "${RET
「タイムゾーン呪いの書」は、もともと 2018年に Qiita に投稿した記事でしたが、大幅な改訂を 2021年におこない、同時にこちらの Zenn に引っ越すことにしました。 この改訂では Software Design 誌の 2018年 12月号に特集の一章として寄稿した内容も取り込みつつ、夏時間をめぐって各地で起きつつある変化について 2021年 6月現在の状況なども追加しました。そんな追記もしていたら記事全体が長大になってしまったため、この「知識編」と、「実装編」・「Java 編」に記事を分けました。「知識編」は、導入にあたる第一部です。 Qiita のほうは、引っ越した旨とこの引っ越し先へのリンクだけ追記して、しばらくそのまま残すつもりです。 はじめに タイムゾーンという概念のことは、ほとんどの人が聞いたことがあると思います。ソフトウェア・エンジニアでも多くの方が、時刻やタイムゾ
概要 エンジニアになってから出会った便利ツール・アプリを備忘録としてまとめました。 ※WEB用ツール多め GUIツール・アプリ デスクトップ上で動作させるやつ。 Authy https://authy.com/ 2FAアプリ。Multi-Deviceという複数端末で使える機能があり、PCでログインする際の2FAをPCのみで完結できるので便利。 Hyper https://hyper.is/ コンソールアプリ。テーマ機能やプラグイン追加で自分の好みに環境を整えやすくて見た目がよい。 設定を.hyper.jsファイルで管理するので、gitにて設定管理ができて便利。 VSCode https://code.visualstudio.com/ 言わずもがなの高機能コードエディター。特に理由がなければ基本的にはプログラミングするならこれを使えばいいんじゃないかな。 豊富なプラグインや設定で、Hype
あの頃は青かった。教えるどころか無知をさらけ出すというのはこの事だった。死ぬほど恥ずかしいので消したかったけれど、この記事が一番アクセスがあって長い間いくらか読まれていたらしい。ためらった。ただ、かつての自分といくらかの人に参考になればうれしいけれど、そろそろ役目を終えたと信じたい。もし書きなおすのなら、もう少し違う言い方か伝え方にすると思う。 内容としては 当時の自分のスペック Pythonの言語で、当時の自分が知った方法(3項演算子とか) mercurial の基礎(init, commit, push, update, log) WAF(Django)の知識 URL(ディスパッチャ)をトリガーにして Viewで処理をかく ModelにDBの内容がある ORMでリレーションを簡単に記述できる テンプレートでViewで処理した内容を表示させる チラ裏に移動させた。
周りで Mac を使い始める人が増えてきた。 Mac OS といえば 多彩なキーボードショートカットも魅力のひとつですね。 ちょっと検索したら大量の情報が出てきます。 でも、お勧めしたいショートカットが多すぎて 教える方はついついあれもこれもと詰め込んでしまいがち。 結果、コンピュータの操作に慣れてない人はそれらを見て 「そんなに覚えられないよ」と諦めちゃったりもするんじゃないかな。 というわけで 「まずは最初にこれだけ覚えてほしい」と思うものを 10の項目にわけて挙げてみます。 便利なショートカットはたくさんあるから もちろん異論はあると思うんですけど 目の前にいる人を想定して書きますね。 OS の機能 特定のアプリケーションではなく、 Mac OS の基本機能から2つ。 command + tab でアプリケーションを切り替える 複数のアプリケーションを起動している状態で comman
こんにちは、カナダに来て1年弱ですが、いまだに"how are you?"にアイムファインセンキューと返してしまう全然英語が上達してない聖賢です。 インフラエンジニアならみんな大好きtopコマンド、おそらくビヨンドの中ではサーバ運用の中で最初に覚えるコマンドじゃないでしょうか。 実は結構奥が深いコマンドでいろんなことができるので、これまでドヤ顔で「こんなこともできるんやで」と上司の威厳、、、もとい先輩としての経験を後進に伝えていたのですが私も最近になって初めて知った超便利な使い方を紹介したいと思います。 ちょっと長いですがお付き合いください。 普通にtopコマンドを実行すると以下のような画面が表示されます 結構これだけでもサーバ運用には重要な情報が詰まっているのですが、topコマンドの見方などは他でも色々と紹介されていると思うので今回は割愛します 今回はこのtopコマンドの表示を最終的にこ
言及するのが既に周回遅れ気味だが、いますぐコマンドプロンプトを捨てて、Cygwinを使うべき10+の理由という記事がとても人気だったようだ。 Cygwinはご存知の方も多いだろうが、元々はCygnus Support(後にCygnus Solutionsに改名)という会社が開発した、Windows向けのGNU関連のツール群だ。Cygnusという名前にはGNUの3文字が含まれているが、これは「GNUのシノニム」というのが名前の由来だからだ。Cygnusが開発したWindows向けのGNUツール群=Cygwinというわけだ。CygwinはまさにGNUオペレーティングシステムの一部のWindows移植版なのである。このへんのことはCygwinのFAQにも書いてある。余談だが、Cygwinの対抗馬としてはMinGWが出てくるが、こちらは「Minimalist GNU for Windows」の略だ
Windows XPの起動がおかしくなった、あるいは全く起動しなくなった場合に使えるかも知れない最終手段です。必ずしもコレで救われるわけではありませんが、知っておいて損はありません。 Repairing Windows XP in Eight Commands - Guide - Short-Media http://www.short-media.com/review.php?r=313&p=2 使うのは「Windows 回復コンソール」です。 Windows XP 回復コンソールについて 回復コンソールのインストールは以下を参照。 ITmedia エンタープライズ:Windows Tips「回復コンソールって何?」 http://www.itmedia.co.jp/help/tips/windows/w0391.html また、フロッピーディスクなどからでも回復コンソールは起動できます
@おったんです。システム環境設定は、Macを快適に利用するために欠かせないもの。とくに、Macを最近購入したという方々のご参考になればと思い、現在の私のMacBook Proの設定をまとめてみました。 システム環境設定 システム環境設定の中で、カスタマイズしている項目のみを抜粋してご紹介します。変更していないものは割愛しています。 一般 macOS標準のテキストエディットを使用する場合に、ファイルを更新した覚えがないのに、ファイルを開いたら前回の編集内容が反映されてしまっていた、なんて覚えはありませんか?これは、macOSのオートセーブ機能が働いているためです。 便利そうな機能なのですが、編集前の状態に戻したい場合には不便です。オートセーブ機能を無効にするためには、「書類を閉じるときに変更内容を保持するかどうかを確認」をチェックします。 一見すると、矛盾しているようですが、これは、オフにし
爆速でセットアップを完了するため、極力コピペで設定できるようにしてみたよ(・∀・) 動作検証は、さくらのVPSで標準OSをインストールして行った。記事執筆時点ではCentOS6.6がインストールされたぞ。 # cat /etc/issue CentOS release 6.6 (Final) # uname -rs Linux 2.6.32-504.3.3.el6.x86_64 お知らせ 本記事の内容をFabric化したスクリプトを公開!ぜひ試してみてね。 → 超速でCentOS6.6(さくらのVPS)をセットアップする俺史上最強のFabricスクリプトをさらす rootのパスワード変更と作業用ユーザの作成 まずは、コンソールからSSHで接続しよう。 [localhost ~]$ ssh root@XX.XX.XX.XX なお、サーバを起動してない場合は、事前に管理画面からサーバを起動しよ
はじめに linuxのメモリ利用容量(空き容量)の考え方 linuxのメモリ利用容量/空き容量の計算方法 ■RHEL7 【freeコマンドとmeminfoの図解】 【計算方法】 freeコマンド表示例 /proc/meminfo表示例 ■RHEL6 【freeコマンドとmeminfoの図解】 【計算方法】 freeコマンド表示例 /proc/meminfo表示例 ■RHEL5以前 【freeコマンドとmeminfoの図解】 【計算方法】 freeコマンド表示例 /proc/meminfo表示例 蛇足 その1:無名ページとファイルページ その2:図解の内容のツッコミ その3:RHEL6の計算 その4:Inactiveを空き領域とすることは間違い。 はじめに linuxサーバを利用する上で何時も頭を悩ますものの一つが、メモリ利用状況の評価(メモリ利用率)ではないでしょうか。私も悩みます。そこで
バージョン管理ツールGitの基礎練習です。 Windows XPのコマンドプロンプトでGitの基本的なコマンドを動かしていきます。 Gitを学び始めるきっかけにどうぞ。 (筆者もまだGitを使いこなしているわけではありません。 誤りのご報告、改善提案などは大歓迎です。フィードバックからよろしくお願いします) 目次 はじめに ダウンロードとインストール ファイルをGitの管理下に置きましょう 新しいファイルを追加します 新しいディレクトリを追加します 編集からコミットまでの流れはこんな風に進みます ブランチを使ってみましょう ここまでの作業ログを見ましょう この文書に書かなかったこと 関連リンク 更新履歴 ぜひ、感想をお送りください はじめに Windows XPのコマンドプロンプトで、 バージョン管理ツールGitの基本的なコマンドを動かしてみましょう。 この文書の通りに実行すると、 基本的
バッチ処理というのはそれ単体で勉強しようとするとなかなか何を勉強したらいいのかわからないことが多い。 特に経験がWeb系ばっかりだと、いざバッチ処理を実装しようとした時に基本的なノウハウを知らないままに書いてしまうことが多い。 バッチ処理というのは実態を整理すると「何らかのトリガーを期に起動し、データをロード・加工・変換・集計してから、出力する」という事になる。 まぁ、INがあって処理してOUTがあるという点では関数だと考えてもいいだろう。 システムの利用者(人に限らない)のアクションとは直接関係ない処理であったり、利用者のアクションをトリガーとしていても、即時にレスポンスがいらないor返せない場合に バッチ処理を選択する事が多い。 実現方式はシェルスクリプト、LL言語、実行可能バイナリだったりするし、デーモンとして立ち上げる場合もある。 利用者の操作に対して対話的・同期的な処理はオンライ
GNU screenはもう古いので皆さんtmuxへ移行しましょう、という話。Gentooならemerge tmux。 スクリーンショット 手元のtmuxを撮ってみた。縦分割モード。ウィンドウマネージャはawesome。左のircクライアントはweechat。 本家にもいくつかスクリーンショットがある。 tmuxへ移行する理由(メリット) 標準設定のままでもそれなりに使えるステータスバー 各ショートカットがコマンドベース(コマンドで操作ができる) 標準で縦分割機能搭載 GNU screenがたまに固まる問題(が発生するのは私だけ?)が発生しないかも ビュー専用のスクロールモード 柔軟なペイン制御 コピー&ペースト用のバッファを複数保持できる terminfo的にscreen互換 メモリ消費量が少ない(GNU screenの約1/5) 一部機能でマウスが使用できる(mode-mouse, mo
コンピューターにパスワードを設定することは、セキュリティの観点から非常に大切なことですが、そのパスワードを失念してしまったり、前の持ち主からパスワードを聞きそびれてしまったりした場合、コンピューター内のデータにアクセスできなくなってしまう事態に陥ってしまいます。「chntpw」はWindowsのパスワードを強制リセットし、そうした事態を回避することができるコマンドです。 chntpw | Remove, bypass, unlock and reset forgotten Windows password http://www.chntpw.com/ Windowsのパスワードを忘れてしまい、誤ったパスワードを入力すると、画像のように「パスワードが正しくありません。入力し直してください。」と表示され、ログインができなくなってしまいます。 chntpwはLinux上で動作するコマンド。今回は
本来、DM200には印刷できないワープロのような機能しかないのですが、これによってかなりの自由度を獲得できたことになります。 ※Caps Lockはポメラ側でもLinux側でもCtrlに変更できます 上記のページの通りにインストールを済ませると、SDカード上のDebian Linuxが起動できるようになります。Linuxの動作の安定感は実験レベルを超えて実用的です。 ※Caps Lockはポメラ側でもLinux側でもCtrlに変更できます SDカード上のDebian Linuxが起動できても依然標準のポメラの機能の素晴らしさは際立っているため、両者を連携して使う感じになる(同時に使えるのでなく、両者を起動し分ける)のですが、それが何とも楽しい。 工夫の余地のある文具が欲しいという人の目には、このDebian Linux on DM200は魅力的に映るかもしれません。 今回は、そんなDebi
はじめに: Vimならではの便利機能をマスターしよう! かれこれ数年前、僕がVim(というか、たぶんVi)と初対面したときは、「なんて使いにくいエディタなんだ!!」と最悪の印象でした。 しかし、周りのプログラマやネット上のエンジニアたちはみんな「Vim便利!」「Vim最高!」と言います。 なのでその言葉を信じ、僕も最悪の印象だったVimともう一度正面から向き合うことにしました。 そして、月日が過ぎ・・・僕もいつしか「Vim便利!」「Vim最高!」と叫ぶようになってしまいました!! これって洗脳? いやいや、洗脳じゃありませんw Vimにはメモ帳の延長線上にあるエディタでは実現できないような数々の便利な機能があります。 覚えるまでにはちょっと苦労しますが、覚えてしまえばメモ帳系のエディタでは追いつけないようなスピードでテキストを編集することができます。 とはいえ、そもそも覚える以前に「そんな
We are constantly updating our collection of different sources. All content absolutely free!
コードを書いていると、 食べることも忘れて ついつい熱中してしまう。 会社でも、家でも プログラマーも、そうでない人も 夢中になって考え続ける、 そんな時こそカロリーメイト リキッドで 素早く手軽に5大栄養素を。 BALANCED FOOD CalorieMate LIQUIDto Programmer #うちこむ人にバランス栄養 >MESSAGESメッセージ >Translate Matz コード監修 まつもとゆきひろ Yukihiro Matsumoto プログラマー、ソフトウェア技術者。1965年生まれ、鳥取県出身。愛称は「Matz(マッツ)」。1995年にプログラム言語「Ruby」を公開、その使い勝手の良さから世界中のプログラマーに親しまれ続けている。2012年には内閣府「世界で活躍し『日本』を発信する日本人」の1人に選ばれた。 From Tech Crunch Japan世界的プ
開発効率を上げるためのプラグインや機能のご紹介。 ■neocomplcache http://github.com/Shougo/neocomplcache 自動で補完候補をポップアップしてくれるプラグインで、Vimで効率的な開発をしようと思うのであれば必須のプラグインです。vimrcに以下の1行を加えればプラグインが有効になります。 let g:neocomplcache_enable_at_startup = 1有効にした上で適当にファイルを編集すれば自動で補完候補が出てきます。候補を選ぶ時はCtrl+Nで次の候補、Ctrl+Pで前の候補が選択できます。 設定項目もたくさんあります。:help neocomplcache@ja とすれば日本語ヘルプが見れるので、参照しながら設定してください。 もしこのプラグインを使ったことがないのであれば、人生の半分は損をしています。 ■テキストオブジ
bash のシェルスクリプトを書くときに、いつも脳死で以下をやっている。(同僚が整備してくれたものをコピペしている) エディタなり CI で shellcheck をまわす set -euxo pipefail と冒頭に書く こんな感じ #!/bin/bash set -euxo pipefail いつまでもコピペではさすがにアレなので、意味を調べたメモ。 shellcheck koalaman/shellcheck: ShellCheck, a static analysis tool for shell scripts イケてない書き方に警告を出してくれる それぞれの警告にはエラーコード割り振られていてとても便利 エラーコードごとに正誤例、解説が書かれているのでわかりやすい SC1000 の例 CI もそうだし、エディタのプラグインも充実 しているのでとりあえず入れておくと良い set
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く