Fashionably flexible responsive web design (full day workshop)
出典: 国税庁プレスリリース 平成26年以降は工事業者の台頭によりランキング圏外になってはいますが、エンジニアは高額申告もれが多い職業であることは間違いなさそうです。 確定申告の対象者 そもそもどのような方が確定申告の対象になるのでしょうか この辺は経営ハッカーに上手くまとまっていたので転載します。 1)複数所得がある方 2カ所以上から給与所得がある方や、1カ所からの給与所得であっても、給与と退職以外の所得が20万円以上の場合は確定申告が必要になります。 2)所得が2,000万円以上ある方 1カ所からの給与所得の場合でも、年間の収入金額が2,000万円を超える場合は、確定申告が必要です。 高収入なエンジニアや副業をされているエンジニアの方は 収入-経費 が20万円を超えれば確定申告の必要があるので、会計ソフトなどで収支の記録をして確定申告に備えておいたほうがいいです。 申告もれがあるとどう
Back when crypto/tls was slow and net/http young, the general wisdom was to always put Go servers behind a reverse proxy like NGINX. That’s not necessary anymore! At Cloudflare we recently experimented with exposing pure Go services to the hostile wide area network. With the Go 1.8 release, net/http and crypto/tls proved to be stable, performant and flexible. However, the defaults are tuned for lo
サーバサイドエンジニアの @b4b4r07 です。この記事は Go Advent Calendar 2016 の 19 日目です。今回は Go (Revel フレームワーク) で書かれていた API サーバをフルスクラッチで書き直したお話をします。 Revel とは A high productivity, full-stack web framework for the Go language 公式の説明にあるように、Revel は高機能でフルスタックな Web フレームワークです。 複雑なルーティングや、パラメータのパーシング、テンプレート機能など、Web アプリケーションを作ろうとなったときに必要な手段はたいてい兼ね揃えているようです。公式ドキュメントに詳しく書かれています。 Revel 以外にも Go 製の Web フレームワークは多数あり、有名どころだと以下のようなものが挙げられ
この記事は、はてなエンジニアアドベントカレンダー2016の12月18日の記事です。 はてなエンジニアアドベントカレンダー2016を始めます - Hatena Developer Blog 昨日はid:ikesyoさんの「オープンソース活動への取り組み方」でした。 オープンソース活動への取り組み方 - Hatena Developer Blog こんにちは。はてなでWebオペレーションエンジニアとして働いているid:taketo957です。 2016年の4月に新卒として入社してからは、社内の仮想化基盤のリソース最適化に取り組んでみたり、 speakerdeck.com 社内の広告配信システムの刷新プロジェクトに関わってきました。 speakerdeck.com 本記事では広告配信システムの刷新を行う中で取り組んだ負荷試験環境を構築する際に考えたことと「継続的にパフォーマンス改善を行うためには
はじめに docker-composeで複数のコンテナを管理するとき、ほぼWebアプリとDBを一緒に使います。 大抵はWebアプリ側にdepends_onでDBのコンテナを指定して起動順序を制御しますが、あくまで起動順序だけなのでDBの起動完了前にWebアプリがDBにアクセスしてしまい起動失敗する事があります。 せっかくdocker-composeで1つにまとめて管理しているのに便利さが半減してしまうとモヤモヤしていたら、公式ではWebアプリ側でチェックせよと解説していました。 depends_on/condition 2021/07/21追記 depends_onで指定したサービスのhealthcheckが通ってから起動できるconditionが追加されました。これを使えばチェック用スクリプトを使わずにすみます。詳しくはDocker Compose の depends_on の使い方まと
All slide content and descriptions are owned by their creators.
↓↓↓こちらに移行しました↓↓↓ Goのhttp.Headerについて
シェルスクリプトは、Unix 系環境で仕事をするエンジニアなら誰もが一度は書くであろうにもかかわらず、書き方や特性を熟知している人が少ない言語です。この記事は、シェルスクリプトを書くときに罠を踏まないようにするために最低限あなたが気を付けるべき tips 集です。「たかがシェルスクリプト」とは思わないでください。生半可に書かれたシェルスクリプトはあなたの (チームの) 生産性をかえって低下させます。 Shebang に bash を明示しろ Bash でしか使えない機能のことを俗に Bashism と言います。Bashism はもちろん Bash 以外のシェルでは動きません。これに関するありがちな罠は、以下のように発生します。 Bash が /bin/sh として使われている環境でシェルスクリプトを書く。うっかり Bashism がシェルスクリプトに含まれていても、 /bin/sh は何も
この記事は Go Advent Calendar 2016 の3日目の記事です。 はじめに 今回は gops という Google 製のツールを紹介したいと思います。 gops は ps コマンドの様に動作しますが、golang で書かれたプロセスに限って以下の機能を提供します。 スタックトレースの表示 メモリ状態の表示 ランタイム状態の表示 メモリのプロファイルを取り pprof を起動 CPUのプロファイルを取り pprof を起動 強制GC 以下一つずつ説明していきます。 golang プロセスの一覧 まず引数を何も指定せずに起動します。 $ gops 10224 go (/opt/go/bin/go) 10244* main (/tmp/go-build638808727/command-line-arguments/_obj/exe/main) 10257 gops (/opt/
Go (その3) Advent Calendar 2016 11日目の記事です。 Go言語の生みの親、Rob Pikeが2015年のGopherfestのセッションで 言っていた、Go Proverbsを自分の勉強がてら和訳してちょっと解説してみる。 後半に行くに連れて集中力が切れたり、いろいろ調査不足のところや、認識違いの部分もあると思うので、 そういう部分のところがあったら是非指摘してください。自分でも気づいたら修正していきます。 ちなみにタイトルの「Go Proverbs」は、動画の冒頭で囲碁の話をしているとおり「碁の格言」の直訳で、 「Goの格言」にかかっていておしゃれ。 メモリを共有して通信したり、通信してメモリを共有してはならない 原文は"Don't communicate by sharing memory, share memory by communicating." こ
はじめに これは Linux Advent Calendar 2016 の第 11 日目の記事です。Linux のタスクスケジューラーのソースコードや関連するドキュメントなどを読んで分かったことをまとめました。とても長いです・・・ はじめにスケジューラーのアーキテクチャと重要な概念を紹介し、その後はスケジューラーコアとシステムコールの実装について分かったことを延々と述べます。調べきれなかったことや分からなかったことは TODO に残したので、コメント欄とかツイッターで教えてもらえると嬉しいです。間違いの指摘も大歓迎です。 ちなみに私が読み始めたきっかけは、スケジューラーのアーキテクチャ、スケジューリングアルゴリズム、スケジューリングアルゴリズムの切り替え方、nice 値やプロセッサアフィニティがスケジューリングに及ぼす影響、プリエンプションの流れ、マルチプロセッサにおけるタスクのロードバラ
$ node -v v6.9.1 $ npm -v v4.0.3 $ yarn -V v0.17.9 $ rm -rf ~/.npm ~/.yarn ~/Library/Caches/Yarn # キャッシュなどを削除 $ time npm install ... npm install 34.90s user 10.77s system 103% cpu 44.206 total $ rm -rf node_modules $ time yarn install ... yarn install 12.26s user 7.28s system 71% cpu 27.494 total 今回、yarnはなぜ速いかを探ってみたいと思います。 公式の説明 速度に関する部分だけ抜き出してみます。 オフラインモード 一度ダウンロードした package はキャッシュされ二度目はダウンロードされな
VAddyとCSRFトークン VAddyは脆弱性診断を実行する際に、CSRFトークンを最新のものに更新しながら動作します。そのため「どのパラメータがCSRFトークンか?」を判断するロジックが存在しています。最近あるフレームワーク(後述)について「CSRFトークンを正しく認識できない」というバグを修正したのですが、良い機会なのでメジャーなフレームワークやCMSを中心にCSRFトークンの実装をざっと追ってみました。一覧にしても面白くないので、仮想インタビュー形式にまとめてあります。GitHub上で軽く追ったものが多いので、最新のバージョンでなかったり、解釈が間違っている箇所があるかもしれません。 それでは、どうぞ。 Ruby on Rails 金床(以下、金)「こんにちは。ようこそ。」 RoR「こんにちは」 金「相変わらずシェア高いようですね。」 RoR「はい、おかげさまで。この間はルマン24
この記事の目的 SELinux って邪魔者ですか? 「トラブルシュートの時に邪魔だから」「トラブルの元だから」とか言う理由で /etc/selinux/config で SELINUX=disable したり setenforce 0 したりしていませんか? SELinux は理解さえすればとても簡単です. 本番環境でファイアウォールと WAF の設定をして満足していないで SELinux を使いましょう. 対象 SELinux を初めて触る人向けです. 玄人の方は他へ... 本稿の範囲 本稿では SELinux を導入しておしまいです.あくまで「みんな,簡単だからね,使おうね!」と言いたいのです. 本当は SELinux の効果を示すために Exploit を仕込んだアプリケーションから root を取って不正にファイルに触るところまでやりたいのですが,これまた別の記事にします. 僕の願
[追記]この記事は情報が古めです。Reactで起こるXSSパターンは他にも存在するので、CTFやbug bountyなどの言葉と一緒に検索してみてください。 この記事は脆弱性"&'<<>\ Advent Calendar 2016の13日目の記事です。 前日の記事はnullです。 この記事を見ている皆さんは仮想DOMに魂を震わせられているでしょうか*1、それともjavascriptに疲れてきた頃でしょうか。私はimagemagick関連を調べるのに疲れてきたところです。 React.jsで起こるXSS ここ数年のwebサービスではReact.jsのような仮想DOMを扱うライブラリを使ってhtmlがレンダリングされていることが多いので、典型的なDOM Based XSSなどは少なくなってきたように感じます*2。React.jsを例にすると、JSXがjsに変換されて仮想DOM経由でDOMを組み
この記事は ピクシブ株式会社 Advent Calendar 2016 の21日目の記事です。 みなさん初めまして。初めてじゃない方はお久しぶりです。ピクシブ株式会社でAndroidアプリを担当しております @consomme72です。 ピクシブでは、エンジニアが勝手にいろんなものを作って、いつの間にかそれが社内で広く使われているといったケースが多くあります。特にSlackのBOTは毎週のように新しいものが追加されていて、ある日突然チャットに登場してビックリすることも少なくありません。 今年のAdvent Calendarでも、LINE BOTでpixivコミックをおすすめしてくれる司書の話が紹介されました。 そしてスマートフォンアプリでも、エンジニアが勝手に作って社内で公開しているプロダクトがいくつかあります。今回は、その中からいくつかの事例を紹介したいと思います。 pixiv Spot
ソケットの使い方そのものはシンプルです。 繋いでしまったら、書き出し、読み込み、クローズしかありません。 APIリファレンスを読めれば、とりあえず使うことはできるでしょう。 ですが、ソケットまわりのパフォーマンスはユーザの体感に直結します。通信が切れる、タイムアウトなどのエラーが発生する可能性も多々あります。 最大の効率を得るには、ボトルネックを中心に最適化を行うしかありません(これは『ザ・ゴール』というビジネス書で「制約理論」として示されている問題でもあります)。 今回は、前回に引き続き、HTTPの機能を再現しながらソケットの使い方について学んでいきます。 HTTPの歴史を通して、ソケットの実行効率を向上させる方法を具体的に見ていきましょう。 圧縮 HTTPの速度アップ手法としてよく使われているのが圧縮です。 昔よりもインターネットやWifiの性能は向上しましたが、それでもCPUを使って
この記事はSelenium/Appium Advent Calendar 2016の10日目の記事です。 はじめに freee株式会社でアプリエンジニアをしている @kompiro と申します。普段は selenium をガリガリ動かしているエンジニアではないのですが、SitePrism というgemを使って PageObjects パターンを実装してみたら、想像以上に捗ったのでご紹介します。 SitePrism の特徴 SitePrism とは PageObjectパターンをCapybaraを使って実装するためのDSL です。 例えば google.com のページオブジェクトを SitePrism を使って定義すると下記のようになります。 # Pageの定義 class Home < SitePrism::Page set_url 'http://google.com' element
A Deep Dive Into Docker For Engineers Interested In The Gritty Details. Posted by Docker Saigon on Mon, Feb 29, 2016 In Internals, API, Tags lxc runc containerd cgroups iptables api This post was the basis for a joint event with the grokking engineering community in Saigon. The event was centered around DevOps, for our talk Docker Saigon needed to interest an engineering audience with how things t
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog みなさんこんにちは。Yahoo! JAPAN Tech Advent Calendar 2016の最終日を担当させていただきます林(@kazuhiro4949)です。 ヤフーでは普段iOSアプリの開発に携わっているのですが、今年の9月にYahoo!ショッピングのtvOSアプリも開発させていただきました。Apple TV(第4世代)をお持ちの方もしよければ触ってみてください。今回はそのtvOSアプリについて書きます。 tvOSアプリを開発する場合、そのやり方には大きく分けて2種類あります。それぞれ“Client-Server App”と“Traditional Apps”と呼ばれています。 “Client-Server App”はウ
みなさんもきっとそうだと確信いたしておりますが、プログラマというのは、どういうわけか実装のちょろまかしには頭がまわるもので、今や丁寧なコードを書く人の鏡とまで言われるワタクシも、それはそれは手抜き方法ばかりうかんだものでした。 技術的投資のいくつかは、不本意ながら技術的負債になりまして、いろいろと世間様にもご迷惑をおかけした次第です。みなさんもきっとそうだと思いますが。 この話は、そんな「誰にでもある」小さな事件のひとつです。1 この記事は CrowdWorks Advent Calendar 21 日目の記事です。 昨日は @tmknom さんの 「アプリケーションアーキテクチャに関するポエム」 でした。 設計に関するトピックは幅広く、かなり広範な知識が求められますよね!早く DDD を読まねばという気分になりました(笑)。 さて、この記事は、著者がここ1年ほど携わった簡単なデータ構造の
Rubyで始める、すこし本気のプログラミング入門。「プログラミングってそもそもどういうこと?」からスタートして、最後には自分だけのRubyインタプリタをRubyで作ってみよう。Rubyを使ってゼロからプログラミングを学びながら、プログラムとは何か、プログラミング言語とは何かを味わうRuby入門の連載企画。 2017年01月18日 09時00分 プログラミング+ 第9回 インタプリタの完成、そしてブートストラップへ はじめてのプログラミングでRubyを学びながらRubyインタプリタを作っていく連載の最終回。 自分だけのRubyインタプリタを完成させていきましょう! 2016年12月21日 18時00分 プログラミング+ 第8回 関数を実装する(後編) 機能限定版のRubyインタプリタ(MinRubyインタプリタ)を作りながらRubyとプログラミングを学ぶ連載、今回は前回に引き続き「関数」の実
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く