お前ら。技術的負債の意味をしっかり理解してるか?コードは書いただけやダメなんだぞ!エンジニアの仕事はコードをデザインすることだ!

今日、スマホを見るとこんな記事が流れていました。 これを見た時、俺は「記術的負債かぁ〜。プログラムを経験した事ない人達は、表面上での動作しか見えてないわけだし、絶対理解しづらいだろうなぁ。」と、ふと思いました。 みなさんは、どう思いますか? 俺は何度となく個人開発中に技術的負債の壁に当たりました。1ヶ月後に開発を再開すると、 内容が全くわからない。何の処理をしているのか、理解できない… 泣く泣く、ボッシュートになりました。

【スタバレビュー】勉強が非常にはかどる!「ゴールデンメイプルフラペチーノ with キャンディウォルナッツ」がとっても絶品だった!

2016年9月1日、スタバで新しいドリンクが出ました! 「ゴールデンメイプルフラペチーノ with キャンディウォルナッツ」 もう、なんて言って注文したらいいのかわからなくなるぐらい、長い名前ですが、 このドリンクがとっても美味しくって、絶品でした! 早速レビューしていきます!

【MySQL入門】MySQL初学者のための効率的な学習方法を考えてみた

僕は、あるサービスを作りたくなりました。それは、「ブログリンクカードをユーザーが自由にデザインすることの出来るサービス」というものでした。しかし、サービスの特性上、サーバー側であらゆるサイトをクロールして、情報を収集、管理をする必要があります。設計の段階で、ユーザー側のサービスと、クローリングサービスの2つにマイクロサービスとして分割し、それぞれをapiで通信する方法がベストだということになりました。 システム上、絶対に不可欠なのがデータベースです。日本語での情報が豊富という理由から、データベースはMySQLを採用することにしました。しかし、データベースを運用していくには、ある程度の基礎知識が欠かせません。今の僕のレベルでは、SQL言語が分かる程度だったので、データを絶対に壊さないためにレプリケーションやサーバー分割、テーブルの型など、細かいところまで勉強する必要がありました。 ほとんど初心者の僕が、MySQLのレベルを実際に運用出来るレベルまで持って行くには、どのようなことをするのが一番手っ取り早いかを考え、お伝えできればと思っています。

初めてのAWK 使い方と使用例 56選

1977年、C言語は生まれた直後にawkというスクリプト言語が生まれました。 そんなに昔からあるのに廃れることのない技術となっているのには、 シンプルな言語仕様とテキストを処理する場面で十分な実用性があるからだと思いっています。 awkを使い始めた人がに触れることで、その操作性や合理性に感動し、 複雑な表形式ファイルに対して全く苦痛がなくなり、 間違いなく幸せになると思います。 ぜひ、awkの世界に足を踏み入れて、体感をしてみてください。

Hatebaのようなブログリンクカードをつくろうぜ!

「はてなのようなブログリンクカードシステムを自作したい!」 そう、突然思い立ってしまいました。(一体、毎秒何リクエスト捌けばいいんやろう…) きっかけは、これを見つけてしまったからです。 このはてなブログカードは、リンクをいい感じにデザインしつつ、見やすくしてくれる、とてもすぐれものです。なんですが、HTTPSで使うと、不具合が出てしまうという問題がある! のです。 すでに知っているかと思いますが、このサイトでは「Let’s Encrypt」を使った、SSL対策を行っています。でも、SSL化したサイトから、HTTPでリソースをダウンロードすると、このような感じで必ず不具合が起きてしまいます。 欲を言うなら、もう自由にデザイン出来る機能が欲しい!

「laravel?rails?」本当のプログラマは、気にしてねぇぞ!ってもっと早く気がつくべきだった

今、laravelかrailsかどちらかを使って、Webアプリを開発しようとしています。どちらがよりするぐれいているか、実行速度が速いか、開発が速いか、サーバーリソース数が少ないのはどちらかなど、いろいろとサクを巡らしながら、調べまくっていました。 で、とある記事にたどり着いたんです。 「本当にプログラマは、プログラムング言語なんて気にしてねぇぞ」と、…。 「スキルアップを目的にプログラミングをしてはダメ」だと…。 もっと早く気がつくべきだった。 今日は、そんな思いを忘れないようにするためにいろいろと話そうと思います。 ※ この記事は、個人的な主観がたくさん入っています。 気分の優れない方は、別ページに行くことをおすすめします。

はてなブログによくある綺麗なリンク(ブログカード)を作成する方法

ついにみつけました! 自分でブログを作っていると、 サイトのリンクがとてもデザイン的にみっともないなぁ〜と思って、 いつかははてなブログで提供されているものを自前のAPIで作っちゃおうかと思っていたんです。 で、はてなブログ中にあるHTMLを解析したとこり、 iframeタグを使って内部にHTMLドキュメントを構築して表示している事がわかりました。 多分検索したら何か引っかかるかなと思ったので、 「hatena link iframe」というキーワードで調べると、探していたものがみつかりました! どうやら、このような綺麗なリンクのことを、「ブログカード」というようです。

福岡から大分にバイクで帰るときに気をつけたことと、旅の途中で出会った最高に綺麗な景色

おはこんばんにちわ!あっきーです。 今回は、福岡から大分までバイクで帰省してみました! 電車で帰る手段もあったんですが、それは「ロマンを求めて」というものです。 バイクで走るのが好きで、バイクに乗りたかったから、それで帰りました。 バイクで帰る時にたくさんの綺麗な景色を見ることが出来ましたが、 同時に危ない体験もしました。 今日は、それを俺自身が忘れることのないようにこの記事で記録として残し、 そして、それを役立つような形で伝えられればと思います。

YAPC::Asia 2016、YAPC::Japanとして開催決定!

YAPC::Asiaは、YAPC::Japanに生まれ変わり、 新しくスタートをきりました! そして、記念すべき第一回の開催地は、「北海道」! 開催日は、2016年12月10日に決定しました! http://yapcjapan.org/2016hokkaido/index.html

【golang】数値型のオーバーフロー(桁あふれ)と、それを防ぐ解決策

プログラマにとってオーバーフローは重大な問題です。 原因や場所が特定されにくいため、長期間放置される可能性が高く、 セキュリティの大きなバグに繋がるおそれがあるためです。 golangの数値型には、int、int32、byteなど、 11種類の型(byte型はuint8型に含めた)があります。 今回は、その型を使って、桁あふれオーバーフローをさせてみたました。 この話は、コンピュータの仕組みがわかっていない人は理解が出来ない可能性が高いです。 10進数と2進数の概念については事前知識とします。

「はてなブックマーク」100%の幅になるようにカスタマイズして設置する方法!

※ 2016/7/06 編集: 文章がの構造がおかしかったので、校正しました ブログを上位ランキングさせるために必要なツール言っても過言ではなくなった、 「はてなブックマーク」。 はてなブックマークをされると、 google検索エンジンの順位で高い影響力を持つ「被リンク数」を稼ぐ事ができ、 それにより、ブックマークされた記事が上位に表示されやすくなります。 でも、公式で提供されているブログパーツは幅が固定されてしまって、使いづらい… なので、いっそのこと、幅がぴったりに合うようにCSSでカスタマイズしました。

Git厳選入門書:100以上エンジニア本を買った私がおすすめする「Gitを最も効率よく学習するための厳選3冊」

私は今までに100冊を超える技術書を買い、それで分かったことがある。 それは、「ある分野について知ろうと思った時、本を1冊買うだけでは不十分だ。」ということである。 例えば、今回の題名に習ってgitについて知りたいとしよう。 しかし、gitについての予備知識は無い。 なので、まずそれは何かを知る必要がある。 そして、それの使い方、運用方法、チーム内での使い方、githubなどの関連技術、etc…など 様々な技術の知識が要求されるので、1冊で到底そのような範囲をカバー出来るはずもない。

学生が無料で「PhpStorm」「IntelliJ IDEA」「RubyMine」を手に入れる方法

https://www.jetbrains.com/student/ ‘IntelliJ IDEA’、’PhpStorm’、’RubyMine’、使っていますか? これらは、jetbrains社が開発していて、 今や、全世界の3割の人が使っている という、有名なIDEの1つです。 ※ IDE => 統合開発環境(とうごうかいはつかんきょう) 本来なら、$ 249.00($1=100円で、2万4900円) / 1年 を払わないと使うことが出来ません! でも、jetbrains社は学生や教師など、教育機関に所属する人に対しては、 すべての機能が無制限の製品版を無料で使うことが出来ます!

[レビュー]:学生が持つべきリュック No.1! (ザ・ノースフェイス)THE NORTH FACE BC Fuse Box

私がリュックに求めるのは、「背負いやすさ」「丈夫さ」「防水性」の3つです。 それらをすべて併せ持っているリュックこそ、「THE NORTH FACE BC Fuse Box」 この至高のリュックこそ、リュック会の頂点に君臨しているのです! そんなリュックを3ヶ月間使ってみて、わかったことがあります。 それは、「一度使い始めれば、他のリュックは買えなくなる!」ということです。 そんな、リュックを魅力的に語ろうではありませんか。

python & Opencvを使ったヒストグラム平坦化による、コントラスト強調

今回のゼミでは、「ヒストグラム平坦化による、コントラスト強調」の実装を行いました。 前回は、C++を使いましたが、 ゼミでの目的は「処理の内容を理解する」ということで、内容を理解していればいいので、 一番書き方が簡単なPythonを採用することにしました。 OpenCVのインストール方法は以下を見てください Homebrewを使ってOpenCV3、Python2,3をMacにインストールする

Intellij IDEAとは何か。なにが出来るのか?

https://www.jetbrains.com/idea/ 前回、「Intellij IDEAを開発している所って何を作っているの?」について書きました。 この記事はその続きです。 今回は、「Intellij IDEAとは何なのか」「何が出来てなんの特徴があるのか」を書きたと思います。

Intellij IDEAを開発している所って何を作っているの?

https://www.jetbrains.com/ 最近開発の速度に悩んでいます。 今までは、atom やsublimeで開発をしてきましたが、 単なるエディタなので、、コンソールを開いてビルドして、githubにアップして… いろいろな工程を踏まないを開発が出来なくなり、開発速度に不満を持つようになりました。 そこで、辛いですがエディタを移行しようと思います。(atom => Intellij IDEA) で、Intellij IDEA をダウンロードして「よし!使おう!」って思ったんですが、 いろいろ種類があって、何がどういう役割があって、どれを選択したらいいのか迷いました。 ですので、Intellij IDEA ってそもそも何なの?というところから知ろうと思い、 この記事にまとめました。

メディアンフィルタとは:メディアンフィルタによるノイズ除去

メディアンフィルタとは、画像からノイズを除去するための手法の一つです。 ノイズ除去の手法はその他に、平均値フィルタなど、様々なものがあります。 ノイズが出る原因としては、カメラの撮像素子の不良や、放射線などがあります。 ノイズが出現すると、突然色が濃くなったり、薄くなったりします。 それにより、画像が汚くなってしまいます。 ノイズ除去を行うことにより、それらのノイズを軽減、または消去することができます。

Atomの起動速度がべらぼうに遅い原因を調査してみた

※ 2016/6/26 編集: 文章が単調だったので、記事を書いた背景を追加した上で校正しました 自分のお気に入りのエディターはAtomです。 私は、「オープンソース大好き人間」なので、なんでもオープンソースでないと気がすみません! 市販のやつも確かにいいけれど、不良動作のエラーがあったとき、 どんなことが起こっているのかを確認したい時もあるんです それに、自分でカスタマイズできるのがいいですね!気に入ったプラグインがあれば、 それを入れるだけでどんどん機能を追加して、自分の使いやすいようにできますし! ただ、AtomはNodeエンジンとJavascriptで書かれたエディタなので、 バイナリで動くエディタと比べて、動作が遅いです… それに加えて、メモリをバカみたいに食うのが、このエディタの残念なところ。

AWS S3のキャッシュコントロール(cache control)を一括で書き換える方法

このサイトの画像などのリソースは、サーバーの負荷を軽くする のと、 リソースの管理を簡単にすることを狙って、ほとんどAWS S3から配信しています。 そして、今日ブラウザで自分のサイトを開く速度が遅いなーと感じたので、Googleさんが提供している、 「PageSpeed Insights」 という、ツール(サイトの速度改善のための助言がもらえる)を使って、調べてみました。