今仕事で使っているコードではJavaからCassandraとMySQLを動かしているが、その両方で使っているのがPreparedStatement。 これはどういうものかというと、あらかじめクエリのひな形を用意しておいて、実際に投げるときに値をバインドするというもの。 例えば…
Cassandraを障害時のバックアップとして使うにあたり、DELETE時の処理を考える過程で学んだこと。 DELETEしてもすぐには消えない CassandraのDELETEコマンドは、RDBMSとは異なりすぐに消えるものではない。 ある行をDELETEしても、その行のデータはディスク…
今の会社では、カスタマーサポートなど非エンジニアもイシューを上げられるようにしているが、彼らがバグとしてあげてきたイシューには、実は対応が不要なものも多く混じっている。 何から対応するか決めるときには、「バグ」と「仕様の問題」を混同しないよ…
前の記事で幅優先探索を実装したので、ついでにこちらも。 問題はAtCoder Typical Contest 001A。一応解説スライドはあるが、スタックを使った実装方法が書いてないので、自分でやってみることにした。 実装 from collections import deque def dfs(maze, vi…
アルゴリズムの勉強のために、幅優先探索を書いてみた。 使ったのはAtCoder Beginers Contest 007Cの問題。この頃はアルゴリズムがそのまま出題されてたようだ。 特殊事項として、この問題ではスタートからゴールまでは必ず行くことができる前提がある。さら…
manabiya.tech ふだん質問者としても回答者としてもお世話になっているteratailが主催の、初めての大規模カンファレンスです。 会場は秋葉原にある廃校になった中学校です。ふだん勉強会といえばIT企業でやるのが当たり前なので、なんか新鮮な感じがします。…
JVMでは並行処理を実現するために、スレッドを作ることができる。 並列処理を使わなくてもよい処理を書いていたが、せっかくなので公式ドキュメントを見ながらスレッドを作ってみた。 スレッドを作る方法 スレッドを作るには2つの方法がある。ひとつはThread…
Gitを覚えたての初心者が一番よくやらかすミスは、パスワードやAPIキーをハードコーディングしたものをリモートリポジトリにプッシュしてしまうことじゃないだろうか。 もちろん速やかにパスワードやキーの変更をすることは前提だが、問題は恥ずかしいコミッ…
最近Eclipse上でコードを実行した際によくわからない挙動が起きたが、先輩にデバッグツールの使い方を教えてもらって無事解決できた。 Eclipseに限らず、今までデバッグツールというものがよくわからなくてまともに使ったことがなかったのだが、今回使ってみ…
まだエンジニアになったばかりの頃になんとなくSublime Text3を使い始めたが、まだその全てを使いこなせていない自覚があった。 何のエディタを使うにせよ、その真の力を知らないでいるのはもったいない。 Sublime Text便利なショートカットコマンドはたくさ…
JSに関する記事をいろいろ見ていたら、アロー関数の理解が違っていることに気づいた。 efcl.info www.tsubasa-note.blog 「ES6ではfunctionをアロー関数で置き換えられるんだね!」という程度の理解だったが、どうもそうではないらしい。 上の記事とかぶって…
今まではPythonをメインに書いてきて、JavaScriptはそれっぽくすませてきただけなんだけど、 仕事で真正面から触れることになり、逃げるわけにいかなくなった。 関数定義でいろんなやり方がありすぎて混乱してきたので、一度まとめてみる。 function命令 fun…
supporterzcolab.com このイベントで初めてのLTをしてきました。 前の人のテーマもGoogle Homeというまさかの事態が起きましたが、スベることなく無事に終わりました。 会社で買ったGoogle Homeを使い、Dialogflowと組み合わせて会議室予約システムを作った…
supporterzcolab.com 紹介文の「会社にロックインされないために」というところに惹かれて参加しました。 自分自身、転職に興味があっても今すぐ転職はできないという感じなのですが、そういう人にこそ刺さるコンテンツでした。 ロックインされない自覚を持…
会社のソフトウェアがVue.jsによってリファクタリングされることになり、急に身につけなければいけないことになった。 まさか自分がVue.jsをやるなんて、先週までは考えもしてなかったんだが... 今公式ドキュメントを読み始めたところだけど、computedとmeth…
書くたびに調べることになるので、忘れないようにメモ。 親クラスと同じメソッドを子クラスでそのまま使うとき superなどで指定しなくても普通に使える。 class Animal: def __init__(self, legs): self.legs=legs def legnum(self): return "I have " + str…
最近MySQLを扱う業務をやってみたら、がぜん興味が出てきて、この機会にちゃんと勉強しようと思い立った。 今回は業務で少しはまった、空文字を絞込でうまくはじく書き方について。 空文字をはじきたい 例えば、コンバージョンポイントと会員IDというカラム…
10月に行われた技術書典3、行きましたか? 私も当日いろいろ本を買ったのですが、その中の一冊「オブジェクト指向言語解体新書」が、今年読んだ本の中で一二を争うレベルですばらしい内容だったので、感想を書き残しておきます。 ※技術書典から1ヶ月以上経っ…
忘れないうちにメモ書き。 Objective-CでiOSアプリを作っていて、presentViewControllerを使って画面遷移を実装しようとしていた。 StoryBoardにボタンを設置して、nextBtnという名前でコードと紐付け、処理を書いてRunするとエラーが。 this class is not k…
東京Node学園祭 昨日に引き続き、今日もNode学園祭です。 今日はハンズオン中心のセッションでした。 Authentication Tutorial with Auth0 auth0.com 認証プラットフォームを提供するAuth0社のセッションで、実際にAuth0を触ったりReactを使ってAPIを作って…
東京Node学園祭2017 この冬から会社でフロントエンド担当になる予定なので、どんな空気感なのか知りたいと思って参加しました。 一応TypeScriptやReactを触ったことはあるものの、業務でやったわけではないうえしばらくブランクがあるので、周りとのレベルの…
regexcrossword.com 名前のとおり、こういうやつ。 縦横に文字を入れていき、すべての行・列で正規表現が満たされるようにできれば正解。 正解した盤面を横に読んでいくと、文章になっている問題もある。 1マスだけの初級問題から、9✕9マスくらいの鬼問題ま…
Reactでイベントを作るとき、引数にeを渡す例がよくある。 例えば公式ドキュメントにもこんなコードが載ってる。 function ActionLink() { function handleClick(e) { e.preventDefault(); console.log('The link was clicked.'); } このeはSyntheticEventを…
自分が作ったHTMLのコードが、非エンジニア向けに配られるExcel資料に載せられることになった。そのExcelファイルを見ると、一つのセルの中にコードがそのままコピペされて入っていた。 Excelファイルを作った人が「これでいいか確認して」と言ってきたので…
うちのPython環境はVagrantで作ったゲストOSの中にある。 一方でエディタはSublime Text3を使っている。flake8で補完が効いてらくらく。 なので、ホストOSでSublime Text3を使って書いたファイルを、手間なくゲストOSにも同期させたいと思っていた。 Sublime…
型推論とは 最近TypeScriptを使って開発していたけれど、大きな勘違いをしていた。 強い型付けをする言語ということなので、変数を定義するときに毎回型を宣言しなければいけないと思っていたのだ。 例えばこんな感じ。 let x: number = 3; 人間から見れば、…
Reactで class のAttributeを出力しようとしたら、Visual Studio Codeが以下のようなエラーを返してきた。 [ts] Property 'class' does not exist on type 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'. 何かと思ったら、単にJSXで class が使えないというだけだっ</htmlattributes<htmldivelement>…
フロントエンド開発の業務に来月から入るので、今のうちにJavascriptを勉強中。 まだ何のライブラリも使えていない素のJavascriptですが、とりあえず何か作ろうと思い、サイコロスロットを作ってみました。 See the Pen Dice Roll Game by Udomomo (@Udomomo…