タグ

yukisaltoのブックマーク (2,045)

  • プログラマたる者、人に頼る前にこれぐらいはやっておきたい - Qiita

    はじめに 春ですね。 全国各地で数多の新人プログラマが生まれたことでしょう。 新人のうちはわからないことだらけですし、真っ当な労働環境でしたら先輩方が「わからないことがあったら何でも聞いてやー」と言ってくれます。 ですので、プログラムが謎のエラーメッセージを吐き出したりしたらすぐに質問したくなるかと思います。 しかし、個人的な見解ではプログラマのスキルが最も鍛えられるのは、わからないことを前にして自分なりに色々と調べて試行錯誤する時です。 多分、世の中の凄い人たちの中には身近に質問できる相手がいなくてひたすら自分で頑張った結果、超進化を遂げたという人も少なからずいるのではないかと... というわけで、人に頼る前に自分にできることをしっかりやることで同期に差をつけちゃいましょう! もちろん新人じゃなくても、「すぐに人に頼っちゃうなぁ、どげんかせんとなぁ」という方々にも参考にしていただけると幸

    プログラマたる者、人に頼る前にこれぐらいはやっておきたい - Qiita
  • 新人プログラマのうちに身に付けたい習慣、考え方(この半年で学んだことと反省) - Qiita

    新人プログラマのうちに身に付けたい習慣(この半年で学んだことと反省) はじめに 半年よりちょっと前に未経験からプログラマになりました。 プログラマと言っても、この約半年間はほとんど研修を受けさせていただいていた感じなので、偉そうなことは言えません。 しかし、この約半年で反省したことや学んだことを自戒の念も込めて、まとめました。 主体的に学ぼう 能動的に自ら学び、自走しましょう。 新しい技術を学ぶということは非常に楽しいことです。 すごい先輩方は大抵、新しい技術を身につけるためにその技術を学ぶことを「その技術を勉強した」というよりも、「その技術を使って遊んでみた」と表現している気がします。つまり、必要だからしょうがなく学ぶのではなく、半ば趣味として新しい技術で遊んでいたら、身についたーという感じでしょう。 教えてもらって学ぶという姿勢ではなく、自ら楽しいから学ぶ(=その技術で遊んでたら身につ

    新人プログラマのうちに身に付けたい習慣、考え方(この半年で学んだことと反省) - Qiita
  • [Oracle] Oracle DBのエラー

    Oracle DBで発生する様々なエラーについて紹介します。 ORA-00972 SQLクエリ中で、32byteより長いテーブル名や列名を指定すると、以下のエラーが発生する。 ORA-00972: 識別子が長すぎます。 英語環境だと以下。 ORA-00972: too long identifier 名前を32byte以下に変更する必要があります。 ORA-28000 ユーザ"root"でログインしようしたときに、以下のエラーが出る場合があります。 ORA-28000: the account is locked この場合、別のユーザでログインして、ユーザrootのロックを解除する必要があります。 $ sqlplus / as sysdba 解除するには、以下。 > alter user root account unlock; User altered. これでユーザrootでログインで

    yukisalto
    yukisalto 2017/04/12
  • SIについて私が思ったこと。そしてSIerにおけるモダン開発について : 小野和俊のブログ

    ひとことで言えば、「レビュー文化は良くない」ということになるだろうか。 Slack導入、そして同時期に開始した服装の自由化、バイモーダルという考え方の浸透、AIやブロックチェーンを活用したPOC等の取り組みによって、SIerとしてのセゾン情報システムズは、社内の雰囲気もずいぶんと変わってきた。 しかし、こうした取り組みだけではどうにもならないものも少なからずあった。 そのひとつは、「悪い報告がしづらい」ことだった。 これは他のSIerでも同様のことが多いのではないかと思うが、問題プロジェクトに認定されると、品質管理部のモニタリングが強化されたり、第三者によるプロジェクト監査が始まったり、経営会議での定期的な報告が求められたり、何をやっているのかとレビューでこっぴどく叩かれたり、、、。 そうした責任感から、遅れをキャッチアップできるよう少しでもがんばろう、と励まし合う中で、それなのに四方から

    SIについて私が思ったこと。そしてSIerにおけるモダン開発について : 小野和俊のブログ
    yukisalto
    yukisalto 2017/04/12
  • Rustのあれこれ - ワザノバ | wazanova

    https://air.mozilla.org/bay-area-rust-meetup-august-2014/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約3時間前 Bjorn Tiplingが各プログラミング言語を武器に例えた、"If programming languages were weapons" というエントリーが秀逸ですね。公平に、どの言語も褒めていないところがよいです。どれも面白いので全部眺めていただければと思いますが、その中でRustは、 "Rust is a 3D printed gun. It may work some day." と紹介されています。 とはいえ最近、 Rustに関する発信をよく見かけるようになったと思ったら、バージョン 1.0が近いのですね。"work some

    yukisalto
    yukisalto 2017/04/11
  • Rust 基礎文法最速マスター (rust 0.7 編) - gifnksmの雑多なメモ

    警告 (2014/1/25 追記) 以下の記事ですが、今となっては通用しない記述が多く含まれています。 0.7 から現在までに行われた大きな変更としては、思いつくだけでも 言語組み込み機能としての managed box が非推奨になった (将来削除され、ライブラリによる実装と置き換わる) rusti ツールが削除された というものがあります。 おそらく、文中のコード例はコンパイルすら通らなくなっていることでしょう。 また、今後も 1.0 に向け大きな変更が予定されています (DST や GC の実装など)。 文中の、言語の基的なコンセプトに関する部分はかろうじて現在でも通用すると思いますが、その他の部分についてはきちんとメンテナンスされている文章 (公式のドキュメントなど) を参照してください。 以下、オリジナルの記事です。 ブログ移転後の最初の記事っということで、最近僕がハマっている

    Rust 基礎文法最速マスター (rust 0.7 編) - gifnksmの雑多なメモ
  • rustメモ

    事項 hello world を3回表示する fn main() { for count in 0..3 { println!("{}. Hello World!", count); } } error handling n == 5の結果を返す関数の例 fn guess(n: i32) -> bool { if n < 1 || n > 10 { panic!("Invalid number: {}", n); } n == 5 } ループ loop, while, forの3種類 loop { println!("loop forever !") } whileの例 let mut x = 5; # オブジェクトはデフォルトでimmutableなのでmutをつける let mut done = false; while !done { x += x - 3; println!("{

    rustメモ
    yukisalto
    yukisalto 2017/04/11
  • Efficient data transfer through zero copy

    yukisalto
    yukisalto 2017/04/11
  • jstack でスレッドダンプを取る - にょきにょきブログ

    jstack というツールがある。このツールは、現在実行中の Java プロセスのスレッドの状態を取得出来るツールだ。 思ったように性能が出ない時やデッドロックっぽい現象が発生した際はこのツールを使ってスレッドの状態を取得、つまりスレッドダンプを得て、そこから解決の糸口を探す。 今回のサンプルコードは下記コード。 少し長いが、Thread1 と Thread2 クラスはほぼ同一だ。違うのは、リソースをロックする順序。Thread1 クラスは resource1, resource2 の順にロックするが、Thread2 クラスは resource2, resource1 の順にロックする。つまり、これら2つのクラスを同時に実行するとデッドロックを起こす。 public class DeadLockTest { public static Object resource1 = new Obje

    jstack でスレッドダンプを取る - にょきにょきブログ
    yukisalto
    yukisalto 2017/04/10
  • Rustを学びシステムレベル言語を理解すること - ワザノバ | wazanova

    https://www.youtube.com/watch?v=ySW6Yk_DerY Rustについては「Rustのあれこれ」で少し触れましたが、Yehuda Katzが、Skylightの一連のブログとGoGaRuCo2014の講演で、「ハイレベル言語のプログラマーがシステムレベルの言語を学ぶチャンス」という観点で紹介しています。 主なポイントとしては、 プログラミング言語の特性は変わることがないとか、プログラミング言語のパフォーマンスと生産性は常にトレードオフであるという考え方は、JavaScriptにおいて、生産性が少し改善されつつ同時にパフォーマンスが大きく向上してきたという事実から、必ずしも正しくはない。 Rustは、セグメンテーション違反が起きないという意味での安全性と、どこにメモリを置くか直接コントロールできる仕様を両方兼ね備える。 Rustを学ぶということは、ハイレベル言

  • ATOMでGolangの環境設定 - Qiita

    ずっと触っていなかったのですが、久しぶりに触ってみたらだいぶ変わっていたので内容を反映します。 必要なATOMパッケージは「go-plus」「godef」+依存パッケージとなります。 gocodeとの連携がサポートされていて補完が効くようになりました。 またgodefを入れることでCtrl+iで定義箇所へジャンプできるようになりました。 前提条件 $GOPATHは~/goに設定済みであるとします。 Golang自体はhomebrewにてインストール済みとします。 Golang側の必要コマンドのインストール ATOM側で必要としているGolang各種ツールをインストールします。 go get golang.org/x/tools/cmd/goimports go get github.com/nsf/gocode go get github.com/rogpeppe/godef brew i

    ATOMでGolangの環境設定 - Qiita
    yukisalto
    yukisalto 2017/04/09
  • Rust入門 #0 Macで開発環境構築 (2017/1/9時点) - Qiita

    ※1/9に以下の対応を追加。 メソッドジャンプをする対応方法をrustyを使う方法に変更。 cargo-editをインストールする方法を追記。 皆様、あけましておめでとうございます。 2017年、よろしくお願い致します。 今年の一発目のブログはRustの開発環境構築です。 Rust自体は前職の方からも名前だけは聞いていたのですが、以下のちょっとしたきっかけで入門してみようと思いました。 社内のIoTチャレンジ部で、ラズベリーパイで遊んでいた時に、省メモリでかつ関数型っぽく記述できると話題に上がったこと。 書評レビューア募集で、Android開発の書籍を頂いたけど、 そのサンプルを新しい言語で動かしてみたいなと思ってみたこと。 王様達のバイキングの11巻で、ValkyrjaというクラッカーがScalaRustでプログラム書いていたという話が出てきたこと。(←これが一番の理由w) また、20

    Rust入門 #0 Macで開発環境構築 (2017/1/9時点) - Qiita
    yukisalto
    yukisalto 2017/04/08
  • 社会人10年目から始める競技プログラミングのすすめ - kuuso1のブログ

    これは、Competitive Programming Advent Calendar 2014の17日目の記事です。 競技プログラミングという世界を知って1年がたちました。結構飽きやすい性格の自分が1年ほどコンスタントに参加するという充実したプロコン(プログラミングコンテスト)ライフを送ることができた記念に、これからプロコンに参加してみようという方向けの記事を書かせていただきます。CPAC2014参加諸氏のような技術的に高度な内容は残念ながらなさそうですが(書けるものなら書きたい)、10年目エンジニア的視点で自分が感じたことを踏まえて「これはいいものだ」と思えたところなどを中心に振り返ることで、なんとかタイトル詐欺を回避したいと思います。中盤はお目汚し感が強いかも。。 経緯や参加したプロコンなど 半導体関連のメーカーで開発の仕事に従事していますが、2012年に職場都合で富山県に引っ越すこ

    yukisalto
    yukisalto 2017/04/08
  • Gitのつくりかた | メルカリエンジニアリング

    はじめまして。サーバサイドエンジニアの @DQNEO です。 今日はGitのつくりかたをご紹介します。 C言語学習教材としてのGit Gitと同じものをゼロから作って何の意味があるのか?と思いますよね。 私がこの再発明をやり始めた動機は「C言語を書けるようになりたい」でした。 実際に途中までやってみたところ、 C言語がチョットデキるようになった Gitの内部構造に詳しくなった というメリットが得られました。 C言語を勉強する題材は、テトリスとかWebサーバとか他にいくらでもあるのですが、Gitを実装してみるのはかなりおすすめです。理由は下記の通りです。 内部構造が意外と単純 (ローカルで動かす分には)ネットワークの知識が不要 普段使っているツールで外部仕様がわかっているので、やるべきことが明確 余談ですが、家Gitのソースコードを参考にしようと思って読んでいたら、Linus Tovals

    Gitのつくりかた | メルカリエンジニアリング
  • プログラミング言語Rust

    注意: 最新版のドキュメントをご覧ください。この第1版ドキュメントは古くなっており、最新情報が反映されていません。リンク先のドキュメントが現在の Rust の最新のドキュメントです。 プログラミング言語Rust ようこそ!このはプログラミング言語Rustの教材です。Rustは安全性、速度、並行性の3つのゴールにフォーカスしたシステムプログラミング言語です。 ガーベジコレクタなしにこれらのゴールを実現していて、他の言語への埋め込み、要求された空間や時間内での動作、 デバイスドライバやオペレーティングシステムのような低レベルなコードなど他の言語が苦手とする多数のユースケースを得意とします。 全てのデータ競合を排除しつつも実行時オーバーヘッドのないコンパイル時の安全性検査を多数持ち、これらの領域をターゲットに置く既存の言語を改善します。 Rustは高級言語のような抽象化も含めた「ゼロコスト抽象

    yukisalto
    yukisalto 2017/04/06
  • さあ、並列プログラミングをはじめよう - Qiita

    この記事はJava Advent Calendar 2016の12日目です。 前日は、leak4mk0さんのデータベースを簡単にーJavaSEでもオブジェクト指向データベース(JPA) でした。 次は、tkxlabさんのJavaSEでもオブジェクト指向データベース(JPA)をとなります。 はじめに 「フリーランチの終焉」と言われマルチコアの時代に突入してはや数年。 Webアプリを作る事が多かったのも理由ですが、ほとんどシングルスレッド(サーブレッドとかでマルチスレッドを意識するケースはあるけど)で開発してた私にも、今年は並列プログラミングの波が押し寄せてきました。 そんなわけで今年のアドベントカレンダーは並列プログラミング入門に関してまとめてみます。 Java 8標準の並列API Javaは当初よりマルチスレッドプログラミングを喧伝してただけあって、それなりに並列プログラミングがやりやすい

    さあ、並列プログラミングをはじめよう - Qiita
    yukisalto
    yukisalto 2017/04/06
  • PHP5.4とScalaのトレイト比較 - なんたらノート第三期ベータ

    PHP5.4にはトレイトという文法が導入されて、多重継承の便利さが享受できるようになるそうです。 いろいろ試してみることにしました。 トレイトといえば代表選手はScalaですね。Scalaでいうトレイトは、インターフェースの定義とメソッドの実装を同時にやってくれる便利な概念でした。単一継承のOOP言語では「〜は〜の一種」という制約が強すぎて、「ペンギンは鳥の飛行メソッドによって飛行できてしまう」という問題があります。でもちゃんと「ペンギンは飛べないが泳げる鳥」を綺麗に解決する必要はあって、その解答として、トレイトのあるScalaではこんな解が導けます。 abstract class Animal abstract class Bird extends Animal { def hasBeak = true // 鳥にはかならずクチバシがある def hasWings = true // 翼

    PHP5.4とScalaのトレイト比較 - なんたらノート第三期ベータ
    yukisalto
    yukisalto 2017/04/06
  • 【使い方を究める】Webデザインにおけるアニメーション使用の基本的な考え方|SeleQt【セレキュト】

    機能的かつ楽しいアニメーションは、現在のWebデザインにおいて欠かすことのできな部品となっています。 ご存知の通り、アニメーションを使えば、ユーザを誘導したり、ユーザが自分のアクションの結果を目で見ることができるようにすることができ、またそのようにしてユーザの振る舞いに影響を与えることができるのです。 記事では、このようにWebエクスペリエンスを向上させてくれるアニメーションの使用についての、基となる考え方をまとめてみました。 進行状況の表示 ・ローディングアニメーション アニメーションを使ってユーザにローディング時間を意識させないようにするのは、よくある使い方ですね。なるべくシンプルなもので、見ていて楽しいものを用意してみてください。 ・プログレスアニメーション ローディングバーなどが代表的な例ですが、このように複数のステップに分けたものも面白いですね。 ・スケルトンスクリーン 空白

    【使い方を究める】Webデザインにおけるアニメーション使用の基本的な考え方|SeleQt【セレキュト】
    yukisalto
    yukisalto 2017/04/05
    “スケルトンスクリーン”
  • Javascriptでよく使う処理をスニペットにしてみた - Qiita

    SnippetsLabにいつも使う関数まとめるついでにQiitaにもメモっとく。 汎用関数 Htmlタグを除去 /** * Htmlタグを除去 * @param {string} str Htmlタグが含まれた文字列(<h1>サンプル文字列</h1>) * @returns {string} Htmlタグ除去された文字列(サンプル文字列) */ const removeHtmlTag = function (str) { return String(str).replace(/<("[^"]*"|'[^']*'|[^'">])*>/g, ''); }; /** * URLをパースしてGET値のオブジェクトにする * @returns {{}} GET値のオブジェクトです。 */ const purseQuery = function () { const result = {}; cons

    Javascriptでよく使う処理をスニペットにしてみた - Qiita
    yukisalto
    yukisalto 2017/04/05
  • Hayato.io

    Hayato.io This Page Is Under Construction - Coming Soon! Why am I seeing this 'Under Construction' page? Related Searches: Health Insurance find a tutor Top 10 Luxury Cars High Speed Internet fashion trends Trademark Free Notice Review our Privacy Policy Service Agreement Legal Notice Privacy Policy|Cookie settings|Do Not Sell or Share My Personal Information

    yukisalto
    yukisalto 2017/04/05