Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up
男子たるもの一度は自分でCPUを作ってみたいものだけど、ICでLEDをピカピカさせた程度の経験しかないハード素人な俺だったので、CPUを自作してる東大生などを遠くから見て憧れてるだけだった。しかしおよそ一年前のこと、「MIPSなんて簡単に作れますよ!」とKさん(←FPGAでLispマシンを自作するような人)に言われて、お、おぅ。。そりゃKさんはそうでしょうよ。。あれ、もしかして俺にもできるかな。。? と思った。この一言がなければ32bitのCPUを自作しようなんて考えなかっただろう。 それから一年ちょい、とくに今年の正月休みやFPGA温泉でがっつりがんばって、なんとかMIPS Iサブセットの自作CPUが動いた。これはフィボナッチを計算してるところ。 ちなみに、これはこんな感じのフィボナッチのコードをCで書いて、 void main() { int i, *r = (int *)0x7f00
フロントエンジニアの本間です。 今回は業務スピードが上がる便利なGoogle Chromeの拡張機能を紹介します。 エンジニアに限らず、色々な人が使える汎用的な物もご紹介します。 使えそうな物があれば幸いです。 まずはこれ 1, chrome.google.com Webデザイナーの方は必須!ブラウズ上ならどこでもカラーコードを調べらます。操作も簡単、調べたいところでクリックするだけ 2, chrome.google.com 先ほどのピクセル版です。どこでもピクセルが図れます。こちらの操作はドラックするのみ! 3, chrome.google.com これは表示しているサイトのhtmlをチェックしてタグの過不足などを検出してくれます。初歩的なミスを指摘され、赤面する前に入れときましょう。 4, chrome.google.com サイトのキャプチャを取ってくれます。全体、部分キャプチャ、簡
HeartRails Tech Blog ハートレイルズのエンジニア、デザイナーによるブログです。 ウェブサービス、スマホアプリ、IoT デバイスの開発に関連する技術的な情報を発信していきます。 github/scientist これは何? github が開発し、つい先日 ver1.0 がリリースされた gem です。 本番環境で新しいコードを試すためのツールです。 例えば以下のようなコードがあったとしましょう。 class Repository def pullable_by?(user) self.is_collaborator?(user) end end このコードを以下のようにリファクタリングしたい、とします。 def pullable_by?(user) has_access?(user) end しかし、新しいコードが元のコードと全く同じように動いてくれるかどうか心配。。。
OOM killerで大事なプロセスが殺される。困りますね。。 google で OOM Killerと入力すると 「無効」とか補完されます。しかしどうするのが良いのか、あまりよく説明されている記事がみあたらなかったので自分の考えをメモしておきます。 OOM Killer の目的は何か? まずは何故OOM Killerが発生しているのかについて、ざっくりイメージをつかみましょう。linux kernelはプロセスからの「メモリくれ」という要求に対してたぶん足りそうだという場合に「OK」といって渡します。実際のメモリ割り当てはアクセスが発生するタイミングまで遅延させます。これを遅延アロケーションといい、だいたいにおいてうまく動きます。ただし必ずうまくいくと保証されているわけではないので破綻することがあります。 OOM Killerはこの遅延アロケーションが破綻しそうなときに、適当にプロセスを
先日弊社オフィスで開催された第十四回 #渋谷javaですが、自分はProject Jigsawについて発表させていただきました。以前、社内の勉強会でJava9の新機能について紹介したことがあったのですが、その内容からJigsaw部分を抜き出し、内容を充実させたものです。 Java9 and Project Jigsaw from takezoe www.slideshare.net スライドにもありますが、すでにJigsawを利用可能なJDK9のプレビュー版が提供されていますので興味のある方は試してみていただければと思います。 しかしJigsawってJava7→Java8→Java9と延期され続け、さらにJava9のリリースも半年延期され、いつの間にか、かれこれもう10年近く(10年前はまだSun Microsystemsという会社がこの世に存在しました)やってるんですよね…。そういう意味
Manual or automatic deployments. Trigger a deployment whenever you’re ready or deploy on every push to a branch. Tools for multiple environments. Each deployment environment (like Production and Staging) can ship code from different branches to one or many servers simultaneously.
MySQL のチューニング (ボトルネックの検出) こんにちは! onk です。 SAPさんが各社とも「ソーシャルアプリは負荷対策が大事」って言っていますね。 弊社でも mixi アプリ(PC),mixi アプリモバイルをリリースしたときはお祭り状態だったので, ふりかえりも兼ねて MySQL のボトルネックを調べる方法を書いてみました。 (幸い,モバゲーオープンゲームのリリース時はこれらの経験が役に立ったので何ともなかったです) といっても 9 割方 そもそもサーバの設定がおかしい 更新が多いテーブルなのに MyISAM エンジン for 文の中でクエリを発行 INDEX 張ってない データ量がえらいことになってる 辺りなんですけどねー。 基本は下から まず,ボトルネックを調べるときは下の層から上がっていくのが基本です。たぶん。 なので ssh でサーバに入って (LoadAverage
こんなかんじです 自殺を知る、自殺を考える::職業別の自殺者数を年度で並べて表示 自殺を知る、自殺を考える(トップページ) Reactまわり うすくやっていく 前回はRedux+Redux-Routerを使ってうまくコンテキストを分離できてよかったですね、ということになりました。 やりなおしRedux - Redux Routerでコンテキストをわけると楽になる - Qiita しかし、さあまたなにか作りましょうとなったときに、あのActionsやReducersやconnectを思いうかべただけでもういやになるという、どうしようもないめんどくささがあります。 というわけで、今回はReact の Context を使って Flux を実装する - Qiitaをほぼそのまま使うことにより作業を軽くすることができました。 Providerが各コンテキストの親分となり、自分が監視するemitte
About 最近cron辛いなーと思っていて、じゃあ使ったことのあるRundeckなのかと思うのですが、冗長性をどう担保しようかなーと悩んでいました。たまたまgithub眺めていたら面白そうなものを見つけたので試してみます! 解決したいこと 定時にジョブを実行させたい どのサーバで動くかは重要ではなくて、とにかく定期実行させたい(冗長性) disposalなサーバにしたいので、サーバ特有の設定をなるたけ排除したい cronsulとは GitHub - EvanKrall/cronsul: Runs periodic jobs somewhere on a cluster... sorta cron + consul = cronsulということだと思うのですが、その名の通りcronをconsulで制御します。 仕組みとしてはいたって簡単です 1. consulクラスタ上で同じcronを定期
Docker マルチホストネットワーキング: swarm, consul, overlay network(VXLAN) を使用した構築手順DebianUbuntuDockerconsulDockerSwarm Docker multi host ネットワーク 今までDocker の--link 機能を使うことで、同一ホスト内のコンテナの名前解決をして同一ネットワークのコンテナに対してアクセスすることは可能でしたが、それが複数の異なるDocker ホストになると--link 機能では実現することができませんでした。 そこでDocker のmulti ホストネットワーク及びDocker overlay ネットワークの機能を使用することで異なるホスト上にあるコンテナに対して、あたかも同じネットワーク上に存在しているコンテナのように、便利にアクセスすることができるようになります。 この機能を使う
swift初心者がSmartNews風ニュースアプリを作ってみる過程を晒す(6) - Alamofire + Object Mapper + Realm + SDWebImageで最低限動くニュースアプリを作るiPhoneiOSSwiftiOS9Swift2.0 はじめに swiftはほとんど未経験ですが、SmartNews風ニュースアプリを作ってみて、その過程をさらしています。 前回は、こんな記事を書きました。 swift初心者がSmartNews風ニュースアプリを作ってみる過程を晒す(5) - ニュースアプリにおけるApp Transport Securityについて考える - Qiita 今回は、ニュース記事としての最低限の機能を実装して、一通り動くものを作成します。 現在の進捗 前回は、ニュースアプリにおけるApp Transport Securityについて考えました。 前回まで
概要 Spring Boot で書籍の貸出状況確認・貸出申請する Web アプリケーションを作る ( その11 )( ログイン画面の作成5 ) の続きです。 今回の手順で確認できるのは以下の内容です。 セッションの管理に Spring Session を使用する 参照したサイト・書籍 Spring Session http://projects.spring.io/spring-session/ Spring Session の公式サイトです。 Spring Bootハンズオン - 5. Spring Sessionの導入 http://jsug-spring-boot-handson.readthedocs.org/en/latest/SpringSession.html Spring Boot で Spring Session を使用するための設定方法を参照しました。 目次 はじめに
Lean, uncomplicated, standardized, easily manageable: that’s the essence of Docker containerization . Using best practices assures that all of the benefits of Docker containerization are fully realized and you’re making full use of this powerful tool. Here are the Docker best practices that will help you make the best of the lean, mean Docker containerization that has become so popular among devel
社内でfastlane布教のためSnapshotから紹介したので その内容をまとめてみました。 fastlaneとは? 簡単に言うとiOSアプリのCI支援ツール及びそのツール群 ビルド・デプロイ・テスト・リリースなどの工程における自動化をサポートします。 https://fastlane.tools https://github.com/fastlane/fastlane snapshotとは? fastlaneのスクリーンショット作成支援ツールです。 Xcode7以前はUI Automationを利用していましたが現在はXCUITextを利用する形になっています。 私はUIAutomationを利用してた頃に触っていたのですが、XCUITestに移行したようなので改めてまとめてみる事にしました。 まずXCUITestを動かしてみよう Snapshotについて話を始める前に利用されるXCU
新しいエラーハンドリング Swift 2でthrowを使ったエラーハンドリングが新たに導入された。従来のNSErrorを使ったエラーハンドリングの問題点は、メソッドにNSErrorポインタの代わりにnilを渡すことで無視できてしまうことだった。新たに導入されたエラーハンドリングでは、throwsキーワードが宣言されたメソッドを呼び出す際にdo-catch文で囲うことを強制される。throwで投げられるエラーはNSErrorではなくErrorTypeというprotocolを実装した値だ。Cocoaフレームワーク内のNSErrorを使っていたメソッドはthrowsを使うように置き換えられており、今後は独自のエラーを定義する場合はNSErrorではなくErrorTypeを使うのが望ましいと考えられる。しかし、ErrorTypeにも問題点はあり現実的な設計方針を検討する必要がある。 アプリ独自エラ
ヒレガス本こと「Mac OSX Cocoa プログラミング」の例題を Swift で書いてみるメモ。その4回目。 今回は8章「NSArrayController」に挑戦してみる。この章では「RaiseMan」という従業員の予定昇級率の管理アプリケーションの作成を通して、NSArrayController を利用した Cocoa のMVC(Model-View-Controller)モデルについて学習する。 完成したアプリケーションは下図のようになる。 プロジェクトの作成 XCode で新たな「Cocoa Application」プロジェクトを作成する。Product名を指定し、Language に Swift、「Use Storybords」と「Create Document-Based Application」にチェックを入れておく。 原書では、当然 Storybord を使用していない
エンジニアの南直 @south37 です。 速習会の内容 2015年12月10日に、 Wantedly のオフィスにてRailsエンジニアのためのSQLチューニング速習会を開催しました! RailsはRDBをたたく際に、Active Recordが最適化をよしなにやってくれるので複雑な処理やサービスの規模が小さい段階ではRDBに向き合う場面はすくないかと思います。しかし、サービス規模が大きくなってきたり、複雑な処理を行ったり、高速化に本気で向き合うときは、Active Recordの仮面をはぎとりSQLと向き合って細かなチューニングをおこなっていく必要があります。 今回の速習会では、SQLのチューニングの基礎として、SQLが実行されるときRDBの中ではなにがおきているか、Explainの読み方、Indexの張り方などをまとめています。 発表スライドはこちら Wantedly速習会 Want
概要 一人で開発してると、とにかく自動でいろいろやりたいです。 コードの静的解析 テストコード実行 セキュリティチェック デプロイ など、手元の環境で毎回行うのはひどく時間がかかるし、めんどくさいの一言に尽きると思います。 自分なりに工夫して設定したCI環境(CircleCI使用)についてやっていることを見直しがてら書いてみます。 CircleCIを使ったCI環境 現在使っているCircleCIの設定をベースに書いていきます。 静的コード解析 使用gem:rubocop コードを綺麗に保つことって大事ですよね。 ってことで、コードの静的解析ツールを入れます。 こんな感じに、testを行う前にやりましょう。 これはとても大事なことで、なぜならテストは失敗する可能性があり、無駄に時間が(相対的に)長いからです。 rubocopの設定は、各自行っていただければと。 実際これは結構厳しいので、ゆる
これから作るアプリ 今回と次回で作るアプリですが Ruby on Railsのscaffoldジェネレータが生成する古き良き時代の単純なWebアプリケーションと同じ動きをする、React.js を使った Single page application (SPA)のフロントエンドを作っていきます。 バックエアンド(APIサーバー)は Ruby on Rails を使うことにします。 バックエンドの構築 Ruby on Railsのインストール等はネット上の情報を参考にしてください。 私の会社 EY-OfficeのWikiにもインストール方法を書いています (少し古いのでバージョンは最新のものを入れて下さい) Railsがインストールできたら、以下のようにプロジェクトを作り scaffold ジェネレータを使い、Railsアプリを作ります。 $ rails new todo_app $ cd
ここでは模擬問題集の効果的な使い方をご説明致します。 (*現在模擬問題はSilverのみ提供しております) Silver模擬問題の有効活用3原則 本番のテストでは模擬問題と同レベルの内容が出題される。 必ず手を動かしながら学ぶ。 Rubyの公式ドキュメントもチェックしておく。 つまり、模擬問題の出題範囲をしっかりと理解すれば、 少なくともSilver試験に関しては合格点に近づくことができます。 ここでは、3原則を実践するために役立つ、pryの使い方を伝授いたします。 試験の対象となるRuby2.1.x系のインストールを完了しているものとして、 まずは、ターミナル(または、コマンドプロンプト)でpryを立ち上げましょう。 対話的にRubyのコードを実行することが可能です。 ハイライト、インデントが自動的に適用されます。 Silverの学習でさらに役立つ機能として、pryからドキュメントを参照
Speaker: Lydia Di Francesco In this workshop, participants will delve into the realm of AI and its profound potential to revolutionize employee wellness initiatives. From stress management to fostering work-life harmony, AI offers a myriad of innovative tools and strategies that can significantly enhance the wellbeing of employees in any organization. Attendees will learn how to effectively levera
こんにちは、デザイナーの藤田です。 デザインをやっていると、見出しのデザインに悩むことって結構ありますよね! 自分のデザインストックを増やすためにも、今回のブログでは今っぽい見出しデザインをタイプ別にまとめてみました! 独学でつまずいていませんか? 現場で活かせるWebデザインを効率的に学びたい、誰かに教えてもらいたい……という方は、「スクールでの勉強」もおすすめです。LIGではWebクリエイター育成スクール「デジタルハリウッドSTUDIO by LIG」を運営しております。 詳細を知りたい方は、ぜひスクールの詳細をチェックしてみてください! →スクールの魅力が分かる資料はこちら!(資料請求) ※この記事は2022年3月に編集部が情報を更新しました ジャンプ率パターン ミニマムなデザインでは見出しに過度な装飾を加えずに、本文に対し見出しの文字サイズを大きくすることで見出しを目立たせるサイト
Há quem pense que o CSS serve somente para aplicar estilos a determinados elementos, e realmente seu principal objetivo é esse! Mas alguém já pensou que seria possível capturar eventos, como um evento de clique por exemplo, e gerar algum tipo de animação com isso? E falar que com isso é possível criar um jogo? Neste talk explicarei como criar um jogo simples, sem uma linha de javascript, usando ap
http://aws.typepad.com/aws_japan/2016/02/access-resources-in-a-vpc-from-your-lambda-functions.html 昨年のAWS re:Inventで対応が発表されていましたが、とうとうAWS LambdaからVPC内リソースにアクセスが出来るようになったので何が出来るのか眺めていました。 そうすると、どうやら「VPC内にNetworkInterfaceを作ることでVPC内リソースにアクセスする」とのことだったので、もしかするとこれはLambdaの起動インスタンスからフリーダムな事ができるのではないかと思い、ちょっと検証してみることにしました。 やりたかったこと LambdaからVPC内の(インターネットに公開していないインスタンスに)SSH接続して、その内部の情報を拾う/書き換えることが出来ないかを検証する
先週の建国記念日の朝、目が覚めると、すっかり前日までの高めの熱が平熱まで落ち着いていました。それでも念のため午後まで布団の中でゴロゴロ、すると、かなり身体が訛っているような不快感が襲ってきました。そこで、暫くサボり気味だったウォーキングに出かけようと思い立ち……。 で、本日もここ『合羽橋道具街』の入口を起点に出発いたします。現時点で午後三時五十分、今回は道具街は抜けずに、浅草通り経由で『上野恩賜公園』を抜けて『根津神社』まで散策しようと思います。 まずはこの浅草通りをJR上野駅に向かい真っ直ぐ、途中東京メトロ稲荷町駅の前を通過し、左手に『下谷神社』を見てさらに直進、昭和通りを渡ったら歩道橋を上って上野駅前に出ます。 さらに右手にエスカレーターがありますので上へ……パンダ橋口に出ましたらその前を通過して『上野恩賜公園』内に入りましょう。 そして噴水の脇を通過し、『東京国立博物館』正面へ進んで
アプリマーケティング研究所 > アプリ開発 > 24歳でスマホゲーム起業。開発に2,000万円かけたが「資金難と大バグ」のコンボで会社終了。アプリ「きのこれ」元社長が語る会社倒産後の世界。 きのこ擬人化ゲーム「きのこれ」のお話を伺いました、ソシャゲ戦国時代に夢半ば破れたアプリの話。 ※ポッピンゲームズジャパン株式会社 CEO 辻村尚志さん(右)、栗原広樹さん(左) 「きのこれ」が出来るまで。 そもそも栗原さんは、どうして24歳で起業したんでしょうか? 栗原: 前に勤めていた会社が倒産してしまって。それで、元同僚と3人で「ゲームアプリをつくろう」と、2014年4月に立ち上げたのがCmixという会社です。起業資金は知人に借りました。 「きのこれ」の企画はどのようにできたのでしょう。 栗原: 当時ユーザーとして、すごくハマっていた「クラッシュ・オブ・クラン」をベースに、かわいいイラストを使って、
B! 7 0 0 0 ちょっとZshで遊んでいたら Macに元々入ってるZshでprintfによる左寄せが出来なかった件。 printfで左寄せ MacのデフォルトZshでは出来ない? printfで左寄せ Zshではprintfを使って文字列を表示できますが、 良くある書式の様に%-30sみたいにすると 後から与える文字列を左寄せ、30文字の幅を持って表示できます。 与えた文字が30文字に足らない場合は残りは空白で。 $ printf "X%-30sX" "aaa" Xaaa X -を付けなければ右寄せ $ printf "X%-30sX" "aaa" X aaaX Bashでも同様のことが出来ます。 MacのデフォルトZshでは出来ない? 現在手元にあるMacでは /bin/zshに入ってる物がversion 5.0.8です。 このZshを立ち上げると $ /bin/zsh $ pri
※TensorFlowとは2015年11月9日にオープンソース化されたGoogleの機械学習ライブラリです。 本ブログでは、実際のTensorFlowの使い方を連載方式でご紹介しています。 皆様こんにちは。 テクノロジー&ソフトウェア開発本部の佐藤貴海です。 本日から「TensorFlowを遊び倒す!」と銘打って、Googleが2015年11月9日に公開した“機械知能(?)ライブラリ”のTensorFlowを入門編&応用編にわけて、使い方をご紹介していこうと思います。 www.youtube.com http://www.tensorflow.org/ TensorFlowを何と呼ぶかは微妙なところです。機械学習ライブラリと言っているところもありますが、Getting Startedで「Hello, TensorFlow!」とやっているので、もう少し大きい概念のライブラリのようです。 とり
GitHubのファイルブラウザは良くできているので、ライブラリをわざわざダウンロードすることなく動作を確認するのに便利です。しかしライブラリによっては多くのディレクトリに分かれているため、ナビゲーションが面倒に感じることもあります。 そこで使ってみたいのがCompassです。Google Chrome向けにスムーズなGitHub上のナビゲーションを提供します。 Compassの使い方 Compassを使うには任意のGitHubリポジトリにてコマンド+K(Windowsの場合はCtrl+K)を押します。そうするとフローティングが表示されますのでファイルのパスを入力していきます。 ファイルを選択してエンターキーを押せばそのファイルが表示されます。 実際に操作しているところです。結構スムーズなのが分かるかと思います。 Compassを使えばGitHub上でのファイル移動やコードのブラウジングがと
ちょろっとメモ。の割には長くなったけど、最後の方にいいことが書いてある。 ※技術英語や翻訳 Advent Calendar 2015に参加してみました。スレ違いだったらすみません。 追記: taka-oyamaさんの記事「多国対応ウェブアプリを開発する前に知っておきたかったこと」も参考になります。 追記: 「17ヶ国の多言語対応Tips」で当記事を紹介いただきました。素晴らしいスライドです。 追記: 「本当にあった怖い誤訳」によると、今でも機械翻訳をそのままウェブページで使っている自治体があるそうです。怖す。 追記: ぼくたちのかんがえたさいきょうのi18n国家 - Qiitaもどうぞ。 概要 Web アプリやモバイルアプリを問わず、アプリで当てたらそれ英語化だ多言語化だ国際化だ、となることは多い。しかしアプリの作りなどさまざまな原因によって、他所の国の言葉に翻訳してもらっても実は現地の人
Content caching is one of the most effective ways to dramatically improve the performance of a web site. In this webinar, we’ll deep-dive into NGINX’s caching abilities and investigate the architecture used, debugging techniques and advanced configuration. By the end of the webinar, you’ll be well equipped to configure NGINX to cache content exactly as you need. View full webinar on demand at http
2017.8.1追記 正規表現がマッチしないケースを発見したので、gistのほうを更新しました。使ってくださっている方は手元のスクリプトを更新してください。 はじめに Pull RequestやMerge Request以外の方法ではmasterやdevelopブランチへのマージを許さない感じの各種ワークフローを実践していると、自然とリリースノートの中身ってMergedのリストになりますよね。 私も仕事でよく社内向けのリリースノートを作るのですが、手作業でMerge Requestのリストを作るのが結構手間だったわけです。 というわけでRubyの練習がてら作ったのがgit-mr-diffです。 Getting Started install gistからコピペしてきてパスの通った場所に置いてください。Rubyが必要ですがMacの人は気にしなくていいです。Windowsでの動作確認はしていま
なぜDMMがweb3に参入したのか。Seamoon Protocolが目指す新たなエンタメ体験の未来とは
Rubyで書かれたちょっと重たいバッチ処理があって速くする必要があったので、fork(2)とpipe(2)を使ったマルチプロセス化でコアを活かした並列処理に書き直した話します。 以下の記事に詳しく書いてあるので、TL;DRはそちらを見てな? Forking and IPC in Ruby, Part I Forking and IPC in Ruby, Part II なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 - 達人出版会 Threadじゃいかんの? — GILについて 並行プログラミングとしてまず最初に思いつくのはマルチスレッド化ですが、RubyにおいてはGVL(Giant VM lock)があるためマルチコアを活かすことは難しいのです。 ネイティブスレッドを用いて実装されていますが、 現在の実装では Ruby VM は Giant VM lock (GVL) を有し
何の話かというと TensorFlow Tutorialの最初に登場する「MNIST For ML Beginners」では、次の方針で手書き文字の分類器を作成しています。(今の段階では、下記が何を言ってるのか分からなくても大丈夫です。) ・28x28ピクセルの手書き文字画像を各ピクセルの濃度を並べた784次元ベクトルと見なす。 ・784次元ベクトル空間を10箇所に分類する線形の多項分類器を用意する。 ・多項分類器の出力値をsoftmax関数に入れて、784次元空間の各点について、「0」〜「9」のそれぞれの文字である確率を定義する。 ・上記の定義の下で、トレーニングセットが得られる確率を最大にするよう、線形多項分類器のパラメーターを調整する。 これが一体何を言ってるのか・・・ということを数学的に理解していただくことが目標です。今回は、下準備として、より単純化したデータで上記と同じ処理を実装
予習として洋書はいかがですか? 前回おすすめデザイン入門書を 10 冊紹介しました。どれも自信をもって紹介できる書籍ですが、選書しているときに訳本がない書籍を幾つか見つけました。私の場合、読んでいる本の半分以上は洋書なので、翻訳されていないものは渋々リストから外すことになりました。 そこで今回は、2016年2月現在、訳本が出版されていない洋書を 8 冊紹介します。前回と同様、Web やアプリに特化したものではなく、デジタルプロダクトに携わるデザイナーに向いている書籍です。いずれ翻訳される可能性があるので、そのときに備えてメモ程度に見ていくと良いかもしれません。 UI is Communication UI デザインは利用者体験を考える上で、ほんの一部でしかありませんが、視覚的に表現されることから体験に大きな影響を及ぼします。UI デザインから利用者のこと、体験のことを掘り下げていく際、この
Intro Chrome が予定している <link rel=stylesheet> の挙動の変更について、 Google Chrome チームの Jake が、興味深いブログを上げている。 The future of loading CSS この内容は、単に Chrome に対する変更だけではなく、 HTTP2 によって変化する最適化手法と、それを最も活かすための HTML, CSS の構成についてのヒントがある。 今回は、この内容を意訳+補足解説し、本サイトに適用していく。 HTTP/1.1 時代の CSS HTML 自体がコンポーネントを意識した作りになっている場合は、自然と CSS も class などを使いコンポーネント単位に作ることができるだろう。 しかし、 HTTP/1.1 では、リクエストの数を減らすために全ての CSS を 1 つ(もしくは少数個)に結合する最適化が主流だ
Linuxの場合は共有ライブラリso Linuxだと、共有ライブラリと呼ぶようです。拡張子は、soです。 下記ブログを参考にしました。 gccを用いたCの共有ライブラリの作り方 ライブラリのコードを書く。 簡単なライブラリコードを書きます。hello関数を実行すると、hello worldを出力するだけです #include int hello() { printf("hello world\n"); return 0; } Mac OSXの場合と同じライブラリのコードにしました。これを、dylibexample.cと名づけて保存します。 gccでsoにコンパイルする。 Linuxの場合は、-sharedオプションをつけてコンパイルすると、soファイルが作成できます。 $ gcc -shared -fPIC -o libdylibexample.so dylibexample.c $ ls
ゆとりなもので,ついこないだまで動的リンクと静的リンクの違いがわかっていなかった.動的リンクというのが理解できた頃,そっかユーティリティライブラリは自分で共有ライブラリ作ってしまえばいいんだ,というごく当たり前のことが理解できた. UNIXをさわりはじめていた初期の頃,mecab.soのシンボリックが〜〜という用なハマりがあったのだけれど,あれは要するに実行時に共有ファイルへのパスを指定してあげればよかっただけのこと. わかると当たり前だけれど,わからないと「何がわからないのかわからない」状態に落ち込むなぁ,と改めて思いました. (幸いなことに,僕の周りには「ゆとり乙ww」と指導してくれる方々がいるので認識できるようになるのですが,少なくとも大学(院)時代はそうでなかったわけで,ゆとりスパイラルの恐ろしさを体感した気がしています.) というわけで自分用共有ライブラリの作り方をきちんと理解で
CやC++で書かれたプログラムをMakeを使ってビルドする、というのはUnix/Linuxではよく行われていることだが、ちゃんとしたMakefileを書くのは意外と難しい。 例えば以下の3つのファイルからなるプログラムを考える。 foo.h: 関数fooの宣言がある。 foo.c: 関数fooの実装がある。 main.c: 関数fooを呼び出す。 /* foo.h */ void foo(int a); /* foo.c */ #include "foo.h" #include <stdio.h> void foo(int a){ printf("%d\n", a); } /* main.c */ #include "foo.h" int main(int argc, char **argv){ foo(10); return 0; } Makefileは例えば以下のように書ける。 PRO
オープンソースのコンパイルで失敗する原因のほとんどは、ライブラリorヘッダファイルが存在しない・ライブラリorヘッダファイルのパスが誤っているのいずれかになります。後者の場合自分でMakefileを修正しなくてはなりません。そこでgccのオプションに関する知識が必要になります。 デフォルトでのライブラリとヘッダファイルの読み込み 簡単なプログラムのコンパイルでも-vオプションを付けると、以下のように普段は見えない多くの自動的に付与されたパラータが見られます。ここかヘッダファイルとライブラリに関する情報を読み取ってみます。 [root@new-host code]# gcc -v test.c Using built-in specs. Target: x86_64-redhat-linux コンフィグオプション: ../configure --prefix=/usr --mandir=/u
金曜日の「プログラマのための数学勉強会@福岡」で乱数の話をしてきました。 プログラマのための数学勉強会@福岡 #3 - connpass で、乱数の生成だとか、クイックソートや素数判定などの乱択アルゴリズムの話とかをしました。 乱数タノシイヨ 乱数のたのしい話 from なおき きしだ その中で、遺伝アルゴリズムで巡回セールスマン問題(TSP)を解くというのをやってみました。遺伝アルゴリズム、すいぶん昔から名前は知ってて、どういうアルゴリズムかも知ってて、実装もそんな難しくないと知りつつ、書く機会がありませんでした。なので、この機会に書いてみようと。 とりあえず最初に完全にランダムでTSPを解いてみます。 TSP with random ぐちゃぐちゃですね。 下部のグラフはその時点での最短距離。最初に距離が短いものをみつけていくけどだんだんみつかりにくくなる、という感じになっています。 1
アプリ市場データと分析ツールを提供するApp Annie(アップアニー)は、2015年から2020年までの5年間の世界のアプリ市場に関する市場予測をまとめた「モバイルアプリ市場予測レポート」を発表した。これによると2015年から2016年の1年間で世界のモバイルアプリストアの収益総額は24%成長して509億ドルへと達し、2020年には1000億ドルを突破すると見込んでいる。特にアジア太平洋地域におけるアプリ収益は、中国市場の成長にけん引される形で、2020年までの5年間で2.5倍に成長し、575億ドルに達するという。 カテゴリー別の収益では依然としてゲームカテゴリーの割合が大きく、2015年には全アプリストア収益の85%以上を占めている。 今後もアプリストアの収益においてゲームが高いシェアを保つもが、非ゲーム系のカテゴリがシェアを増していくとApp Annieは予測している。 これは、音楽
人気順口コミ順(準備中) [[ (page - 1) * spot_page_size + 1 ]]〜[[ (page - 1) * spot_page_size + 15 < spot_search_results_count ? (page - 1) * spot_page_size + 15 : spot_search_results_count ]]件 ⁄ [[ spot_search_results_count ]]件 「[[ previous_location ]]」×「[[ previous_category ]]」×「[[ previous_scene ]]」 の条件に当てはまるスポットが見つからなかったため、「原宿」の検索結果を表示しています。
新日本観光地100選ってご存知ですか?それを公言している観光地があまりないのか、聞いたこともない方の方が多いかもしれません。新日本観光地100選には定番の観光地もありますが、隠れた名所や意外な場所があったりします。今回はその中でも、一度は行っておくべきとっておきの10選を選んでみました。 読売新聞社主催!「新日本観光地100選」 「新日本観光地100選」とは、1987年(昭和62年)に読売新聞社が行った読者による人気観光地の投票で、その投票数によって選ばれたもののことをいいます。 グループ旅行の4部門にて部門ごとに上位10位までを決める人気投票を行い、全ての部門で計100箇所のスポットを選び抜いたそうです。その中から、2016年に行くべきスポットはここ! 1.室蘭・地球岬(北海道) 「地球岬」は、北海道の絵鞆半島の最南端に突き出た岬です。その名前の通り「地球って本当に丸いんだ!」と実感で
登山のタオルには化学繊維のタオルをおすすめする理由 結論から書くと、登山のタオルには化学繊維が使用された機能性の生地のタオルをおすすめします。化学繊維のタオルが持つ機能とおすすめの理由をまとめました。 速乾性 登山のタオルに最も必要な機能は速乾性です。登山のアンダーウェアやインナー同様に速乾性が高いタオルを使用すると汗を拭き取るとすぐに乾いてくれるため、こまめに汗をふいても不快感が少ないです。逆にコットンのタオルを使用した場合、最初の肌触りは良いですが直射日光が当たる状態で干さない限りはすぐに乾いてくれることはありません。 出典:モンベル 上記のように、速乾性が高い化繊でできたモンベルのジオラインシリーズは綿と比較して3倍の速乾性があることがわかります。暑い日は水で濡らしてタオルマフラーのように首にかけると、蒸発熱効果で体温を下げるために使うこともできます。 吸水性・吸汗性 「吸水性・吸汗
UICollectionViewControllerとUIPageViewControllerでSmartNewsっぽいあのUIをお手軽に実現するiOSUIKitSwift イントロダクション 国内のメディア系サービスでは割とスタンダードとなっているあのUI。もはや何番煎じかわかりませんが、frame計算とかをしない軽量な実装を試してみます。 ニュース系アプリで利用されているUIの実装を調べることがあったのでまとめてみた - MonockLaBlog あのUIに関する記事やよく見かけるライブラリでは、メニュー要素・コンテンツ要素のframeをずらしながらUIScrollViewへ順に貼り付けていくやり方が多い印象を持っていますが、ここでは違う方法を取ろうと思います。 サードパーティのライブラリに依存することなく、かつViewのリソース管理やframe計算を出来るだけ抑えるため、今回はUIC
最近はやっとまともにDockerを使い始めたということもあり、基盤技術を追う必要性も強く感じてきました。Linuxカーネルのコンテナ技術周りのコードリーディングを再開しているのですが楽しいです。 環境 * CentOS 7.2 (kernel-3.10.0-327.4.5.el7.x86_64) * Ubuntu 14.04 (3.13.0-77-generic) 読んでいるのはほとんどnamespaceとcgroup周りですけれど、この2つは違う機能なのでごっちゃにして覚えないようにしたいところです。このエントリーではnamespaceについて、利用方法やカーネルの実装なども含めてメモしておきます。 namespace (名前空間) Linuxにおける namespace(名前空間) はプロセスに対して以下の6種類のリソースを分離するための機能として提供されています。 名前空間 定数 概
AWS の魅力は API を使ってインフラをコントロールできる点です。インフラだけでなく SQS や DynamoDB といったサービスも API で操作します。ほぼすべてのサービスに API が用意されているので、AWS を使いこなせば使いこなすほど API の利用頻度も上がります。 今回は AWS の API を利用するときに気をつけたいポイントをまとめてみました。 リトライ処理を入れる AWS に限ったことではありませんが、API リクエストはさまざまな理由で一時的に失敗する可能性があります。クライアント側のネットワークエラーの可能性もありますし、大量のリクエストを送ってサーバ側でスロットリングされているかもしれません。 なので、API リクエストは 一時的な失敗を前提 にリトライ処理を入れましょう(AWS SDK を利用しているのであればリトライ処理は自動的に行われます)。一度失敗
以前、メニューバーをトグルメニューと両立してレスポンシブスタイルにするカスタムを書きました。 www.yukihy.com トグルメニューは、ボタンを押すと上下にスライドするようなものでしたが、 現在このブログでやっているみたいに、横からのスライドにして、なおかつPC版では子メニューも設定できるようにしてみたいと思います! カスタマイズを行う際は、必ず以前のコードをメモ帳などにバックアップをとっておくようにしてください。 実装図 注意点 カスタマイズ CSS HTML&jQuery HTMLにリンクを入れる その他のカスタマイズ 色を変える グローバルメニューの横幅を変えたい グローバルメニューとトグルメニューの変えるタイミングを変えたい まとめ 実装図 完成図はこんな感じです。ブラウザのサイズが広いときには、子メニューまで出せれる一般的なグローバルメニューで、 ブラウザサイズが狭くなると
リブセンスさんの「人は一ヶ月でエンジニアになれるのか - 詳細解説」を読んでみてこれはかなりすごいなと感動しました。 あとはほかのWeb系の企業さんの研修に関する資料を読みつつ、どうすれば効率的にWeb開発の知識を習得できるのかなといろいろ考えてみたのでそのメモです! 🚌 リブセンスさんの教育に対する考え方 人は一ヶ月でエンジニアになれるのか - 詳細解説 学生時代に知っておきたかったWeb技術の学び方の学び方 Web開発における問題点 Web開発は領域それぞれが深い。ゴールがない 新しい技術が日々生まれたり、深い知識が要求されるため、学び続ける必要がある - (問題点) 知っておかないといけない知識が多い - git/javascript/css/ruby/CI/ミドルウェア の画像 - 要求される知識も深く、定期的なバージョアップが要求される - (問題点) メインストリームの技術の
ども、初老丸です。 tl;dr Linux において tc コマンド(Traffic Control)使ってネットワーク遅延やパケットロスを疑似的に発生させることが出来るとのこと。今まで tc コマンドの存在すら知らなかったペーペーで恐縮だが、参考サイトをまねて遅延やパケットロスを発生させてみたい。 メモ 参考 http://linux-biyori.sakura.ne.jp/setting/st_netem.php http://labs.gree.jp/blog/2014/10/11266/ man tc 以下の環境で試す。 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=14.04 DISTRIB_CODENAME=trusty DISTRIB_DESCRIPTION="Ubuntu 14.04.2 LTS" ひとまず
バレンタインのギフト選びに悩んでいる方へ。今年もオンラインショップ「OneMe」からおすすめのアイテムをルーミー編集部がセレクト。OneMeバイヤーの木村さんにその魅力を紹介してもらいました。 こんにちは。OneMeバイヤーの木村宏明です。 モノ選びに人一倍時間をかけるコダワリ派の彼は、持ち物も他人とかぶりたくないもの。たとえば彼がiPhoneユーザーなら、ケースも周りと差をつけたいはずです。 今回ルーミー読者のみなさんにご紹介するアイテムは、職人によるオールハンドメイドの「GROVEMADE」シリーズ。 インテリア好きはもちろん、洗練されたアイテムが好きな彼も喜ばせる、とっておきのアイテムです。それでは魅力と特徴を紹介していきましょう。 木とレザーの合わせ技が醸し出す高級感 「GROVEMADE」は、アメリカ・ポートランド発の雑貨ブランド。ほとんどすべてのアイテムに、クルミ材や竹などの木
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く