はてなキーワード: MySQLとは
ベンダーロックインとは、特定のベンダーの製品を使うことにより、その仕様に合致した周辺環境やコードを設定してしまい、移行が困難になるような現象だ
最近、BigQueryを使うことによってこのベンダーロックインにぶち当たった
「使うにはコストと制限があるから、やっぱ自鯖にしよう」となったわけである
BigQuery特有の機能を別の環境に移行するには大幅な変更が必要になる
ベンダーロックインの臭いを嗅ぎ取ったら早めに判断し、避けた方が良い
もし後から「やっぱこれ使いたくない」と言ってすでに依存状態にあるシステムから移行しなければならない場合は、
BigQueryであれば何らかのNoSQLを使うか、スキーマを無理やり抽出してmysql等に変換する方法もあるだろう
そのようなことを自動的に行う有料のサービスも存在するかもしれないが、新たなベンダーロックインとならないよう、注意深く仕様を見た方が良い
でもPHPが分かるだけじゃ仕事にはならないよ、SQL(少なくともMySQLとPostgreSQLどっちか)も知らないといけないし、最低限のサーバーのセットアップも出来ないといけないよ。
そのほかにミドルウェアとしてApache+mod_php or nginx+php-fpmの知識も必要だね。
他にもメールとかキャッシュの知識も必要かな、Linux系OS(CentOSかUbuntuが多いよ)の使い方も知っているといいよ。
でもこれらが出来れば世界中に蔓延してしまったPHPで構築されたシステムのメンテナンスという仕事のお陰で食い扶持は困らないよ。
覚えることが沢山だね、でも覚えてしまえば商業的に成功してしまったPHPシステムが数多くあるおかげで仕事には困らないから頑張ってね。
LOAD DATA INFILEでCSVを分割して読み込むことは可能なのでしょうか。そのときautoincrementのidがあった場合はどうしたらよろしいでしょうか。
はい、LOAD DATA INFILEステートメントを使用してCSVファイルを分割して読み込むことは可能です。CSVファイルを分割するには、LOAD DATA INFILEステートメントのファイル名の部分にワイルドカードを使用することができます。
以下は、例としてMySQLデータベースでのLOAD DATA INFILEステートメントの使用方法です。
LOAD DATA INFILE 'path/to/files/file*.csv' INTO TABLE your_table FIELDS TERMINATED BY ',' LINES TERMINATED BY '92;n' (col1, col2, col3); -- 列のリスト
上記の例では、path/to/files/ディレクトリ内のfile*.csvというパターンに一致するすべてのCSVファイルが読み込まれます。また、FIELDS TERMINATED BY句とLINES TERMINATED BY句を使用して、フィールドと行の区切り文字を指定しています。さらに、col1, col2, col3のように列のリストを指定することで、CSVファイルの対応する列とテーブルの列をマッピングします。
autoincrementのidがある場合、LOAD DATA INFILEステートメントでは自動的に次の値を生成することはできません。そのため、CSVファイル内に明示的にid列が存在する場合は、id列を指定して読み込む必要があります。id列がCSVファイルに存在しない場合は、テーブルの定義でid列をautoincrementに設定しておく必要があります。その場合、データベースが自動的に新しい値を生成します。
CREATE TABLE your_table ( id INT AUTO_INCREMENT PRIMARY KEY, col1 VARCHAR(50), col2 VARCHAR(50), col3 VARCHAR(50) );
この場合、LOAD DATA INFILEステートメントでid列を省略することで、自動的に新しい値が生成されます。
LOAD DATA INFILE 'path/to/files/file*.csv' INTO TABLE your_table FIELDS TERMINATED BY ',' LINES TERMINATED BY '92;n' (col1, col2, col3);
このようにして、CSVファイルのデータを分割して読み込むことができます。ただし、autoincrementのid列は明示的に指定するか、データベースによって自動的に生成されるようにテーブルを設定する必要があります。
SETしないと動かない。
分割するとauto incrementの値が飛ぶ。
とある弁護士がデータベース等を使ってないみたいな言い訳をしているようなので。
詭弁と表現したのは今日データベースと表現されると一般的にはリレーショナルデータベースシステムや階層型データベースシステムを指すが、データベースという語義を原意的に広く解釈するとNT File SystemやApple File System、Extended File Systemなどのファイルシステムもデータベースシステムの一種として捉えることが可能ではある。
可能ではあるとするのは前述の通り、今日の情報技術者等の一般的な認識ではMySQLやMariaDB、NoSQLなどのデータベースシステムと解釈され、ファイルシステムとデータベースシステムは別概念として捉えることが常識的な判断であり感性なのだ。
ただ、現代社会でデータベースシステムを一切利用せずに取引するのはおおよそ不可能であることはデータベースシステムを熟知している者であればあるほど痛感するものであり、詭弁として挙げた通りにデータベースシステムという語義を途方もなく広く解釈するとファイルシステムもデータベースシステムなので、高度な汎用計算機たるコンピュータやスマートフォンを活用してしまうと我々、そして件の弁護士はデータベースシステムを利用していると言わざる得ないのだ。
ちなみにEメールクライアントやマルチメディアソフトのiTunesなどへデータの送受信や読み書きするだけでデータベースと相当されるものが生成される。Appleなどは情報技術者界隈でデータベースシステムを一新したがることへ悪い意味での定評があり、一般的なユーザーであってもiTunesのライブラリが壊れるなどと言った経験があるだろう。
筆者は法律の専門家ではないためシステムが自動的に生成するデータベースはユーザーが故意に作ったデータベースではないためユーザーがデータベース等を利用していないとする主張が妥当なのかどうなのか判定できない。
付け加えるなら筆者の学んだことや経験などを考慮すると、他者からファイルシステムもデータベースシステムの一種と主張されれば、100歩譲って言わんとすることは理解できるものの違和感が拭えなくファイルシステムとデータベースシステムは違うだろと言い返したくなる。そういう意味で詭弁なのだ。
シェアウェア(という表現はおいておいてのやつ。https://anond.hatelabo.jp/20230124045812)の記事が面白かったので、自分の得意分野の領域でいろいろ紹介します。
基本的に、SaaSのサービスは便利だけど、あれもこれもと契約していったらサブスク破産するので、
もともとownCloudっていうDropbox代替があったんだけど、そこから分派して今も機能開発が続いている。
興味深いのはLAMP構成なので、VPSや自宅サーバーじゃなくても、レンサバで動くのがいいよね。
データ保存領域はオブジェクトストレージ(S3互換)も利用できるので、例えばWasabiなんかと契約してお安く済ませてしまうのも全然アリかと。
最近はカンバンシステムって、単体で使うんじゃなくていろんなアプリの中で使われる印象なので、今更Trelloだけ使いたい、なんてニーズはないかもだけど、
そこまで複雑でなく小規模なプロジェクトとかだと、意外とTrelloだけでいいよね、みたいなこともあるかな。
そういう時は、これを使うといいかも。
ちょっとUIの雰囲気が違うだけで、まんまSlackです。絵文字の追加もできるし、APIもあるし。人によって好き嫌い分かれるスレッド機能も、まあ、あのスレッド機能のまま。
n8nと書いてnodemationと読ませるらしい。初見殺しすぎんだろ。
ZapierやIFTTT、無料枠あるけど、あれもこれもやり出すとすぐ無料枠埋まっちゃうので、これ結構いいと思うんだけどな。
kintone使ってる会社増えてると思うんだけど、まだまだ1ユーザー1500円ってのは高いので、零細企業は導入し辛いと思う。
で、それの代替になるのがExment。UIがkintoneとは少し違うので代替と言い切れないかもしれないが、
やれることはkintoneのソレと全く同じなので、用途代替はできる。
開発も日本企業なので、UIも日本語化されている。LAMP構成なので、レンサバでも動くよ!
そもそもAirtableって何やねんって人もいるかもしれないけど、kintoneとGoogleスプレッドシートをいいとこ取りして、Trelloとガントチャートを足した感じ。
これもまあまあいい感じでZoom再現してます。Zoomの方が新機能の追加早いけど、Jitsiも頑張って追いついている感じです。
ただ、やる内容が複数人でのリアルタイム動画配信なので、サーバースペック・回線スペックはまあまあ必要なので要注意。
こちらは使ったことないんだけど、よりオンライン授業向けらしい。
最近よく見かけるようになった、オンラインミーティングとかの予定をブッキングさせるSaaS。
あれのはしりがCalendlyで、日本でもいくつかそれのSaaSができてますね。
あれらも無料枠だと1カレンダーだけしかできなかったりするんだけど、これなら好きなだけブッキングさせられます。
ECサイトとか、Webマーケティングを重視してるサイトによくある、画面右下に吹き出しアイコンがあって、チャットウインドウがぴょこっと出てくるやつ。
日本ではWeb接客とか言われてるけど、あれの代表的なSaaSがIntercom。Zendeskは、どちらかというと内部ツール向きかな。
これのOSS版がChatwootとPapercups。自社サイトにWeb接客入れたいけど、費用抑えたい、って時にどうぞ。
この手のツールがないと仕事にならないという人も多いと思います。
これまでだとRedmineがそれのOSS版的立ち位置でしたが、さすがにイマドキあのUIはないなぁ、と。
OpenProjectは、Microsoft Projectの代替をイメージしてるみたいですが、
ガントチャートにカンバンがデフォルトで使えるので、BacklogやAsanaの代替にはちょうど良いでしょう。
ただ、そんな高度なことしてるわけではないのに、サーバーの要求スペックはちょっと高めなのでご注意を。
UA廃止でGA離れが始まってるとも聞きますが、疎開先として有名。
PHPで動くので、PHPやWordPressでできたサイトに一緒に入れちゃってもいいと思う。
HeadlessCMSは、データ表示を持たず、フロントエンドへAPIを通じてデータを渡すタイプのCMSのこと。
このジャンルでは、SaaSだとContentfulが有名だけど、OSSでもいろいろある。
Node.js製。歴史があるので、結構いろんなことができる。
WordPressのGutenbergエディターを取り込んだプラグインなんかもある。
User認証も持ってるので、CGM的なサイトを作ろうと思ったらできなくもない。
これもNode.js製。利用できるDBが幅広く、既存のデータベースも活用できる。
なので、既にPostgresSQLとかでデータを持ってるんだけど、
非エンジニアにもデータを触らせるためのフロントエンドが欲しい、ってニーズに良いかも。
PHP製。SQLiteとMongoDBで利用可能。MySQL/PostgreSQL使えないのがちょっと残念。
近年、本腰入れて自社ECサイトをやろうと思うと必ず選択肢に上がるShopify。
インテグレートパートナー向けのエコシステムも充実してるので、取り組み始めるエンジニアやシステム会社も多い。
ヘッドレスコマースや越境ECには向いているものの、これをセルフホストしたい、というニーズに応えたのがmedusa.js。
ざっと見てみただけだけど、モダンな構成で、今時のフロントとバックエンドを分けた構成でやりたい、というのには向いている。
プラグインにmedusa-marketplace.jsというのもあり、Amazon的なマーケットプレイスも実現可能。
昨年、Adobeに買収され、デザイナーたちを驚愕させたFigma。
先日はAdobe XDが終了のお知らせとなり、UIデザイナーたちの不安は募るばかり。
そんな提供企業に振り回されたくないなら、このPenpotでUIデザインしよう。
Figmaほど機能実装はされていないが、まあまあ一通りのことはできる。
Figma代が嵩むとお嘆きの制作会社なんかは、一考の余地あるんじゃなかろうか。
企業によっては、コンタクトフォームをたくさん作りたいという会社もある。
人材採用のフォームを職種別に細かく分けたい(しかも頻繁に募集職種が変わるとか)
Google Formで大体解決しそうだけど、それをGoogleに頼りたくないならこちら。
まあまあ機能豊富なので、人によってはGoogleFormよりもこちらを好むかも。
DockerベースのWebメールUI。送受信に必要なものを、丸っとDockerで用意してくれているので便利。
HubSpotは、いわゆるMarketing AutomationとCRMを一体にしたツール。無料枠もあるが、かなり限定されている。
MauticはMarketing Automationよりの機能が多く、ユーザーのサイト上での回遊をビジュアル化してくれたりする。
SuiteCRMはザ・CRMという感じ。SalesForceをデフォルトで使う感じに近い。
ツールが分かれてしまうのは辛いところだけど、それぞれにAPIがあるので、うまく繋げられると強力なツールになってくれるはず。
Webサービス作ってると、メールの通知や一斉配信などがあると思う。
通常これらはSendGridや、AWS SESなどで処理すると思うが、これらにもOSS代替がある。
PostalはDockerでメール周りのもの全部用意してくれているので、かなり楽。
WordPressをモダンにしたような感じで、EC機能もデフォルトでついてる。マルチサイトも標準。
Jimdo/Wix代替と書いたが、もちろん自分のサイトをMicroweberで作ってもいいが、
自前ホスティングして、JimdoやWixのようなサービスを始めることもできる。
テンプレートをいくつか作っておいて、Stripeを仕込んでおけば、今日からあなたもJimdo/Wixのような事業を始められるわけだ。
JImdo/WixとSTUDIO/Webflowは一緒くたに語られがちだが、明確な違いがある。
前者はプリディファインドなブロックをGUIで構成するのに対し、後者はDOM要素ベースで構築していく。
つまりよりHTML/CSSによる細かなデザインコントロールがしやすく、Webデザイナーが親しみやすい。
それのOSS版がWebstudio。まだアルファ版だが、フロントエンドはそれなりによくできているので、
バックエンドを自前で用意してStripeを仕込んでおけば、今日からあなたも(以下略
Facebookなんか使わねーよ、っていう人も多いかもしれないが、
特定のコミュニティの中でコミュニケーション取るには、FacebookのUIと機能は優れていると思う。
なので、サークルとか同窓会、あと自治会とかPTAなんかにもいいんじゃないだろうか。
Netflixの代替って、Amazon Primeとかじゃねーの、と思われるのかもしれないが、そうではなくて、
あなたがNetflixみたいな商売したいならこれを使うといいよ、というのがJellyfin。
いや、そんな商売しないよ、と思うかもしれないが、
使いようによっては、おじいちゃんおばあちゃん向けの子供動画配信サービスとして構築するとか、
Stripeと連携して、劇団やバンドのオリジナルの配信サイトを構築するなんかも面白いと思う。
今更誰もYouTubeやVimeoの後追いをしようとはしないでしょうが、
複数のユーザーから動画のアップを受け付けて、それを閲覧したい用途もあると思う。
例えば、軽音部で複数のバンドが練習風景を録画したのを定期的にアップしたりとか。
学習塾で、授業の録画を授業ごとにアップしていったりとか。
ZoomやGoogle Meetのような双方向ではなく、一対多の一方通行配信。
個人的には、企業のウェビナーツールとしての可能性を感じる。(Zoomのウェビナープランとか高いもん)
1つのメールアドレスを複数人で運用したい時のツールがメールワイズとRe:lationどちらも日本のSaaS。
FreeScoutはOSSだけど、海外製。一応日本語化もされてるっぽい。
ECサイトの顧客問い合わせや、営業チームのプライマリー対応なんかに良いと思う。
Bubbleってなんぞ? という人のためにお伝えしておくと、ノーコードベースのWebアプリ開発ツール。
データエンティティを設計したら、自動的にCRUDを作ってくれて、フォームを配置するというような感じ。
Bubbleはそれ系の老舗で、歴史が長い分ノウハウも溜まっており、連携できるサービスも多い。
ただ、ベンダーロックインされるし、季節的なキャンペーンとかでは、アプリを使用しない期間もサブスク費用がかかる。
Budibaseは、Bubbleの思想に一番近い感じ。凝ったUIが必要なければ、ざっくりコレでなんでも作れちゃう。
AppSmithも同じような感じだが、これはDBをあらかじめスキーマ定義しておかないといけないところが若干不便かな。
ToolJetはルーティングURLの概念がなく、本格使用を諦めたんだけど、最近アップデートしたらしいので、そこのところどうなってるかまた確認しときたい。
他にもこの手のやつあったら、いろいろ教えて欲しい。単純に好きなので。
全体的に、線で結ばれているものが親子関係なのか包含関係なのかただ近い領域のものなのか曖昧なので意味のあるグラフというよりはキーワードを適当に散りばめて近い領域にあるものを線で結んだお気持ちマップに見える
暗黙的にJSTとして時間を使ったせいでUTCで作った場所で盛大にバグる
応急処置でバグったところを+9とかやってしまうと、それ以降に逆に誰も気付かずに更に影響範囲が拡がったりする
海外展開しようとしたときにバグに気付くがどうしようもなくなって途方にくれて海外だけは別アプリになったりする
UNIXTIMEを使えば楽なんだけれど、そうすると生データぱっと見で時間を判別できないので困ることも多い
素直にUTCでISO8601が良い
とりあえずUTF-8にしとけば大丈夫、ってことで実装を進めた結果、Mac/Winでハマる
他にもBOMでハマったりして、むしろSJISの方が良かったんじゃ無いか、とか言い出す
DBが統一的になっている場合はまだ後からどうにかできるが、変なところでキャッシュされてたりすると凄い困ることになる
MySQLなりPostgreSQLなりでUTF-8を正しく扱う方法はいろんな記事があるのでちゃんと読んでおけば問題無い
とかよく分からないことを言い出して価格を浮動小数にしてしまう
確かに米国なら$2.43みたいな感じで価格を使ったりするし、むしろ小数点以下が無い通貨の方が珍しいのだけれど
丸め誤差を考えないで作ってしまってバグが見つかりめちゃくちゃ揉める
現職社内SE(開発もやる)を6年務めている10年SE経験ありの33歳の地方在住者
転職活動を進めているが、エージェント経由で応募しても書類選考がなかなか通らない。エージェント経由だとマージン取られるから通らないのかと愚考して、転職サイトで探してみるも、SESかフルリモートワークの会社しかない。
SESは半年間、100時間越えの残業で身体を壊した経験があるので務めたくない。
リモートワークの会社は日々勉強してスキルを磨いていこうという所ばかりでついていけるか不安になる。
もう腹をくくってリモートワークの会社を狙っていったほうがいいのだろうか。
C#、PHP(Laravel)、SQL、JavaScript等
開発環境
現職年収
400万
450~500万
ほいノ
高専行こうと思えば行けたんだけど、実家離れるの怖くて偏差値45の工業高校へ。
18歳までフリーター。
18歳〜21歳まで定時制に通った。
英語は個人的にそこそこ勉強したけど、数学なんかはⅠの後のAが半分も終わらなかったレベルのバカ校。
この時期は暇で、なぜかやる気に満ち溢れてたから、TOEIC700近くとか日商簿記2級とか色々資格を取った。
24歳でうつになって、30歳くらいまで日雇い・派遣↔無職を半々くらいでリピートしてた。
やってる仕事は大したことなかったけど、幸い仕事中にPCをめちゃくちゃ使うのでやりたい放題だった。
この時にプログラミングを始めた。
ここで年収どんどん上がった。
36歳でうつが再発して辞めて今に至る。
基本は、仕事で使えそうなもの・必要なものをその都度吸収していった感じ。
Webが中心ではあるけど、組み込みとかのハードが絡む分野以外は結果的に広く浅く手を出してる、つもり。
Excel VBA | 1年 |
VB.NET | 半年 |
JavaScript(Node.js) | 4年 |
HTML | 1年 |
SQL | 4年 |
GAS | 3年 |
C# | 1年半 |
TypeScript | 2年 |
Java | 半年 |
C++ | 半年 |
ラダー、FB(三菱、シーメンス) | 1年 |
実務経験があるって胸張って言えるのはこれくらい。
大体習得順。
他には、Python、Julia、R、Fortran、Rust、Go、Dart、Shell、Deno、CSSなんかは少しずつかじってる。
最近はWebに関してはほとんどJS(TS)で済む感じになったので楽。
なんでPLCが最後やねんってツッコミは置いといて、Web系寄りでラダーも触ってるって人は観測範囲ではあんまりいないので、それが俺の数少ない強み。
RDBはPostgreSQL、SQL Server、MySQL、SQLiteの順で実務経験あり。
NoSQLはFirestoreが実務経験あり、実務なしだとNeo4jとか。
PaaSはGCP(Firebase)、AWSの順で実務経験あり。AzureはADとVM周りをちょっと触った程度。
Dockerはよく使うけどKubernetesとかまでは行ってない。
後は産業用の通信プロトコル的なやつを無駄に色々触ってる。Modbus TCPとかORiNとかCC-Linkとか。PLCもそうだけど、あの辺は日本とドイツとアメリカが未だに既得権益で幅利かせててまじで闇深い。その代わりそれをブレイクスルーできればめっちゃ稼げる分野だと思う。
閑話休題。
フリーターでどんな仕事してるか知らないけど、仕事で一日の半分が無くなっちゃうじゃん?
以下、俺の場合ね。
次長クラスの人が「この製造番号でクレームがあったんだけど、作業当時どんなことあったか覚えてない?」みたいなことをわざわざ現場まで何度も聞きに来るんだよ。
作業したのなんて半年前だったりするから一々覚えてないっすよ、って言ってるのに何度も聞きに来るから、イラッとして仕事用のPCで勝手にExcelで業務日報を付けるようにして、イントラのファイルサーバーに置いて「そういう時はこれ見て下さい。次長の貴重な時間が勿体ないです」って言ったのよ。
それだけでめちゃくちゃ喜ばれる。
で、今度はその次長が「この製造番号どれくらいの時間で作業終わった?」みたいなことを現場までわざわざ何度も聞きに来るから、俺はその時またイラッとして、Excelでストップウォッチもどき作って製造番号とか工程ごとに時間計測して記録して、やっぱりファイルサーバーに置いて「これ見て下さい」って言ったのよ。
それでまた、めちゃくちゃ喜ばれる。
最初はプライベートな時間も結構使ってやってたんだけど、そういう周りに喜ばれる効率化を繰り返してると、少しずつ業務時間内で自分のスキルアップに直結する時間を作れるようになる。
自分でこれ面倒くせーな、効率よくできねえかなって思ったら、じゃあどうやって?てのを考える。
ちなみにPCがなくても、たとえばメールアドレスさえあれば今の時代カイゼンはできる。
大きな会社に勤めてるとかだと使うのが難しいんだけど、IFTTTとかが良い例かな。
これはiPaaSっていうサービスの一種で、まあ言葉の意味は覚えなくて良いんだけど、要は「イベントAが発生したら別のイベントBを起こせ」っていうのを登録して、自動化できるWebサービス。
例えば、あなたが日雇いの会社にいて、毎日違う現場に働きに行くとする。
で、出勤前、現場到着時、勤務終了の時にLINEで毎日報告しなきゃいけないとする。
で、その報告を受けた事務方は、Googleスプレッドシートにその都度入力する。つまり、それだけの為の事務員が一人いる。
面倒くさいし、お金がかかる。
そこで、「特定のグループでLINEを受信したら(イベントA)、特定のGoogleスプレッドシートに情報を記録せよ(イベントB)」っていうのをIFTTTに登録すると、少なくとも事務員の入力の手間は省けるってえ寸法だ。
IFTTTはたくさんイベントを処理させたい場合は有料になっちゃうけど、個人で試すぶんにはクレカ登録しなきゃいいだけだから試してみるといいよ。
月1000円で学べる。コスパは圧倒的。
入門コース(学習に180時間と公称してる)がしっかり理解できていれば、Webで大抵のものは作れる。
ただし、大筋は問題ないんだけど、細かい部分で最新技術をキャッチアップできてない可能性があるので、そこは注意した方が良いかも。
https://www.nnn.ed.nico/pages/programming/
N予備校の入門コース終わらせたら、基本情報技術者か応用情報技術者を取る。
そしたら、職歴書の作り方次第で中小企業の社内SEにはまず転職できる。
中小企業の社内SEは、ITリテラシーの低い社員が多い中で「Excelのセルの色が変わらなくなっちゃったんだけど!」とか「複合機が紙詰まりって言ってるけどその紙が見つからない!」とかクソイージーなクエストをこなすだけでおちんぎんが貰える、人によっては天国、人によっては地獄のような職業だ。
ごめん、流石に言い過ぎた。実情は色々と面倒くさい。DXとかバズワードを聞きかじったクソ重役から突然言い渡される重めのミッションとか。
けど安定なのは間違いない。
N予備校の入門コース終わらせたら、基本情報技術者か応用情報技術者を取る。ここは社内SEと同じ。
生産技術ってのは、誤解を恐れずにすげえ簡単に言えば、カイゼンばっかりやってる人たちのことだ。
あんまり詳しくは言えないんだけど、俺が最後にやっていた仕事は言わば生産技術だった。
で、中小企業の生産技術は、Webに強い人材をかなり欲しがっている。有り体に言うとIoTとかね。
IoTは最近、セキュリティの強化がかなりクローズアップされていて、そのせいで二の足を踏んでる企業が多い。
そこに滑り込むのはアリだと思う。
よく「T型人材」って言われ方をするけど、どっちのスペシャリストの言うこともある程度分かる「橋渡し」的な人材になると途端に貴重になって需要が増すので、上昇志向があるなら「Web+何か」の組み合わせでお金稼ぐのが良いんじゃないかな。
ま、橋渡しって自然とプロマネとか任されがちで、裁量大きくて大変なんだけどね。
質問あればどうぞ。頑張って。
MySQLは、オープンソースのリレーショナルデータベース管理システム である。
その名前は、共同設立者のミカエル・ウィデニウスの娘の名前である「My」と
Structured Query Languageの略称である「SQL」を組み合わせたものである。
うぃきぺでいあより
それも開発したのは俗に言うスーパーハッカーとかスタープログラマとかではなく、当時全く無名だった大学院生。
だから開発の目的だって、勉強のためかお遊びなのかもよくわからない話だったり。
そこに来て、型落ちロースペックPCでも動かせるフリーのUNIXライクOSとなると、今だったら
みたいに冷笑されかねない話だ。
実際リリースされて間もない1990年代後半から2000年前後辺りまでは
「流行の追っかけしか能がない、ワナビーのクソガキ共が使うおもちゃ」
くらいの立ち位置だった。
当時流行っていたネットスラングに類似する煽り方をするなら「アンチMS厨御用達」みたいな感じだろうか。
「そんな事があったんだー」
で終わるくらい、Linuxは誰でも、どこでも使うOSになっているのは御存知の通り。
UNIX系OSで最もメジャーと言うだけではなく、システム開発やサーバ構築でWindowsサーバとともにほぼ必ず選択肢に挙げられるようになって久しい。
更に直近の10年で、気がつけば世界中で使われているスマホの殆どがLinuxベース(Android)になっている。
つまり誕生からの四半世紀で爆発的に発展・普及したというわけだ。
本当にLinuxを使うなんて今どき普通すぎて、特に取り立てて言うことではない。
一方でLinuxよりもずっとフリーUNIXとしての歴史があり、かつては定番だったBSD系なんて、今やAppleのお陰で辛うじて延命している状態なのだから、これまた隔世の感がある。
とはいえ気になるのは、何をどうやったらここまで信じがたい躍進をしたのか?という事情。
ホビー用途とビジネス用途では要求される信頼性のレベルが異なるので、誰かがそこに手を入れないとこのような発展は望めない。
そこでは大企業がきちんと専門家を入れる形で関わるならなお良い。
そうなるとやはり、まずIBMが白羽の矢を立て、次いでGoogleが積極的にコミットするようになった流れが大きいのだろうか。
このうちGoogleは「弊社はオープンソースにフリーライドしているわけではない」アピールや自社サービスのコストダウン、更にはモバイル分野への進出という諸々の目的に好都合だったのだと思う。
何しろ元々IBMはAIXという自社製UNIXを売ってる会社であり、これを用いた各種サーバ構築はお家芸だったわけで。
更にこのAIXにDB2やWebSphereを組み合わせる方式は、2000年代くらいまではエンタープライズアーキテクチャの2大巨頭だった。
(もう1つはSolaris+Oracle+WebLogic)
そんな会社がLinuxに手を出して、一体何の得があるんだ?という話なわけ。
一つ考えられるとすれば、AIXもDB2もWASも買えない貧乏人もとい中小規模の顧客から、せめて構築と運用の手数料だけでも取るためとか?
まあ確かに一時期流行ったLAMP(Linux+Apache+MySQL+PHP)なら、ライセンス料なしでハードも安価なPCサーバになるので、導入のハードルは低い。
というわけでLinuxの草創期を知ってる人間からしたら、今の状況は世の中が変わりすぎなくらい変わったという感覚が強い。
Androidの不具合がスマホのメーカー依存or機種依存だったり、そもそもLinuxのデスクトップ用途が未だに少数派なのは今後も変わらないだろうけど、逆に変わらないのは多分それくらい。
あとUbuntuは嫌い。