はてなキーワード: PostgreSQLとは
この程度でも600万は稼げるという夢を持つか、こんなのでもちょっと何かが違うだけで600万稼げるか否かが分かれてしまう業界に闇を感じるか、600万程度で何ドヤってるの?と思うかはご自由にどうぞ(外資系ってもっと稼げるの?)。
歳は30台前半。学部卒。BtoB向けのパッケージ製品の開発プロジェクトで、設計、コーディング、テストあたりを担当している。仕様について発注元との折衝もやっている。
業務で使う技術のうち、自分自身がそれなりに習得しているものだけを書く。プライベートでしか習得・使用していない技術は別。
以上。
PythonもgitもDockerもkubernetesもAnsibleもCIツールもAWSもGCPもRuby on Railsも知らなくてもなんとかなってしまっている。業務でこれらのスキルを要求されることは(今のところは)ないから。
楽でいいと思う一方、このままだと将来ヤバいとも思っている。いざ転職となったときに詰みそう。
でもいざとなったらググっていくらでも独学できるだろうとたかをくくっているので焦ってはいない。
というか「その他」のところに書いた能力が高ければ世の中大体はなんとかなるんじゃないの。知らんけど。
ちなみに自分は構築できないというだけで、プロジェクトではJenkinsとかgradleとかbabelだかwebpackだかでビルド環境は整えられている。
あとプライベートで、単純な仕様の独自言語のコンパイラフロントエンドをC++とLLVMで作っている(これで金が稼げるとは微塵も思っておらず、完全にただの趣味)。
時間 | 記事数 | 文字数 | 文字数平均 | 文字数中央値 |
---|---|---|---|---|
00 | 136 | 23396 | 172.0 | 38.5 |
01 | 60 | 7379 | 123.0 | 63.5 |
02 | 15 | 3267 | 217.8 | 57 |
03 | 9 | 3920 | 435.6 | 77 |
04 | 11 | 2211 | 201.0 | 41 |
05 | 6 | 2611 | 435.2 | 37.5 |
06 | 17 | 1777 | 104.5 | 44 |
07 | 22 | 2693 | 122.4 | 48 |
08 | 65 | 6612 | 101.7 | 38 |
09 | 91 | 9820 | 107.9 | 48 |
10 | 208 | 18526 | 89.1 | 38.5 |
11 | 174 | 15949 | 91.7 | 45.5 |
12 | 161 | 14850 | 92.2 | 38 |
13 | 106 | 17425 | 164.4 | 33 |
14 | 119 | 8583 | 72.1 | 40 |
15 | 160 | 12793 | 80.0 | 38 |
16 | 115 | 13576 | 118.1 | 41 |
17 | 130 | 14387 | 110.7 | 44.5 |
18 | 143 | 11829 | 82.7 | 37 |
19 | 96 | 13986 | 145.7 | 45 |
20 | 119 | 14844 | 124.7 | 36 |
21 | 162 | 16570 | 102.3 | 39 |
22 | 155 | 17593 | 113.5 | 37 |
23 | 157 | 47783 | 304.4 | 53 |
1日 | 2437 | 302380 | 124.1 | 41 |
日本学術会議(13), 学問の自由(5), 砂嵐(3), フェイルオーバー(3), ナスダック(3), 東証(22), ぐぎ(5), ベンダ(4), アイコラ(4), PostgreSQL(3), CIO(3), 滋賀県民(3), 長男(11), スパム(23), 子作り(10), 産め(8), post(14), 1%(8), 産ま(13), 再婚(6), 毒親(18), ユーチューバー(6), トランプ(19), 産む(14), 名誉(10), 学者(11), 京都(14), 弟(12), m(14), 子育て(20), 会議(15), 出産(19), 育て(22), 障害(23), 離婚(21), 育っ(15), 完璧(13), 土地(12)
■子供作るときどんな覚悟だった? /20201001170719(60), ■取り返しのつかない人間が職場に来た /20201002023509(30), ■滋賀県って可哀想だよな /20201002002113(28), ■ストレスが溜まると配偶者を虐めてしまう /20201001091449(11), ■俺は男だが(こう書いてもきっと女扱いされる)、増田の原住民は女に厳しい /20201002151539(10), ■日本人について(真剣な話) /20201001124407(10), ■東証システム障害と同時刻に発生したごく小規模な障害との戦い /20201002003926(9), ■東証障害について東証従業員の立場から /20201001221611(8), ■モテない4年間だった /20201001182448(8), ■そこそこ儲けてるイケメンにどう勝てばいいの? /20201002210238(6), ■嫁がありとあらゆるメニューに隙あらば餡を混入しようとする /20201002101427(6), ■世界はそれぞれにあって、それぞれの苦悩に声を上げればいい /20201002132507(6), ■ITエンジニアの東証CIO賛美がマジで気持ち悪すぎる /20201002175434(6), (タイトル不明) /20091002221208(6), ■anond:20201002103921 /20201002104059(5), ■anond:20201001170719 /20201002105043(5), ■ /20201002204549(5), ■同性の恋人がめちゃくちゃ可愛いのでノロケを聞いてほしい /20201002012613(5), ■自宅で首吊りできる場所は案外無い /20201002174148(5), ■29歳高卒フリーター、SESに就職することを決意 /20201002205304(5), ■深夜の増田良すぎる /20201002015239(5), ■セックスを茶化すな /20201002095024(5), ■ /20201002184044(5), ■はてブって左に偏りすぎじゃない? /20201002103727(5)
LotusScript
Firebase(Cloud Functions、Firestore、Storage、Hosting、PubSub)
React(ReduxやNativeは触ってない)
GCP(Cloud Functions)
ImageJ
AsciiDoc
サービスエンジニアという名の雑用やりながらしばらく独学で勉強した後、転職して社内SEという名の雑用してた
会社に出入りしてたベンダーの職場環境があまりに魅力的だったので雇って下さいと言ったら雇ってもらえて今に至る
今はあえて言うならWeb系のバックエンドという名の雑用をやってる
職場環境は確かに最高なんだけど、そろそろ地頭の悪さが露呈してクビになりそうで震えてる
400万
もともとMySQL系はライバルはPostgreSQL系だったはずなんだが・・・PostgreSQL,MariaDB,MySQL,Oracle,Microsoft か?いま。だとすると、こんなもんかという気はするが サーバ側はAmazon,GCP,Microsoft十分かもな
この板で言うと、PostgreSQLでもMySQLでもどっちでもいいのに、気にするコミュ障がいるといっておくと、察してもらえますよ
だれかpostgreSQLのアイコンで作ってくれないかな。
ご指摘ありがとう。PostgreSQLだと更新時のcurrent_timestampってトリガーでないと出来んかったわ。最新ver.はどうなんだろ?
今日、牛丼を食べながらふと気がついたのですが、もしかして我々の業界は異常なのではないでしょうか?
サービス名、技術名はスキあらば3文字って感じだし (AWS, EC2, EKS, GCP, GAE, GKE k8s, C2C, CPU, GPU, SPU...)
会社名もソフトウェア名も連想できるってものじゃないし (PostgreSQL, MySQL, Redis, etcd, Consul, HashiCorp, Vagrant, GitHub, CircleCI, FreeBSD, CentOS, Ubuntu, Linux, Couchbase, Hive, Hadoop, Vagrant...)
みんな普通にPOSIX互換なコマンドをペシペシしているし (cd, cp, mv, pwd, mkdir, ls, vi を更に謎の数文字のオプションも含めて覚えているわけで)
それも特に覚えようとして覚えてきたわけでもないじゃないですか。
気がついたら覚えているわけで、手に身についているわけで。まるでポケモン151匹を勝手に覚えてしまったあの頃と同じようなノリで謎の英単語や謎の羅列を身に着けてしまっている訳ですよ。
何ら疑問に感じてなかったんだけど、普通に好きじゃないとできないよね。
で、思ったんだけど、インターネット小話で聞く「全然興味はないけどSEになっちゃいました」みたいな人ってガチで苦痛なんじゃないだろうか…
(未だにそんな人を見たことが無いから都市伝説だと信じてるけど)
別に周りにそんな人が居るわけじゃないけど、新卒が入社してくる季節ってことでふと気になりました。
おしまい。
PostgreSQLは普通に使いながら覚えられるって言ってんじゃん。
MS SQLServerも「とりあえず動かしてみる」から始めることは不可能じゃない。
ユーザやグループの設定から始まり、どういう単位でデータベースを作り、どのユーザをどのデータベースの所有者にするか、ログファイルの種類とそれに基づくバックアップ計画がどうのとか、とにかく覚えることが多い上に複雑過ぎて、予備知識無しで触ることはまず不可能。
てか、たかがRDBMSにそんな大げさな仕組みが必要か?って話。
PostgreSQLのようにシンプルな仕組みが基礎にあって、そこから要件に応じて機能拡張できるような柔軟なソフトを知っちゃうと、こう意味もなく最初から色々お仕着せ状態なのはイライラでしかないし、すげーバカバカしく感じてしまう。
ぶっちゃけタルいのがすげー嫌。
Oracle DBの使い方を習得するのに、一番最初に用意すべきなのはパソコンでもサーバでもない。
その教科書で、まずはスキーマやインスタンスやアーカイブログやREDOログといった、Oracle DBの仕組みや概念を学習する。
次にそれが実際のサーバ上でどんな風に見えていて、どうオペレーションするか…というアプローチを取らないと、絶対に動かないようにできている。
あーもうすげーめんどくせー。
なんでこんなにもったいぶっていて、無駄に固いんだか。覚えにくいことこの上ない。
それに比べると、PostgreSQLはフリーソフトなのに本当によくできている。
無駄な前置きは一切なしで、実際にいじりながら覚えていけるのでハードルが超低い。
てか、こういうのでいいんだよこういうので。
そもそもOracleのような「教科書と授業」みたいな形式で覚えてくのって、ストレージやアプライアンスを扱うのも仕事のうちという構築や運用の人間ならともかく、プログラマにとっては全く水が合わない。
だってCOBOLやFortranが主流だった大昔ならいざしらず、開発の世界じゃそういうのはC言語が出た時点で時代遅れになってるから。
まじで勘弁してほしい。
128bitの乱数らしい。
ネットでたまに、数学的にどれだけぶつかる可能性が低くて安心して使えるかというのが解説されてるのを見るけど、肝心のUUIDの生成法を解説してる記事を見たことない。
PostgresqlなんかはUUID型みたいのがあるけど、自動では作ってくれないし。
まあ、いまどきの言語なら高性能らしい乱数生成ルーチンがあるから、それを使えばいいんだろうけど、問題はシード値だよな。
ゲームに使う乱数のシードなら、unix時刻+プロセスIDとか、環境依存の数字をいくつかひっぱってくる程度でOKだろうけどUUIDに使うにはユニークさが足らないよな。
OSによっては安全な乱数を取得する方法が提供されてるから、それを使えばいいけど、どのプラットフォームでも共通で使える方法がなさそう。
この類の乱数が絡むのって、けっこう落とし穴があって素人が自力でやるとバグったり安全性が低かったりするから、UUIDを生成する方法も提供してほしい。
もともとプログラミングのプの字も知らなかった自分が、自分なりに頑張って勉強して、独力で会社用のWebアプリを作るに至った
PostgreSQLサーバーをLAN上に立ち上げて、そこにどんどん溜まっていくデータをSQL使ってソートしたり結合したり集計してグラフ化するのがパズルみたいで楽しいと思った
で、これを仕事に出来れば最高だなと思って調べたんだけど
実務経験ってのは、やっぱDBAを本職としてないと厳しいよな
それでもなんとか足がかりを得るには、これからどういうキャリアを積んで行けばいいのかな
詳しい人、教えて下さい
New York Timesはシリコンバレーのヨーダというタイトルで「The Art of Computer Programming」の著者でTeXの開発者としても有名なドナルド・クヌース博士(80)の紹介記事に25ブクマ。
https://www.nytimes.com/2018/12/17/science/donald-knuth-computers-algorithms-programming.html
GuardianはGuardianの会社がmysql派生のMongo DBからPostgreSQLに乗り換えるという記事に20ブクマ。今年の3月に上げられた記事。
https://www.theguardian.com/info/2018/nov/30/bye-bye-mongo-hello-postgres
BBCはSlackがアメリカが経済制裁中の地域に行ってきた人をアカバンしているという記事に18ブクマ。
https://www.bbc.com/news/technology-46642760
もう1件ルワンダ虐殺から数十人の人を救ったZura Karuhimbiさんの訃報記事に6ブクマ。
https://www.bbc.com/news/world-africa-46618482
South China Morning Postはカール・マルクス生誕200年記念として中国で伝記アニメが作られておりビリビリ動画で予告編が配信されてるという記事に3ブクマ。中国政府肝いりで作られるという。
たとえばC#など.NET系のリファレンスはMSDNで読むことができる。
RubyだってHaskellだってScalaだって、公式サイトにガイドぐらい置いてある。
Oracle、DB2、MySQL、PostgreSQL、SQLite、AccessなどSQLが実装されたDBMSは様々にあるが、どれを取っても仕様が違う。
皆が標準SQLに従っていてその上で適当に増設している程度ならよいが、もはや誰も標準SQLに従う気が無い。
根幹的に必要な機能があったりなかったりするから、あるDBMSで書けるようになったからと言ってSQLを覚えたとは言えない。
これと上記1とのせいで、何かググった時に特定のDBMSでしか解決法にならないものが大量に出てくる。
最近のプログラミング言語は大抵、雑に書いたってコンパイラが適当に最適化してくれる。
同じ結果を生むような二つのコードは、よほど下手くそに書かない限りは同じような実行速度になる。
SQLもオプティマイザが最適化はするが、ほぼ同じような二つのコードで速度が全く変わったりする。
そのため実行計画というオプティマイザの中間言語のようなものを読んであげて、
より速い中間言語が生成されるようSQLをチューニングし直さなければならない。
これでは何をやっているのかわからない。
有名なサイトでは、初心者が必死で書いたような可愛らしいSQLを「それでは遅すぎるんじゃ」とけちょんけちょんにけなし、
なんかシンプルなのだけれどよくわからない文法を一杯使って実行速度を高めたのを「正解」としていたりする。
しかもその文法、ググってもろくな解説が無かったり、特定のDBMSに依存してたりと使えないオチ。
上手い人はSQLを綺麗に書く。だけど、その綺麗さの基準が人によって違う。
エディタが単なるメモ帳でしかないようなDBMSも多いから、インデントの文字数さえ個々人に任される。
インデントは2文字か4文字か。SELECTで改行するかしないか。カンマは列の後ろか、前か。
いろいろなサイトに色々なことが書いてあったけれど、全部違うこと言ってた。
つまり各々綺麗に書ければいいやということであり、読むほうも宗教が違ってもまあ綺麗なら読めるから困りはしない。
何かの解決法をググるたびに違うスタイルだからどう書いていいのかわからない。
結局なんかいろいろな上手い人のスタイルをツギハギした新たなスタイルが世に誕生してしまうのだ。
async えいしんく
nvidia いんびーでぃあ
postgreSQL ぽすとぐrしーくえる
or whatever
I've had enough of that kind of thing. It sucks.
まじな話をすると、N予備校のプログラミング入門コースやるのがオススメ。
一日8時間勉強時間があるなら、だいたい一ヶ月で終わる内容。
月額1000円だけどしっかり勉強すれば一ヶ月の無料期間中に終わると思う。
もともとN高等学校のノンプログラマーの生徒をWebエンジニアとして就職させるために作られたカリキュラムで講師曰く去年はこれで二人エンジニア就職を決めたらしい。
内容も相当親切に説明していて、プログラミングで何か作るだけじゃなくて、就職に必要な環境構築やセキュリティまでみっちりやる。
で講師が書いてる入門コースで習うことがまとめ。テキスト教材もあるけど授業も1項目を2時間で説明している。授業は週2の生放送とそのアーカイブがある。
↓みたいなことが学べる
----
Web ブラウザとは (Chrome, デベロッパーコンソール, alert)
はじめてのHTML (VSCode, HTML, Emmet)
さまざまなHTMLタグ (h, p, a, img, ul, tableタグ)
HTMLで作る自己紹介ページ (HTMLタグ組み合わせ, コンテンツ埋め込み)
はじめてのJavaScript (JS, ES6, エラー)
JavaScriptでの計算 (値, 算術演算子, 変数, 代入)
JavaScriptで論理を扱う (論理値, 論理積, 論理和, 否定, 比較演算子, if)
JavaScriptのループ (ループ, for)
JavaScriptのコレクション (コレクション, 配列, 添字, undefined)
JavaScriptの関数 (関数, 関数宣言, 引数, 戻り値, 関数呼び出し, 再帰)
JavaScriptのオブジェクト (オブジェクト, モデリング, プロパティ, 要件定義)
はじめてのCSS (CSS, セレクタ, background-color, border)
CSSを使ったプログラミング (transform, id, class)
Webページの企画とデザイン (企画, 要件定義, モックアップ, 16進数カラーコード)
診断機能の開発 (const, let, JSDoc, インタフェース, 正規表現, テストコード)
診断機能の組込み (div, 無名関数, アロー関数, ガード句, truthy, falsy)
ツイート機能の開発 (リバースエンジニアリング, URI, URL, URIエンコード)
LinuxというOS (VirtualBox, Vagrant, Ubuntuのインストール, OS, CUIの大切さ)
コンピューターの構成要素 (ノイマン型コンピューター, プロセス, lshw, man, ps, dfの使い方)
ファイル操作 (pwd, ls, cd, mkdir, rm, cp, mv, find, ホストマシンとの共有ディレクトリ)
標準出力 (標準入力、標準出力、標準エラー出力、パイプ、grep)
vi (vimtutor)
シェルプログラミング (シバン, echo, read, 変数, if)
通信とネットワーク (パケット, tcpdump, IPアドレス, TCP, ルーター, ping)
サーバーとクライアント (tmux, nc, telnet)
HTTP通信 (http, https, DNS, hostsファイル, ポートフォワーディング)
GitHubでウェブサイトの公開 (GitHub, リポジトリ, fork, commit, 情報モラル)
イシュー管理とWikiによるドキュメント作成 (Issues, Wiki)
GitとGitHubと連携 (git, ssh, clone, pull)
GitHubへのpush (init, add, status, インデックス, commit, push, tag)
Gitのブランチ (branch, checkout, merge, gh-pages)
Node.js (Node.js, nodebrew, Linux, REPL, コマンドライン引数, プルリク課題)
集計処理を行うプログラム (集計, 人口動態CSV, Stream, for-of, 連想配列Map, map関数)
アルゴリズムの改善 (アルゴリズム, フィボナッチ数列, 再帰, time, プロファイル, nodegrind, O記法, メモ化)
ライブラリ (ライブラリ, パッケージマネージャー, npm)
Slackのボット開発 (slack, mention, bot)
HubotとSlackアダプタ (hubot, yo)
モジュール化された処理 CRUD, オブジェクトライフサイクル, filter)
ボットインタフェースとの連携 (モジュールのつなぎ込み, trim, join)
同期I/Oと非同期I/O (同期I/O, 非同期I/O, ブロッキング)
例外処理 (try, catch, finally, throw)
HTTPサーバー (Web, TCPとUDP, Webサーバーの仕組み, Node.jsのイベントループ, リスナー)
HTTPのメソッド (メソッド, GET, POST, PUT, DELETE, CRUDとの対応)
HTMLのフォーム (フォームの仕組み, form, input)
HerokuでWebサービスを公開 (Webサービスの公開, heroku, dyno, toolbelt, login, create, logs)
認証で利用者を制限する (認証, Basic認証, Authorizationヘッダ, ステータスコード)
Cookie を使った秘密の匿名掲示板 (Cookie, Set-Cookie, expire)
UI、URI、モジュールの設計 (モジュール設計, フォームのメソッド制限, リダイレクト, 302)
フォームによる投稿機能の実装 (モジュール性, textarea, 303)
認証された投稿の一覧表示機能 (パスワードの平文管理の問題, 404, テンプレートのeach-in)
データベースへの保存機能の実装 (データベース, PostgreSQL, 主キー)
トラッキングCookieの実装 (トラッキング Cookie, IDの偽装, Cookie の削除)
削除機能の実装 (データベースを利用した削除処理, 認可, サーバーサイドでの認可)
管理者機能の実装 (Web サービスの管理責任, 管理者機能の重要性)
デザインの改善 (Bootstrap, レスポンシブデザイン, セキュリティの問題があるサイトを公開しない)
脆弱性 (脆弱性, 脆弱性で生まれる損失, 個人情報保護法, OS コマンド・インジェクション)
XSS脆弱性の対策 (XSS, 適切なエスケープ処理, リグレッション)
パスワードの脆弱性の対策(ハッシュ関数, メッセージダイジェスト, 不正アクセス禁止法, パスワードジェネレーター, 辞書攻撃)
セッション固定化攻撃脆弱性の対策 (セッション, セッション固定化攻撃, ハッシュ値による正当性チェック)
より強固なセッション管理 (推測しづらいセッション識別子, 秘密鍵)
安全なHerokuへの公開 (脆弱性に対する考え方, HTTPの廃止)
Webフレームワーク (Express.js, フレームワーク導入, 簡単なAPI, セキュリティアップデート, Cookie パーサー, ミドルウェア, 外部認証, ロガー)
ExpressのAPI (app, Properties, Request, Response, Router)
GitHubを使った外部認証 (Passport, OAuth)
テスティングフレームワーク (Mocha, レッド, グリーン, リファクタリング)
継続的インテグレーション (CircleCI)
クライアントのフレームワーク (Webpack, Chrome 以外のブラウザでもES6)
DOM操作のフレームワーク (jQuery, jQueryアニメーション, this)
AJAX (jQuery.ajax, クロスドメイン, 同一生成元ポリシー, x-requested-by, CORS)
WebSocket (WebSocket, WebSocketの状態遷移, Socket.io)
RDBとSQL (DDL, DCL, CREATE, DROP, INSERT, DELETE, UPDATE, WHERE)
テーブルの結合 (外部結合, 内部結合, 片側外部結合, JOIN ON)
インデックス (インデックス, 複合インデックス, Bツリー)
集計とソート (SUM, COUNT, ORDER BY, GROUP BY)
「予定調整くん」の設計 (要件定義、用語集、データモデル、URL設計、モジュール設計、MVC)
認証とRouterモジュールの実装 (Mocha, supertest, passport-stub, モックテスト)
予定とユーザーの保存 (セキュリティ要件, UUID, 複合主キー)
予定とユーザーの一覧の表示 (非同期処理, Promise, then)
出欠とコメントの表示 (入れ子の連想配列, Promise.all, 子どもからデータを消す)