This manual describes common security problems in web applications and how to avoid them with Rails. After reading this guide, you will know: All countermeasures that are highlighted. The concept of sessions in Rails, what to put in there and popular attack methods. How just visiting a site can be a security problem (with CSRF). What you have to pay attention to when working with files or providin
今まで紹介してきたiPhone開発Tips情報が大量になってきて、このままじゃわけわからんし、探しにくいことこの上ない!! ってことで、少し整理してみました。 アプリ開発入門アプリリリースリジェクト開発者インタビュー動画、サウンド画像処理カメラ開発関連書籍ネットワーク各種イベントアイコン環境、設定等フォント文字列日付関係オブジェクト保存等UIViewUITableViewUITextFieldUIWebViewUIPickerViewOpenGL各種コントロールローカライズSqlite新パーツ、クラスデバッグ関係メモリ・性能関係メモリリーク関係Adhoc・テスト ※以下のエントリー内容を包含しつつ整理してみました。 iPhone開発で役立ちそうなTipsの紹介iPhone開発向けTips追加分(20081110)iPhone開発向けTips追加分(20081125)iPhone開発向けTi
Welcome to the official MongoDB Documentation. Whether you're a developer, database administrator, or just starting your journey with MongoDB, our documentation provides you with the information and knowledge needed to build applications on MongoDB and the Atlas developer data platform. MongoDB Atlas → Run MongoDB on a multi-cloud developer data platform that accelerates and simplifies working wit
Why RabbitMQ?RabbitMQ is a reliable and mature messaging and streaming broker, which is easy to deploy on cloud environments, on-premises, and on your local machine. It is currently used by millions worldwide. InteroperableRabbitMQ supports several open standard protocols, including AMQP 1.0 and MQTT 5. There are multiple client libraries available, which can be used with your programming language
概要¶ これは Google Python Style Guide Revision 2.29 を日本語に訳したものです。 本家ガイドは CC-By 3.0 ライセンス の基で公開されています。また、本ガイドも同ライセンスを継承します。 本家ガイドの著者は以下の通りです。 Amit Patel Antoine Picard Eugene Jhong Jeremy Hylton Matt Smart Mike Shields また、本ガイドの翻訳者は以下の通りです。 Kosei Kitahara 本ガイドに誤植、誤訳があった場合は issue で教えてください。 その他本ガイドに関する問い合わせは、サイト最下部に記載のメールアドレスか @Surgo にお願いします。 はじめに¶ Python は Google で使われている主要なスクリプト言語です。 このスタイルガイドは Python によ
18 October 2006 — The "Fat Controller" anti-pattern is shown and dissected, and the reader is taken through the process of refactoring it into a more readable, maintainable, and testable solution — 5-minute read When first getting started with Rails, it is tempting to shove lots of logic in the view. I’ll admit that I was guilty of writing more than one template like the following during my Rails
正しい管理の四つの本質・適切な人材を雇用する。 ・その人材を適所にあてはめる。 ・人々の士気を保つ。 ・チームの結束を強め、維持する。 (それ以外のことは全部管理ごっこ) 安全と変更・変更は、あらゆるプロジェクトの成功のために(ほかの大抵の物事についても)必要不可欠である。 ・人は安全だとわからないと変更を受け入れない。安全が保証されていないと、リスクを避けようとする。 ・リスクを避けることは、それに伴う利益をも逃すことになるため、致命的である。 ・人は、面と向かって脅されたときはもちろん、自分に対して不当に権力が行使されるかもしれないと思ったときにも、安全ではないと感じるようになる。 負の強化・脅迫は、結果を上げさせる手段としては不完全である。 ・どれほど強い脅しをかけても、最初に割り当てた時間が足りなければ、やはり仕事は完成しない。 ・さらに悪いことに、目標を達成できなければ、脅迫の内
App Storeに登録できるiPhoneアプリを作るために iPhoneが登場して半年が経った。iPhoneの魅力は、デバイスとしての機能だけでなく、同時に登場したApp Storeにもあるだろう。日々新しいiPhone向けアプリケーションが登場し、その数は1万5000本を突破した。 iPhone向けアプリを作成してApp Storeに登録してみたい、と考える開発者は多くいるだろう。だが、開発に関する情報は、特に日本語のものは、絶望的に少ないのが現状だ。アプリ開発の最初の一歩の解説を行う書籍は、ようやく登場し始めた。だが、そこから先の、実際にユーザに使ってもらうためのアプリを作ろうとなると、もっと実践的な情報が欲しくなる。 そこで、具体的なiPhoneアプリの開発を解説する連載を始めたいと思う。この連載では、カメラアプリや、RSSリーダアプリといった、本当に使い物になるアプリを作りながら
psychopathより。 金言、格言は古今東西いろいろあるのだが、ここではプログラミングに関する格言がまとめられていたので、抜粋して翻訳してみる。翻訳に間違い等があった場合は、コメント等で指摘してください。 We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil 私たちは、時間の約97%を占めるわずかな効率に関しては忘れるべきである: 時期尚早な最適化は諸悪の根源だ。 - C. A. R. Hoare Walking on water and developing software from a specification are easy if both are frozen 水の上を歩くのと、仕様に基い
if ("0x0A" == "10") { print '(´ε` )チュッ'; } チュッ。されちゃいます。 文字列であっても整数と解釈できる文字列の場合は勝手に型変換しやがる今世紀最大の愚行を犯してしまうってのは有名な話だよね。 文字列であっても整数と解釈できる文字列の場合は自動的に整数に型変換してくれる超便利機能があるってのは有名な話だよね。 だけどなんでコレが一致するかわけがわからんかった。 0x0Aは10進数で10になるので一致する。と、言いたいところなんですがそう単純な話じゃないんだ。 以下の例を目ん玉見開いて見て欲しい。 var_dump(0x0A); var_dump("0x0A"); var_dump((int)"0x0A"); var_dump((float)"0x0A"); var_dump(intval("0x0A")); 実行結果 int(10) string(4
Arduinoオープンハードウエアセミナーというイベントに参加した。 chip1stopさんという、電子部品の通販をされている商社さんの主催で、司会はCerevoの和連和尚で、Cerevo社員の@booniesさんによるプレゼンテーションでした。 Arduinoというのは「あるでゅいーの」などと呼ぶ、マイコンボードです。イタリア製だそうです。 ハードウエアの設計自体がオープンソースで公開されているので、誰でもクローンを作ることができるそうです。 マイコンボードというのは、キーボードや液晶がついてないパソコンみたいなものです。 中身というか、裸の基板なので、なんだそれ?と思うでしょうが、これを箱に入れれば、携帯に見えたりパソコンに見えたり。 WindowsやMacのような高機能なOSは乗っておらず、専用のプログラムだけをインストールして動かします。ただプログラムが動くだけでは何もできないので
渋日記@shibu.jp 渋川よしきの日記です。ソフトウェア開発とか、ライフハックを中心に記事を書いていきます。 by chazmatazz 「構造のきれいなプログラムを書けるようになるためにはどうすればいいのか?」という質問を受けたので、「はて?どうしているだろうか?」と考えてみました。あ、形式知にきちんとなっているようなテクニックみたいなもんじゃなくて、モノローグなので、あまり凝ったものは期待しないように。あ、Pythonに限定してますが、他の言語でも似たようなものはあると思いますので、脳内変換をお願いします。 事前の設計はしません 「こういう処理が必要」「こういう計算しなきゃね」みたいなロジックや「要件はこうかな?」ということは事前に考えたりするけど、クラス構造とかは基本的に考えないで手をつけます。そして、ある程度規模が大きくなって「あ、ちょっとこの関数大きすぎて理解しにくいなぁ」と
プログラミングをコピー&ペーストで作ったものはスパゲティーになりやすい。コピー&ペースト自体には問題がなく、それを行うプログラマーのレベルに問題があるという話もあるが、大抵そうなる。 ソースコードを検索して類似ポイントを洗い出す コピー&ペーストに限らないが、修正などによって徐々に肥大化したソースコードは適切にリファクタリングしてやれば可読性が高まり、システムとしての寿命も延び、さらなる機能追加が素早くできるようになる。その手助けになるのがUniqueだ。 今回紹介するオープンソース・ソフトウェアはUnique、ソースコード類似ポイント検索ソフトウェアだ。 Uniqueは指定したファイルまたはディレクトリ以下にあるプログラミングソースについて検索を行い、類似ポイントをスコア評価してくれるソフトウェアだ。もちろんスコアの高い部分は似ていると思われる場所になるのでリファクタリングの対象になるだ
NSLog()、デバック中は便利なんですがリリースするものに入れたままだとセキュリティと速度の両面から良くないです。 このような場合には #define で置き換えで対応するのですがこの置き換えについて丁寧な解説がしてあるブログを見つけたので紹介。 The Evolution of a Replacement for NSLog | iPhone Development Blog http://iphoneincubator.com/blog/debugging/the-evolution-of-a-replacement-for-nslog 最終的にはこんな書き方になってます。 #define ALog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__); こんな記述が
タイトルは、まあ、半分釣り。TDDな人もそうでない人も、肩の力を抜いてお気楽にどうぞ。 本題に入る前に まずお礼 ここで書くことは、前の記事 TDDはYAGNIに矛盾する? - カタチづくり から派生して色んな方と意見を交わした経験が元になっています。この場を借りて、色々とアドバイスを頂いた方に心から感謝の意を表します。 特にコメント欄にお寄せいただいた きしだ さんのコメントは、コメントと言うよりももはや一つの素晴らしい記事となっていて、もう必読といってもいいレベルじゃないでしょうか。本当にありがとうございます。特にBDDについて大きなヒントを頂きました。 押し付けではなく、交換 タイトルから想像がつくとおり、ここにはどうしてもTDDに対して否定的な意見ばかりが並んでしまう。でも、だからといって僕がTDDを完全に否定しているとは思わないで欲しい。 僕が今一番恐れていることは、TDDに対し
オーディオプログラミング言語 ChucK を使って組んでみたサンプルプログラムの映像。 最初のプログラムは,1度,短3度,5度,短7度の音(つまりマイナーセブンスコードの構成音)からなるランダムなシーケンスを延々と鳴らし続けるもの。 二番目のプログラムは,構成音は最初のプログラムと同じだけど,ただランダムに鳴らし続けるのではなく,簡単な繰り返し構造を持たせるようにしたもの。最初のプログラムよりも,いくぶん音楽的な要素が加えられていると思う。 ChucK は,こういった類の実験を行うには非常に適した言語だと思う。上の二番目の例では,プログラムを動かしている最中に変更を加え(繰り返しの構成を変えてみている),それを「オン・ザ・フライ」で再実行している。同様のことは SuperCollider などでもできるけれど, ChucK は仕様の簡潔さと,統合環境 (miniAudicle) の手軽さが
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く