最近,色んな方が凄いレベルの高いブログ更新されてて,すっかり楽しく拝見する側にまわってます.
個人的に尖った人が好きなのですが,
最近,よく「SASのクソな部分をぶった切るシリーズ」について,どう思うんですか?って色んな方から訊かれるのです.普通に面白いって答えてます(笑)
でも,自分の好きなSASがけなされてる?ということで,なんか良くない気持ちになってる人も一定いたり,急に新人がSAS勉強しなくなって困っちゃった人もいるようなので,一応私が思うことだけ
SASのクソな部分をぶった切る!(1) ソフトウェア価格
https://superman-jp.hatenablog.com/entry/SAS-disadvantage-1
>うん,これはわりとその通りかも(笑)いいぞ もっとやれ.
まあ,医薬分野ってSASの売り上げの20%ぐらいだっけ?で,さらにLSAFとかではなくて,ゴリゴリSAS BASE書いてるユーザーはSASからみたら,金額的にそんなに重視する部分じゃないので,多分,眼中にないのでしょう.払うやつ,払えれる民草が払えばいいと(笑)
私もOpen Source Technologyを申請資料作成にみたいなことに絡んでたりするので,確かな流れとして脱SAS一極の流れは感じます.しかし現状各企業のアンケートとかを見る限り,日本におけるOSTの浸透率はまだ極めて限定的ということも思い知らされたりしてます
SASのクソな部分をぶった切る!(2) SASユーザー総会
https://superman-jp.hatenablog.com/entry/SAS-disadvantage-2
>ぐさっときますねぇ….SAS社の情報発信の在り方とか,ユーザー総会の運営・サポートのやり方がベストではないというのは同感です
「発表者の実績になりにくい」これはどうかなぁ,N of 1じゃ 証拠にならないかもですが,私は結構転職してる人なのですが,給料交渉で,ユーザー総会の論文発表歴とかで結構上がることが多かったですね.
あと一回医薬でSASに浸かると,他業界(金融とかリサーチとか)にジャンプ転職が異常にしにくくなって書類で全部落ちるのですが,発表歴があると,なんかわりと通ります.それがあったから面接したって面接官が言ってたので効いたりもするのでしょう.自称SAS使い,自称データサイエンティストの怪しい人って巷に結構いるので差別化?区別してもらうのにはいいのかなとか.
あと,社内評価とかも,自己プレゼンのやり方によると思うのですが,「XXXを頑張って勉強する」とかより「XXXを研究した結果を総会で論文発表しました」ってほうがウケがちなのと,会社によるけど社内表彰とかでお小遣い稼ぎできたり.
でも結局,面白い人に会えるから,狂人の一歩手前の賢人とか,いい意味でヤバいプログラマの遭遇率が高いから毎年行ってるのが,私自身の動機かなと自己分析.SASのこと発表したり,知らない人,知ってる人とSASの話すると楽しいなぁとか.
結局,困った時に助けてくれる人とか,普段情報交換する信頼できる人とかが全部ユーザー総会で知り合った人だったりするんですよね.私は変だけど,プライベートも含めて友達が全部ユーザー総会由来だから,人間関係のために参加してるってことになるのかな…
でも,そういう仲良しこよしグループで内輪盛り上がりなムードがあって,それが高齢化と相まって,よろしくない風土をユーザー総会に醸しつつあるっていうのは凄くわかります
「ハッシュオブジェクトとか、業務で使うのでしょうか?」
まあ,一応,ここだけは…,多分その人の見てきた風景,経験してきた分野や企業の数によると思いますが,普通に使ってるところ多いですよ.キーが一意でない場合にErrorになったり,余計な変数の上書きを防ぎやすいとか
速度以外の理由で,標準化されている会社多いと思います
SASハッシュオブジェクトは使うべき?(https://superman-jp.hatenablog.com/entry/SAS-hash-object)
でも速度中心に論じられているのですが,個人的にはハッシュオブジェクトを使う理由として,「速度」はおまけと考えています.どちかというと構造化しやすい,多人数の開発で処理を共通化しやすい,キー・データの管理がしやすいのがメリットかなと.
なので,臨床だとSDTMやADaMの形って,ハッシュオブジェクトで一番,扱いやすい形で,はめ込みやすい感じなのですね.極端な例ですが,ADSLとかだとfind メソッドと checkメソッドで,1データステップで処理が簡素に終わることもありえます
あと,自己参照したり,普段だとデータステップって上から下にしかいかないので,前後の推移をみて分岐するとかがやりにくいのですがハッシュオブジェクトやハッシュ反復子だとそれに反することができるのでいいかなと.
ePROやウェアラブルデバイスを試験に使うことが増えてきたので,業界的に利用を見かける機会は増えたかなと思うのですが,まあ私のところにそういう情報や質問が選択的に集中してるからそう感じるだけなのかもですね
SASのクソな部分をぶった切る!(3)作図環境
https://superman-jp.hatenablog.com/entry/SAS-disadvantage-3
>これもわかります(笑) 私は肌にあうのでRやPythonよりSASグラフ好きで(ただしgplotは糞嫌い),GTLもSGPLOTでも描きます.SGPLOTのオプション増えたので,基本SGで済ますけど,GTLが全ての母であるのもわかるので,GTLも書くことありますし,全部GTLで書く人も嫌いではない
SASのクソな部分をぶった切る!(4)拡張性
https://superman-jp.hatenablog.com/entry/SAS-disadvantage-4
>そうですね,これもわかります
PDVについては,この方式は,これはこれで1つの在り方として正解だと思いますね.グローバルフォーラムでアメリカに行った時に,SASの開発周りの方々の話も多く聞きましたが,1obs inputしてoutputするシーケンシャルな処理を極限まで突き詰めたのが現状のSASで,それに適した形の概念としてPDVがあるので,そういう設計思想なんだなと.
必ずしも高速化処理に向かないとは思わないかな.文字値のレングスの持ち方が処理のボトルネックになるところは正直クソだと思いますけどね
しかしながら,良き悪きは別としてPDVは独特なので,視野を広くしておかないと,SASばっかりやったあとにSQLとか行列系言語やると,習得がしんどいんですよね
ある言語の理解を深めるために他言語を勉強するのは真理だとおもいます
SASのクソな部分をぶった切る!(5)proc DS2はいらない子
https://superman-jp.hatenablog.com/entry/SAS-disadvantage-5
まあ,私自身はそんなにかかないのですが,周りにユーザーがいて,他の業界にいた時も職場で使われていたので,少しだけコメント.
SDTMとかADaMとか,形の決まったプログラムをDS2で管理してパフォーマンスあげたり,金融やリサーチ業界での定型処理をうまくDS2にしてたりして,すごく効率的に回してる現場もあるので,まあ,導入メリットなし,無意味とまではいえないかなと
なんちゃってオブジェクト指向なので,他言語の開発者に短期間で,SAS書いてもらわなきゃいけない時によかったり,DS2の方が学習コスト低いから,みたいな例もあるみたいです
つらつら書いてみましたが,特に自分の正義を主張するつもりもなく
私自身は毎日面白おかしくSASで仕事したり遊んだりする日々ですが,久しぶりになにか書いてみたくなったので書いてみました