コンテンツブロックが有効であることを検知しました。 このサイトを利用するには、コンテンツブロック機能(広告ブロック機能を持つ拡張機能等)を無効にしてページを再読み込みしてください。 ✕
![年収500万の31歳彼が「タイの田舎」で超幸せな訳](https://cdn-ak-scissors.b.st-hatena.com/image/square/df4cb02f072d7fd0db669162296ec037e7a2e5d3/height=288;version=1;width=512/https%3A%2F%2Ftk.ismcdn.jp%2Fmwimgs%2F5%2F3%2F1200w%2Fimg_53dca13d457e8d4e12b9256749a557f3424626.jpg)
コンテンツブロックが有効であることを検知しました。 このサイトを利用するには、コンテンツブロック機能(広告ブロック機能を持つ拡張機能等)を無効にしてページを再読み込みしてください。 ✕
本記事は書きかけなので内容(タイトルすらも)は随時書き換わっていきます。ドラフトのうちは内容の正確性や文書全体としての整合性についても荒っぽい部分が多々あります。ご容赦ください。 はじめに 本記事はソフトウェア開発者がハードウェアに近い低レイヤといわれる領域に入門するとき、とくにアセンブリ言語に出会ったときにつまずきがちなことを紹介します。主な対象読者はJavaScriptやPythonなどのスクリプト言語などによるアプリ開発からソフトウェア開発に入った、それより下のレイヤになじみのない人です。 筆者は常々アセンブリ言語は技術的にものすごく難しいわけではないものの、学習につまずく人が非常に多いという印象を持っています。その主な原因の一つは、みなさんが普段慣れ親しんでいる人間に使いやすいように作られた高級プログラミング言語(以下高級言語)と、機械に解釈させやすいように作られているアセンブリ言
はじめに 飲み物じゃないIPAをご存じでしょうか? 漢字でいうと、独立行政法人 情報処理推進機構ですね。情報処理技術者試験を実施いる謎の組織という認識の方も多いと思います。 実はIPAはいろんなドキュメントを公開していてQiitaやZenn以上にお役立ちなサイトなのです。 まあ、AWSをどうこうとか、FireabaseやNext.jsのようなキラキラした奴は基本載ってないので特に代替えするものではないですが、ブログとかはまた種類の違った情報があるので個人的には結構使うことあります。しかも 「日本語」! こういう感じの事をTwitterでつぶやいたところ意外にイイねをされたので、せっかくだしどんなドキュメントがあるかちょっと紹介したいと思います。 セキュリティ関連NIST文書 まずはNISTドキュメントの翻訳版! これは良いですよね。NISTはアメリカの米国国立標準技術研究所で、セキュリティ
恥ずかしながら Docker をほぼ触ったことがなかったので、基礎的なことを学びました。 学びながら「こんな絵があったら理解しやすかったなー」と感じていた絵を自分で描きました。 せっかくだから整理して公開したいと思います。 同じ様な方の役に立ったら、とても嬉しいです。
TL;DR ゼロからのOS自作入門 (MikanOS) の開発環境を一瞬で展開できる Docker イメージ (と, VSCode devcontainer の設定ファイル) を作った sarisia/mikanos-docker sarisia/mikanos-devcontainer 複雑な環境構築不要!Windows / macOS / Linux 問わず動くよ! 更新情報 2021/03/31: 使い方 に参考記事のリンクを追加 概要 "ゼロからのOS自作入門", ついに発売されましたね! "30日でできる!OS自作入門" にあまり馴染めなかった[1]私にとって, 待望の一冊でした. 張り切ってやっていきましょう! 環境構築つらい 張り切ってやっていく前に, まずは開発環境の構築が必要です. 本書の開発環境の設定には, EDK2 や qemu のインストール, clang や ll
はじめに 最近までコンテナは使うだけだった僕が2021年に真面目にコンテナ入門をしたので、どうやって入門し始めたか、結果今どうなったかを書いておこうと思います。 今となってはコンテナと1口に言ってもKubernetes Docker podman runcなどなど様々な難しい単語が飛びかっています。CloudNativeという単語もよく聞きますね。コンテナだけあってコンテナ界隈は海のように広いですね。 壮大なコンテナ界隈の海を僕がどうやって最初にチャレンジしてみたか参考に慣れば🙏 結論として入門した結果はこちらです。 コンテナ入門するきっかけ 2020年くらいまでの僕はDockerを使う程度の知識、namespaces(7)とcgroups(7)というLinuxカーネルの機能が使われているらしいということしか知りませんでした。Kubernetesも略し方や発音で時々話題になることを知って
この記事について Go言語公式から提供されているThe Go Programming Language Specificationという文章があります。 実際のThe Go Programming Language Specificationのページ画面 この文章、個人的にはじっくり読んでみると結構得るものが大きいな、と感じるものです。本記事では The Go Programming Language Specificationって何が書いてあるの? 読んだら何がわかるの? 読むときにはどういうところに注目したらいいの? 英語難しいから単語教えて! という疑問に答えながら、The Go Programming Language Specification精読の布教を行います。 The Go Programming Language Specification とは? The Go Prog
最近、未経験からWebエンジニアを目指そうと思っているんだけどどうだろう? という相談を受けることがあったので文章としてまとめておきます。 この文章はプログラミングを学んでWebエンジニアになろうとしている人に向けています 既にこの業界で働いている人にとっては常識的な内容しか書かれていません Webエンジニアになるには そもそもの読者の方達がどのような状況にいるのかによって方針が変わります。 新卒採用 新卒採用の場合は企業が未経験者を積極的に採用をして教育をしてくれるルートがあります。 この点は普通の就職活動をしてエンジニア職として採用されるようにがんばりましょう。 ただし、最近は新卒であっても小学生や中学生の頃からプログラミングの経験を積んできたスーパープログラマーがいます。また、そういった早熟な方達以外にも、大学や高専、専門学校などでプログラミングを専門的に学んできた人たちと就職活動で
はじめに この記事は、僕の近況と初めて手にしたスマートバンドについて書いています。腕時計を付けるのが苦手なので、慣れるのに苦労していますが、健康の為にと我慢して付けています。そのうち慣れると思います。プログラマと健康の何が関係あるんだと思われるかもしれませんが、プログラマだからこそ普段の健康に気を付けるべきかもしれません。 コロナと健康 新型コロナウィルスが報道され始めたのが2019年12月31日、もう1年半の月日が経とうとしています。未だ治まっておらずそれどころか変種も登場し、より一層の警戒が必要な状況です。仕事もリモート作業が多くなり、日中は1日中在宅になってしまいました。 以前は毎日、通勤という軽い運動を知らず知らずのうちにしていたのですが、今となってはあれは良い運動だったのだなと感じています。 在宅で運動する機会と言えば、近くのスーパーに買い物に行くくらいしかありません。これで太ら
はじめに Gitのインデックスの中身、Gitのブランチの実装に続く、Gitの中身を見てみようシリーズです。Gitが管理するオブジェクトの種類や中身について見てみます。基本的にはPro Gitの10. Gitの内側をまとめなおしたものです。 オブジェクトの種類 Gitは、内部でファイルやコミットを「オブジェクト」として.git/objects以下に保存しています。オブジェクトには以下の4種類があります。 blobオブジェクト: ファイルを圧縮したもの。ファイルシステムの「ファイル」に対応 treeオブジェクト: Blobオブジェクトや別のTreeオブジェクトを管理する。ファイルシステムの「ディレクトリ」に対応 コミットオブジェクト: Treeオブジェクトを包んだもの。コミットのスナップショットに対応するTreeオブジェクトに、親コミット、コミットメッセージなどを付加する タグオブジェクト:
はじめに 私はGoが好きなので、disられている場面に遭遇すると心が痛みます。残念ながらプログラミング言語について深く語れるほどの知識や経験は持ち合わせていないため、世界が平和になることを祈るくらいしかできません。 (元ネタ)Go言語を嫌う6個の理由 - さめたコーヒー それはそれとして、Goが好きな理由を語る人はあまり見かけない気がします。この記事ではGoが好きな理由を視覚に障害のあるユーザーの視点から語ります。読み終えたところで得るものは何もありませんし、長いので覚悟して読んでください。 あなたは誰? 4年ほど業務でサーバーサイドのGoを書いています。また、業務で使いはじめる前から趣味でGoに触れていました。そのため無意識の内にひいきしているかもしれません。ただし、流行っているからといって理由もなくGoを勧めたりはしません。 視覚障害ならではのコーディング事情 Goが好きな理由と深く関
Go言語の作者であるRob Pike氏が「Go言語が成功した理由は何なのか?」というタイトルで2015年に発表をしてる動画を見つけたので、雑に和訳してみたいと思う ちなみに最近Go言語の好き嫌いに関する記事がいくつかバズっており、それに乗っかってるというのは言うまでもない Go言語を嫌う6個の理由 Go言語が好きな理由 良く挙げられる成功要因 Pike氏は以下がよく理由として挙げられると述べている コンパイルの速さ 実行の速さ デプロイの容易性 ツール ライブラリ しかしこれらは全て表面的であって、本質的な理由ではないとも述べている ではGo言語が成功に至った本質的な理由とは一体何なのか?彼は続いて説明している Go言語が成功に至った真の理由 彼は「Simplicity」、シンプルさがGo言語が成功に至った本質的な理由であると述べている そしてこのコンテキストにおける「シンプルさ」とは以下
Goの利点を使って実装するコツやノウハウを書くことがコミュニティにとってプラスになると思っているのでそれに専念したいという考えはありますが、Goの苦手な領域にGoを採用してしまってヘイトを溜め込んでしまう事例を見かけたりします。 こういう悲劇の起こる可能性を少しでも減らせたらという思いで、Goの現状の苦手な領域について解説しようと思います。Goを学び始めにこれらの領域に手を出すのは避けましょう。 Cgo is not Go GoはCGO連携でC/C++資産を利用することができますが、メモリアロケータの異なる処理系を繋ぐ関係上、お互いに呼び合う際のパラメータや戻り値はほとんどのケースでコピーが必要になります(Cの型でメモリ確保しCの型のまま受け渡しする場合はOK)。なので高頻度に呼び合うような用途には不向きであるというのはSWIGなどのような複数の処理系を連携させる仕組みと同様です。 また、
はじめに 新方針でDocker Desktopが大企業での利用の場合は商用ライセンスの使用が必要になるようです。新料金体系は8/31から実施ですが、2022年1月31日まで猶予期間があります。 個人やスモールビジネス、あるいは教育やOSSプロダクトなどは継続して無料版のPersonalを利用できるようですが、従業員数250人以上/年間売り上げ10億円以上の会社が対象になるようです。今見てる限りだと部署とかチームみたいな契約の単位では無く会社規模なので、大きな組織に所属してるともれなく対象になりそうですね。 $5/userからなので基本的には運用性も含めて払う方が楽だと思いますが、金額の大小にかかわらず予算を取るのが大変な組織や会社自体はデカくても部署がインキュベーションなので予算が基本無い、とか色んなパターンもあるかと思います。 ちょうど、手元のPCでここ最近 Docker Desktop
今さらながらの Ansible の入門書です。全部で約 30 章とまあまあボリューミーですが多くはコードや実行ログなので、臆することなく目をとおしていただければと思います。 学習は「手を動かしてナンボ」だと思っているので、ほとんどのインベントリーやプレイは copy & paste で試していただけるよう省略なしで記載しました。章末に「演習問題」へのリンクがあります。各章の学習後に理解した内容を演習問題で試していただければと思います。 本書が Ansible を学習する方の一助になれば幸いです。 -- カバー画像は参考にさせていただいている Ansible 本の表紙が「とがった葉っぱ」なので表紙も参考にしました。
Windowsデフォルトの イケてない ターミナル環境をいい感じにしたい。 Windows PowerShellにおいては、なぜ青背景にしたのかと聞きたいくらい青文字が見づらくなってしまっている。 Windowsデフォルトのターミナル環境 今回は、個人的にイケてると思うターミナル環境の構築方法を書いていく。 完成図 この記事で出来上がるターミナル環境 ターミナル環境構築 フォントのインストール 今回の完成図では HackGen というフォントを使用している。 どんなフォントかは Qiita > Ricty を神フォントだと崇める僕が、フリーライセンスのプログラミングフォント「白源」を作った話 > 「白源 (はくげん/HackGen)」の特徴 に書かれている。 特に、全角スペースの可視化や判読性の向上などの細かな工夫はプログラミングだけでなくターミナルにも活きてくる為、おすすめのフォントであ
Golangの標準パッケージであるnet/httpを使ってHTTPルーターを自作する話です。 表紙は新書メーカーさんで作成しました。 https://yubais.net/tools/paperback-maker/ 追記: 要約版をqiitaに書いてあります。手短に知りたい場合はこちらが良いかもしれません。 https://qiita.com/bmf_san/items/312fac5b3132d8bee4ca 自作ルーターがawesome-goにリストアップされました :D https://github.com/avelino/awesome-go#routers 追記: コードのハイライトを修正しました。 追記: Go Conference 2021 Autumnで"net/httpでつくるHTTPルーター自作入門"というタイトルで発表しました。 https://speakerdec
先日、こんな記事を見かけました。 テックブログは続かない - note.com 採用目的でテックブログを始めたものの、時間の経過とともに古い記事ばかりになる or すでに退職している社員の記事ばかりになる…というのはよく見かける光景です。 目の前のタスクが積み上がっている状況で、業務時間内にブログを書く時間を取るのはなかなか難しいと思います。 そうは言っても業務時間外に無償で会社のブログに書くのもなかなか気乗りしません。「数年以内に転職するかもしれない」という気持ちがあればなおさらです。記事が転職しても自分のものとして残るのであれば、書くモチベーションは上がるのかもしれません。 その後、こんなツイートを見かけました。 企業のテックブログと言えば「会社がひとつブログを作って、みんなでそこに投稿する」という形が当たり前になっていますが、たしかに個々人の投稿を集約する場所を用意するだけでも良いの
はじめに なんとなく書きたくなったので書きます。詳しいレビューなどは書きません。書いても一言程度。実は昔似たようなエントリを書いたことがあるんですが、そちらは初心者+αくらいの人に勧める本についてのもので、こちらはあくまで私に刺さった本です。 達人プログラマー ソフトウェア技術者としての考え方のいくつかはこの本の影響によって身に着けました。この手の本は抽象的でスカスカなことが多いのですが、この本は著者の文書作成技術が高いこと、例が具体的なこともあって、ずいぶん納得できることが多かったです。わたしが読んだのは第一版ですが、あえて第二版へのリンクを張っています。 プログラミング作法 よいプログラムをどう組めばいいかということを学べました。いろいろな言語を題材にしていますが、どういうものを使っていても役に立つ実践的なことが書いています。 珠玉のプログラミング アルゴリズムについて、具体的にどう役
初めまして、最近、転職活動をしているバックエンドエンジニアです。 面接の場面で、技術的質問を受ける経験がよくあるのですが 声に出すと中々説明出来なかったので、自身の振り返りも込めて質問内容を大雑把にまとめようと思います。 内容は、ネットワーク、セキュリティ、データベースに関してです。 ネットワーク🌼 ブラウザであるURLを叩いて、ページが表示されるまでの流れを教えてください DNSサーバーにアクセスし、ドメインに紐付けされたIPアドレスの取得。 取得したIPアドレスを元に、ブラウザからリクエストが送信される。 リクエストを受信したサーバーが、データパケットという形でレスポンスが返却し、Webサイトの情報がブラウザに表示される Cookieとは何か?また、どのような場面で使用されるかを教えてください Cookieとは ウェブブラウザに保存された情報。 どのような場面で使用される? ユーザ識
Log4j で強めな脆弱性が発見されました。 詳細は省きますが、ある条件可で任意のコードが実行できるような脆弱性です。 mavenのリポジトリによってはまだ2.15.0のバージョンが上がっていないようで、少し手こずったので記事にします。 (2021/12/10 13時時点) ※自分が所属するログラスでも依存しているライブラリでしたが、今はすでに修正とリリースが完了しています。 影響ライブラリと影響バージョンは log4j-api と log4j-core の 2.0 <= Apache log4j2 <= 2.14.1 です。 対応としては 2.15.0 に上げればいいそうです。 しかし、2021/12/10 13時現在Mavenのサイトでは2.15.0が上がっていないように見えます。 しかし、こちらの repo1.maven.orgのリポジトリにはあるそうで、素直に2.15.0を指定すれ
はじめに この記事は Ethereum Advent Calendar 2021 の 16日目の記事です! 「no plan inc. からの挑戦状」 という記事というか企画を出して、そこそこにバズりそこそこの方に参加いただいたので、どうやって解けるのかという解説記事です。 執筆: @_serinuntius 参加状況 q1~q4で記事を執筆してる現在(12/13 15:20)だと、256txが投げられています! q1正解者は88アドレス q2正解者は46アドレス q3正解者は8アドレス(バグがあったのであえて正解できないようにしてq4に移行していただきました) q4正解者は10アドレス 正答率(txを投げた方がfailしてない)で言うと約59% q1解説 q1はどんな参加者でも直コンしたことがある人であれば解けるぐらいのレベル感にしたいなと思いこのレベルにしています。 解説するまでもない
最強の WSL 環境を作る まあ、何が最強なのかよくわからないのですが。 WSLg は GUI が動いて音もなるので大変便利なのですが、systemd が動作していない弱点があります。LXD を多用している身としては結構しんどいのですね。 snapd が使えないので、JetBrains の開発ツールをインストールするのもちょっと面倒。まあ、Ubuntu Make を使えばいいのでそれほど気にはしていないのですが... というわけで、定期的にいろいろ試している今日この頃、ようやく自分が常用しているものが全部動く環境が作れました。 セットアップ (2022/01/11 追記) 手順は、入力するコマンドを PowerShell だったり、WSL だったりといりみだれます。次のルールで書いていますので、間違えないようにしてください。 プロンプトが > のときは PowerShell に入力してくだ
はじめに 世間に広く浸透した Web アプリケーションは 24 時間稼働が当たり前で、たくさんのユーザが利用します 安定稼働するためのサーバ運用や、開発サイクルについて、さまざまな問題が生まれました それらの問題はコンテナ型仮想化技術を Docker が広めたこともあり、コンテナオーケストレーションツールの Kubernetes が注目されるようになっています コンテナでは Go や Rust のような比較的軽量のシングルバイナリを生成するプログラミング言語が、起動時間の観点から好まれるようになりました すでに Docker は普及しているが、今後も発展していくでしょう。Web アプリケーションを作っている会社の多くは日常的に Docker を使っています。 相性の良い Go なども発展していくことが予想できるため、早いうちにキャッチしておきましょう。 この記事では Docker と Go
この記事の狙い この記事は、端的に言えば この図が言わんとしていることを理解できるようになるための解説を目指しています。 昨今のプログラミング環境において、メモリの管理方法やその実態は、詳細を知らずとも目的を達成できるようになっています。といっても、実際にはメモリは無尽蔵に使えません。制約が厳しい環境下で動かさねばならないプログラムもありますし、多少潤沢に使える環境であっても、無駄に浪費するよりは、必要最低限のメモリで効率よく動作するプログラムの方が、多くの場面においては良いプログラムと言えるでしょう。 メモリのことなど知らなくてもプログラムを書けるのは一つの理想ではありますが、現実的にはその裏に隠されている(抽象化されている)仕組みを知っておいたほうが有利です。また、昨今のレトロゲームにおけるタイムアタックで駆使されるメモリ書き換えのテクニックなども、何故そういったことが可能なのかを知る
はじめに この記事は、バックエンドエンジニアとして仕事をしている著者が、個人でサービスを作った記録です。 使用している技術は以下になります。 Go (gqlgen) - バックエンド TypeScript (React) - フロントエンド Dart (Flutter) - モバイル(ios, Android) GraphQL - API Firebase - 認証 MySQL - DB ConoHa - サーバー GCS - ストレージ CLIP STUDIO - 画像編集 土日を中心に、気が向いたら平日の夜も書く、という時間の使い方をして、ブラウザで動くようになるまでに1ヶ月、アプリを作るのに2週間 (Appleとのやり取りで更に2週間)程度かけて作りました。 iosの審査が終わって公開されたので、今は「これから何をしようかな」と考えているところです。 作ったもの Rabbytという、
はじめに 「メタバース上の土地は買うべきか」から始まり、NFTの価値は信仰によるものであるとの一連の流れを読み大変感銘を受けた。 kumagiさんのNFTの価値は信仰によるものであるとの指摘も、sasakiさんの自分の興味からNFTを買った話も、どちらも私個人としては理解できる話であった。 一連の議論のリンクは貼っておくので、詳しく知りたい方は見てほしい。 NFTとメタバースについて思うこと 空想のNFTと現実のNFT Re: 空想のNFTと現実のNFT Re: Re: 空想のNFTと現実のNFT Re: Re: Re: 空想のNFTと現実のNFT さて、これらの議論に対するtwitterをはじめとするSNSのコメントを見ると、技術的に誤った情報の配布や誤解を生みかねない表現を使ってNFTの価値について語っている人が想像以上に多く感じた。 ブロックチェーンやNFTは新しい技術分野であるため
はじめに 私事ながら.... 今年・2022年3月でフロントエンドエンジニア2年目を迎えました 技術力がまだまだ足りなく、現在進行形で奮闘中ですが この1年間で、技術がない中でも自分のバリューを発揮するために工夫して、これは結果が出たな、という取組をまとめてみたいと思います!! すぐに実践できるよう具体的に書いていますので、よければチラ見していってください。 ひよっこエンジニア仲間で何か出来ることがないか悩んでいる方(わたしだけ?🐥)や これからエンジニアになるので策を練っている方 などなどの方に1つでも習得のある記事になれば幸いです。 1. 技術力を少しでも上げるために (1) あたり前田のインプット まずは、いやそリャそうだろと言われてしまいそうですがインプットをすることです。 先輩エンジニアとの会話が理解できるようになるところから始まり、良いコードの書き方が学べたり、自分の作ってい
概要 スケーラビリティが高く1000万ユーザに耐えるAPIサーバを作成しました。TwitterのようなSNSです。実装はGitHubで公開しています。 開発環境は次の通りです。 Node 16.14 Express 4.17.3 DynamoDB 2012-08-10 機能要件は次の通りです。 ツイート機能 ツイートに対してコメント機能 フォロー機能 タイムライン機能 導入 Facebook、Amazon、Youtubeのような数億人のユーザを抱えるサービスでは大量のトラフィックを捌く必要があります。大量のトラフィックを捌くためのアプローチとして一般的に使われるのはスケールアップではなくスケールアウトです。スケールアップは性能の高い機器を使うためにコストが高いです。また、1つのサーバで運用するためにパフォーマンスの限界が存在します。 スケールアウトについて考えます。アプリケーションは大きく
------------------------------------------------------ 2024 年 1 月更新 本書がきっかけで「なんとか Docker を使えるようになりたい」というプログラマの方向けの入門書を秀和システム様から出版させていただけることになりました 開発系エンジニアのためのDocker絵とき入門 https://www.amazon.co.jp/dp/4798071501 紙書籍と電子書籍、どちらもございます この書籍と執筆経験は、みなさまからの驚くほどの高評価があればこそ得られた機会でした いつも本当にありがとうございます 書籍化に際しまして、この場で次のとおり説明させていただきます 1️⃣ 本書 ( Zenn ) は有料化しません 2️⃣ 本書 ( Zenn ) は今後更新しません 3️⃣ 本書 ( Zenn ) と出版される絵とき入門の違い
この記事は,ネットワークの学習の序盤につまずくポイントである 「MACアドレスとIPアドレスってどっちか片方だけじゃだめなの?」「レイヤ2と3って結局何が違うの?」 という疑問について,私なりの回答をまとめた記事です。世に不正確な記事が出回っているように見受けられるので,正確な回答をまとめたく、長文になってしまいました。とはいえ,初学者向けにかなり初歩的なところから書いたつもりですので是非読んでみてください。 この記事について この記事を読むと何が分かるか MACアドレスとIPアドレスの役割の差が分かる レイヤ2(=同一サブネットの通信)とレイヤ3(=サブネット間の通信)の仕組みが分かる ネットワーク設計時にレイヤ2・レイヤ3のいずれで設計すべきか判断できる なお,教科書的な説明ではなく,概念や捉え方の説明となっていますので,試験勉強には役立ちません。実務としてネットワーク設計を行う方の役
最近、セキュリティの立ち上げで何をやったらいいかわからない、という質問を何度か受けるケースがあったので、最初に何をやるか、というのを情シスやセキュリティ担当者としての考えをまとめてみる。 著者のキャリアについて セキュリティの立ち上げについて書く以上、信頼に足る情報源なのか?という疑問がわくと思うので、簡単に著者のキャリアを書いておきます。 2002年にSIerでIT業界に入り、研究所のNetwork Admin、Web penetration test、ISMSコンサルの補佐などやり、その後外資プリセール分野で7年仕事して、最初のSIに戻ってセキュリティソリューションの立ち上げを担当、その後ユーザーサイドにキャリアを変えて、外資石油系企業のセキュリティアナリスト、中国系スタートアップのInfoSec Director&一人情シスをやってきたキャリアです。CISSPは2019年に取得してお
皆さん、新しいプログラミング言語を学ぶ時、どのように学習しているでしょうか? 私は4月に新卒でエンジニアになり、業務でGoを使うことになりました。その際、とりあえず公式チュートリアルであるTour of Goをやりましたが、その後にどうやって学習を進めれば良いか迷ってしまいました。 考えてみると、新しい言語を学ぶ際、毎回学習方法に困っている気がします。ネットでサンプルを探す、動画を見る、書籍を読む、などさまざまな学習方法があると思いますが、私は手を動かしながらいろいろなパターンを学んでいくのが好きです。 そこで今回Goを学ぶ際も、手を動かしてさまざまなコーディングのパターンを学習するために、ネットや書籍でサンプルを探して実践しました。 この学習方法は私にとっては楽しみながら続けることができて、他の言語を学ぶ際も今回実装したサンプルを使って学習しようと考えています! そこで自分と同じ様な悩み
フロントエンド用語を100秒で解説するチャンネルを作りました! よかったらチェックしてみてください! はじめに この記事は、Go言語を学び始めたばかりの人や、チュートリアルを読んで途中で挫折してしまったという人に向けて、Go言語の基礎的な文法を解説した記事です。といっても全てをカバーするのは大変だと思ったので、私自身が A Tour of Go を読んで難しいと感じた点をいくつかピックアップして書きました。今回の記事では、ポインタ・構造体・メソッド・インターフェースについて解説していこうと思います。 ポインタ A Tour of Go では、ポインタについて次のような説明をしています。 Go has pointers. A pointer holds the memory address of a value. (訳) Goはポインタを扱います。 ポインタは値のメモリアドレスを指します。
概要 エンジニアになってから出会った便利ツール・アプリを備忘録としてまとめました。 ※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
追記:whereisだとlinuxのコマンドの詳細を調べるコマンドと名前が被っているので、近々改名します 2/1追記:whrisに改名しました $ whris zenn.dev Target domain:zenn.dev Target ip :35.190.77.180 Network Admin:Google LLC (GOOGL-2) Network name :GOOGLE-CLOUD ip range :35.184.0.0 - 35.191.255.255 country :US $ whris -v zenn.dev Target domain:zenn.dev Target ip :35.190.77.180 Network Admin:Google LLC (GOOGL-2) Network name :GOOGLE-CLOUD ip range :35.184.0.0
この資料は定期的に更新される 概要 Erlang/OTP を GitHub にあるソースコードからビルドして利用する方法についてまとめている。 前提 株式会社時雨堂 の商用製品向けのビルド設定 パッケージングに利用する Erlang/OTP は OpenSSL を dynamic link しない OpenSSL 最新版を自前ビルドする 利用していないモジュールはビルドしない GitHub から clone してきてビルドする Linux 古いカーネルは利用しないほうがいい Ubuntu 24.04 x86_64 | arm64 apt install build-essential libncurses5-dev autoconf Ubuntu 22.04 x86_64 | arm64 apt install build-essential libncurses5-dev autocon
概要 以前WindowsでおすすめのWeb開発ツールをブログで書きました。 多少重複しますが、Windows Terminalをより便利にカスタマイズしてターミナル運用を楽しめるようにしました。 前提条件として以下のツールはインストール済とします。 PowerShell 7系 Git for Windows WSL2 Scoop Windows Terminal Windows Terminalカスタマイズ Windows Terminalのデフォルトの背景画面は黒色なので、複数のWSLディストリビューションやPowerShellを入れると、どれがどのターミナルなのかわかりづらくなります。 設定の配色でターミナルのカラーや文字のフォントを変更できます。 配色やフォントはデフォルトでも種類は多いですが、自分でカスタマイズして専用のターミナルを作るのも一興です。 参考までに私のPowerShe
はじめに 個人開発で日記のWebサービスをリリースしました。ツール系のサービスとしてOAuth認証からStripe課金までひととおり実装したので、個人的には多くの技術的知見を得られました。ここでは一つの技術を深追いせず、利用したライブラリ等についてざっと紹介したいと思います。PythonでWeb開発を行う方やこれからの方も含めて、他の開発者がどのようなライブラリ等を選定してるのか参考になれば幸いです。 サービスの概要 日記をカテゴリごとに登録し、グラフで可視化することで振り返りを促すサービスとなります。 サービスに含まれる機能とその目的を大まかにリストアップします。 OAuthでSNS認証することでユーザーに煩わしいパスワードの管理をさせないこと PC・スマホを問わずどの端末からでも参照・登録できるよう、ブラウザのサイズを問わないレスポンシブ対応とすること 日記をグラフで可視化することで、
インフラ初心者がいきなり実務でKubernetesを使うことになったので、その学習記録✎ 流れとしては、 概念的なところを抑える 実際に手元で動かしてみる です! また、すでにKubernetesについて書かれたわかりやすい記事がたくさんあるので、本記事はそれらをもとに自分の理解をまとめたものになります。 概念的なこと まずはこれで概要把握 まずは👇を読もう。(ありがたやありがたや...) 僕らは何故Kubernetesを使うのか Kubernetesというものが出てきた背景を、オンプレの時代からどういうふうに変わっていったかわかる KUbernetesの概要がわかる メリデメがわかる Argo CDの例などを用いてどういうふうに使われているのかイメージが付く Kubernetesとは ざっくりいうと、 サービスをコンテナ上で動かすようになったことで起こった、 複数のサーバ上で複数のコン
概要 こんにちは、Offers を運営している株式会社 overflow のバックエンドエンジニアの shun です。今回は、GAS(Google Apps Script)のコードの書き方と、ゴリゴリに GAS を書きまくってきた知見から少しのテクニックを紹介できればと思います。 今の時代、エンジニアリングを利用した業務自動化を実装するのは必ずしもエンジニアだけではないと思っています。ちょっとしたデイリー業務, 対応漏れ確認 など、サクッと自分の業務のサポートをしてくれる相方を、職種問わずに自分自身で実装ができる世界になっています。その大きな協力者になるのが今回ご紹介する GAS(Google Apps Script)となります。 GAS(Google Apps Script) とは? GAS(Google Apps Script) とは、Google が開発した JavaScript 記
日常に潜む興味深い世界を、その道のスペシャリストがマツコ・デラックスさんに紹介するバラエティー番組「マツコの知らない世界」(TBS系、火曜午後8時57分)。7月5日は「アニソンの世界」と題し、イタリア出身のコスプレーヤーのユリコタイガーさんが、世界で人気を博す日本のアニメソングについて語るほか、「鬼滅の刃」「呪術廻戦」「SPY×FAMILY」といった人気アニメの魅力を紹介する。
一通りちゃんと実装したので、大抵はちゃんと動いてくれるはずです。動かなかったり、画面がおかしかったり、音がおかしかったりしたらバグなので、ご報告いただけるとうれしいです。 エミュレーションコアが2つになったので、せっかくなのでエミュレーションコアのインターフェースを抽象化して、マルチエミュレーターにしました。 リリースページ からコンパイル済みバイナリをダウンロードできます。 マルチエミュレーター エミュレーターを作るうえで割と面倒でバカにならないのがフロントエンドUIの作成です。GUIアプリを作るのはそもそも結構大変で、ましてや昨今のアプリケーションはPCだけでなくスマホやWebといったタイプの異なる複数のプラットフォームで動かしたいというモチベーションがあります。特定プラットフォームにべったりで何となく動くように書けばいいやというのと比べると、取れる選択肢も限られてかなり面倒になってき
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く