タグ

ブックマーク / blog.shibayu36.org (13)

  • 「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ - $shibayu36->blog;

    最近golangでCLIツールを作っていたのだけど、Linuxのお作法とかいまいち分かっていなかった。そこでそのあたりのことが学べそうな「ふつうのLinuxプログラミング」を読んだ。 ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの王道 作者:青木 峰郎SBクリエイティブAmazon このLinuxにおいてC言語でプログラミングする方法を、Linuxでの重要な概念も含めて教えてくれる。このを読めばとりあえずC言語を使ってLinux用のプログラムを書き始めることが出来るようになりそうだった。 それでC言語を使わない場合でも役に立つの?ということだけど、非常に役立ちそうで面白かった。なぜなら、単なるプログラミングの方法を教えてくれるだけではなくて、 Linuxの重要な考え方をファイルシステム・プロセス・ストリームという概念にまとめて教えてくれ

    「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ - $shibayu36->blog;
  • ちょっとしたことでも雑にブログに書いておくと良いことが起こる - $shibayu36->blog;

    僕は自分がやったこと・勉強したこと・気づいたことなどはどんなにちょっとしたことでも、公開の場のブログに書くようにしている。その内容はある程度雑でも良いので、とにかく公開の場に書くようにしている。それによって、結構良いことが起こっているというのを社内の日記に書いていたのだけど、これも公開の場に書いておいても良いかと思ったので書く。 これまでの経験だと、次のような良いことが起こっている。 最低限未来の自分に理解できる程度まで記事にまとめることで、知識が頭の中で言語化され、定着する 時々他の人からフィードバックを受けて、さらに学習が進むことがある 「あれ昔なんか勉強したけど覚えてないな」という時に自分のブログ見たらすぐ思い出す 分からないことを調べようとググったら自分のブログが出てきてすぐ思い出す 初めからブログに書くつもりでインプットすると、自然と体系化・汎化しながらインプットできるようになる

    ちょっとしたことでも雑にブログに書いておくと良いことが起こる - $shibayu36->blog;
  • AMPについてのコンテンツ消費者としての感想メモ - $shibayu36->blog;

    昨日、「AMPが導入された結果、現時点ではモバイルのブラウズ体験が大きく損なわれてるのですが、そう感じるのは僕だけでしょうか」とTwitterでつぶやいたら、いろいろ反応があり、いろんな観点を知ることが出来たのでメモしておく。なお、自分自身はまだAMPのコンテンツを実装したわけではなので、開発者の知識はなく、ただのコンテンツ消費者としての知識しかない。開発している人から見るとまた違った見え方があるかもしれない。 コンテンツ消費者側のメリット・デメリットという観点 AMPによるコンテンツ消費者側のメリットは速度面だが、モバイルを利用していた時に現時点では速度に困っていなかったので、自分はメリットを享受できていない 現時点では、いろんな理由によりユーザ体験が損なわれている部分がある ユーザ体験が損なわれている例としては、プラットフォームの問題とコンテンツ制作側の問題の両方がある プラットフォー

    AMPについてのコンテンツ消費者としての感想メモ - $shibayu36->blog;
  • JavaScriptのPromiseの概念について学習した時に参考にしたもの - $shibayu36->blog;

    JavaScriptのPromiseを使った実装をコードレビューしていたのだけど、やってみたら自分があんまりPromiseについて理解できていなかったことに気づいた。特にこれまでjQueryのajaxやjQuery Deferredをなんとなく使っていたのだが、Promiseの根的な概念がjQueryの巨大な仕様の中に埋もれていて、自分の中でjQueryの機能とPromiseの概念を分離して正しく言語化出来ていなかった。 そこでPromiseの根的な概念を再学習したので、何を参考に勉強したかを書いておく。 PromiseについてはとにかくJavaScript Promiseのを読めば大体把握できる。このドキュメントを読めば Promiseの概念 ES6 Promiseの利用方法 Deferredとの関係性 などといったことを知ることができる。 個人的には次の部分が特に参考になった。

    JavaScriptのPromiseの概念について学習した時に参考にしたもの - $shibayu36->blog;
  • CSSのブラウザサポート状況を自動でチェックできるdoiuseが便利 - $shibayu36->blog;

    最近書いているCSSがそもそも今サービスが推奨しているブラウザでサポートされているのかチェックするのだるいと思っていたら、doiuseという便利なツールを見つけた。 doiuseとは https://www.npmjs.com/package/doiuse CSSのブラウザサポートのチェックをしてくれるモジュール。caniuse のデータベースを利用して、ブラウザと自分が書いているCSSを指定して、サポートされていないCSSの書き方を見つけてくれる。 試す環境を用意する とりあえず試すための環境を用意する。適当なディレクトリを作って、必要なライブラリをインストールする。また、検証するためにbootstrapも入れておく。 $ mkdir try-doiuse $ cd try-doiuse $ npm install --save-dev doiuse $ npm install --sa

    CSSのブラウザサポート状況を自動でチェックできるdoiuseが便利 - $shibayu36->blog;
  • コードレビューを段階的に行ってもらう話 - $shibayu36->blog;

    最近コードレビューをどのように回していくかについて考えたことがあったのでブログに書いておく。 コードレビューの目的 コードレビューには誤りの発見以外にいろいろな目的がある。自分の中ではid:hisaichi5518が昔プレゼンでまとめていた目的が結構しっくり来ている。 https://speakerdeck.com/hisaichi5518/kodorebiyufalsehua?slide=8 http://hisaichi5518.hatenablog.jp/entry/2014/10/29/165721 機械的に発見できない誤りの発見 技術力の向上 属人性の排除 コードレビューの目的としては誤りの発見と同様に、技術力の向上や属人性の排除といった教育的側面も重要である。 コードレビューで課題に思っていたこと 自分のチームでは基的に一人がコードレビューをして、OKだったらmergeをして

    コードレビューを段階的に行ってもらう話 - $shibayu36->blog;
  • TypeScriptでのフロントエンド開発環境作成総まとめ - $shibayu36->blog;

    これまで自分のブログで、TypeScriptを使ったフロントエンド開発環境についてブログをいくつか書いてきた。ひとまずこの辺りで、TypeScriptフロントエンドを開発するための最低限の環境を構築できるようになったので、総まとめとしてブログエントリを書いておく。 今回のサンプルコードは https://github.com/shibayu36/typescript-project-sample/tree/4653cd002eef3ee1946a2ca1da344e0076b2844f に置いたので参考に。 これまでの記事 EmacsでTypeScript環境を整える - $shibayu36->blog; JSをbrowserifyでビルドし、ライセンスコメントを適切に残す - $shibayu36->blog; gulp + browserify + tsifyを利用してTypeSc

    TypeScriptでのフロントエンド開発環境作成総まとめ - $shibayu36->blog;
  • フロントエンド速度改善をしようとして参考にしたもの - $shibayu36->blog;

    最近フロントエンドの速度改善をほんの少しだけやって、いろんな資料を参考にしたので、今後また速度改善をする時に備えて、参考になった資料をまとめておく。今回パフォーマンス改善やった項目としてはExpiresヘッダ付ける、gzip圧縮かける、JSをbodyの一番下にとか基的なことしかやらなかったので、そのあたりはこの記事ではまとめていません。 今回は「測定する」「ブラウザがどう表示しているか知る」「改善を検討する」の流れで調べていったのでその順にまとめる。 測定する 何はともあれ測定しないと何も始まらないので、まずは測定の仕方について調べた。 PageSpeed Insights( https://developers.google.com/speed/pagespeed/insights/ )と、webpagetest( http://www.webpagetest.org/ ) はとりあえ

    フロントエンド速度改善をしようとして参考にしたもの - $shibayu36->blog;
  • 「1分間顧客サービス」を読んだ - $shibayu36->blog;

    「1分間顧客サービス」を読んだ。これで1分間マネジャーシリーズは全部読んだ。 1分間顧客サービス―熱狂的ファンをつくる3つの秘訣 作者:ブランチャード,K.,ボウルズ,S.ダイヤモンド社Amazon このは、熱狂的なファンがいるような顧客サービスを作るための秘訣について教えてくれる。他の1分間シリーズと同じく物語風になっていて、非常にすぐ読める。けっこう面白かった。 いつもどおりの中で印象に残ったところについて書いていこうと思う。 顧客を中心にした完全なビジョンを作る 顧客が何も言わない時に熱心に耳を傾けないといけない 熱狂的ファン指標 顧客を中心にした完全なビジョンを作る このの中に、良い顧客サービスを作るためにはまず「顧客を中心にした完全なビジョンを作らなければならない」と書かれている。つまり、自分たちの顧客が使う上で、自分たちのサービスが理想としてはどうなっていなければならない

    「1分間顧客サービス」を読んだ - $shibayu36->blog;
  • 「爆速経営 新生ヤフーの500日」を読んだ - $shibayu36->blog;

    ビジネスを学ぼうシリーズ第6弾。「爆速経営 新生ヤフーの500日」を読んだ。とにかく面白かった。 [asin:4822274292:detail] このはヤフーが2012年に経営陣を総入れ替えし、社長が宮坂さんになってからどのように経営改革を行ってきたかについて、筆者が取材をもとにまとめたものである。新生ヤフーになってからの改革プロセスが非常に良くまとまっており、具体例もいろいろ出てくる。特に宮坂さんがルールを明確にし、それぞれの社員に自律性を促すマネジャータイプの経営をおこなっているところから、自分自身の経験もあいまって非常に面白かった。 このの中で個人的に一番面白いと思ったのは、宮坂流マネジメントの質である「原理原則で動かす」という話だった。 「原理原則で動かす」というのは、 意思決定をする判断のよりどころとなるルールを公開し、社員に周知させた上で事業を進めるというスタイルである

    「爆速経営 新生ヤフーの500日」を読んだ - $shibayu36->blog;
  • コードレビューを円滑に行いたい (#cross2014 のお話) - $shibayu36->blog;

    id:antipopさんやid:studio3104さんに機会をもらえて、CROSS 2021に参加させてもらい、はてなでのレビューの話を軽くさせてもらった。はてなからは僕とid:hakobe932さんとで参加した。 http://blog.kentarok.org/entry/2014/01/18/204552 2014/1/17 #cross2014 コードレビューCROSS 〜ぶつかり稽古 2014初場所〜 - Togetter それで、今回参加して他の会社の人のレビューの話も聞いて、あーそれはあるあるとか、そういう問題解決するためにこういうことしてますとか、他の会社ではこういう時どうしているんだろとか、幾つかおもうところがあったので、もう少しレビューのことについて書いてみる。 レビューと関係性問題 レビュアーとレビュイーの関係に関して - 職質アンチパターン コードレビューと関係性

    コードレビューを円滑に行いたい (#cross2014 のお話) - $shibayu36->blog;
  • ペアプログラミングをしていたら、開発環境が良くなった話 - $shibayu36->blog;

    最近、仕事で一週間に一度はペアプロをするということをしているのですが、これによって思ってもみなかった効果が出たので紹介します。 ペアプロというとプログラムを書いている人の後ろでもう一人が見ていて、逐次指摘などしながらプログラミングすることによって、生産性の向上やバグ発生率を抑えるみたいなことが言われています。僕自身もそう思いながらペアプロに望んでいたのですが、違うところで効果が出始めました。それは自身の開発環境がだんだん良くなっているということです。 ペアプロによって開発環境が良くなる 今回開発環境といっているのは、emacsなどのエディタや、ターミナルなど、ローカルマシンの設定などのことです。 なぜ開発環境がよくなっていっているというと、見ている時と見られている時のそれぞれにおいて、次のようなことが起こるからです。 見ている時 後ろから見ていると突然プログラムを書いている人が、自分の知ら

    ペアプログラミングをしていたら、開発環境が良くなった話 - $shibayu36->blog;
  • MySQLをさらに理解するために読んだ記事まとめ - $shibayu36->blog;

    最近MySQLの勉強をしていました。実践ハイパフォーマンスMySQLを読むべきという話を聞いていたのですが、かなり網羅的に書かれていて、今の知識ではどれが重要なのかわからない状態でした。そこで色々調べてみて、参考になる記事をいくつか見つけたので、少しまとめてみようと思います。 今回まとめた記事を読んで、大体以下のことが理解できました。 インデックスの使われ方とその構造(MyISAMとInnoDB) EXPLAINの詳しい使い方、見方 InnoDBの特性 ALTER TABLEの特性 レプリ遅延 まず最初に Webエンジニアのための データベース技術[実践]入門 (Software Design plus)posted with amazlet at 12.06.02松信 嘉範 技術評論社 売り上げランキング: 9767 Amazon.co.jp で詳細を見る 松信さんの書いた「Webエンジ

    MySQLをさらに理解するために読んだ記事まとめ - $shibayu36->blog;
  • 1