卒論指導を他大で受けて自大で卒論発表した話:思い出話

あれよあれよと卒論指導を他大で受け、卒論発表は自分が当時通っていた大学で行ったという少し珍しい話です。

 

昔話

今からもう10年近く前、大学受験に失敗し地方の国立大へ進学することになりました。自分が通っていた高校は、東大京大合格者はほぼいないが、某味噌大が10数名、某味噌工業大学が数10名、といったよくある進学校で、自分もできれば帝大に行きたいな~と思っていました。ただ、実際に合格したのは地方の国立大であり、帝大に行けるような努力もろくにしておらず、当然の結果といえます。

そんなこんなで、4年間を地方の国立大で過ごすことを決めますが、4年間のうち2年ほは他大で濃密な時間を過ごすことになるとは全く想像していませんでした。

 

学部2年生の秋

この頃から、自分のいる学部(講座)が少し特殊なことに気づきます。

それは、教員が異口同音に「(国家)公務員になりましょう」と言っているのです。

自分のいた講座は国家公務員を多数輩出しており、講義にも講座OBの国家公務員(例えば、農水省の方)が来る、公務員試験対策も必修講義の中で行う等、自ずと国家公務員を目指す環境が整っていました。

周りの友人も公務員試験対策講座に熱心に通う中、僕は悩みました。

「自分のような人間が公務員になったとして、やっていけるだろうか?」

 

叔父が公務員であったため、多少は公務員として働くということがどのようなことか、理解していたような気がします。

周りの友人、先輩に相談したところ、

「君の人間性で公務員になんてなれるはずがない。やめてくれ。」

「上司と喧嘩している未来しか見えない。」

「窓口に来た人と喧嘩している未来しか見えない。」

と、やはり猛反対を受け、やっぱりな、という思いで、

自分の感覚と、他人から見た感覚が一致しており安心?しました。

(気も弱く、喧嘩なんか全くしないですし、先輩に逆らったことも一度も無いんですけどね・・・)

ちなみに親に相談すれば「公務員になってほしい」と言われることがわかっていたので、初めから相談しませんでした。

後に、「公務員だけはならない」とだけ伝えたような気がします。

 

そんなこんなで、公務員にならない(なれない)と決めたものの、やはり進路で迷います。このまま就職するか、大学院へ進むか・・・

そんな中、別の講座の友人が「某味噌大の大学院説明会へ行くんだけど、一緒にどう?」と声をかけてくれました。

これが、とても大きな転機になります。

 

大学院説明会

右も左もわからず、とりあえず参加してみることにしました。

参加したのは、「環境学研究科 大気水圏科学系」の説明会でした。

学部の講義で、大気化学の講義や環境系の講義を受講していたので、全く知らない分野というわけではなく、むしろ興味のある分野でした。

(自分の本来の専攻は農業土木でしたが、途中から興味を失っていました)

 

いくつかの研究室の説明を聞き、とてもワクワクしたのを覚えています。

そんな中、一際存在感を放っていた研究室に出会います。以下A研究室とします。

この研究がいかに面白いか、なぜこの研究が大事なのか、といったことを素人の自分でもわかるように丁寧にかつ情熱的に、楽しそうに話してくれました。

そのまま研究室訪問し、先輩方が研究室生活をしているか、といった話を直接先輩方から聞くことができ、4年になったら受験しようと決意したわけです。

 

1つの連絡

大学院説明会を経て、研究者になりたい、という思いが芽生えてきました。A研究室は、「希望者はB4で原著論文の執筆指導あり」等、もしも研究者を目指すのであればそれ相応に指導する、というスタンスであったので、よりいっそう、この研究室で博士を取りたいと思いました。

研究室訪問の後、教員から「わからないことや不安なことがあったら気軽に連絡して」といった旨の連絡が来ていたので、その返信で「4年になったら受験する」「博士課程に進みたいと思っている」ことを伝えました。

すると、

「受験は4年にならないとできないが、実験手法の習得や論文指導のために、時間があればもう研究室に来てはどうか」といった返信が来ました。

研究室というのは、その大学の人間しか出入りできない場所だと思っていたので、これには驚きました。

当時、サークルにも入っておらずひたすらバイトしかしていなかったので、「是非行かせてほしい」と連絡し、学部3年から出入りするようになりました。

この時点では、基本は現在所属の大学に通いつつ、定期的にA研究室に遊びにいく、といった形で生活していました。

 

他大で卒論指導を受ける!?

学部4年になったころ、A研究室の教員から、「卒論をうちで書いたらどうか?」と打診がありました。研究室に遊びに行っていたときから測定を進め、論文化の目処が立っているような状況であったため、「早めに卒論を書いて、欧米誌に投稿したほうが学振に有利だよ」といったメッセージでもあったように思いますし、そのように言われていたような気がします。

 

ただ、当時の自分はそんなことしていいのだろうか・・・?という不安があったので、現在所属の大学の指導教員に許可を取りにいったところ、

「全然OK!A研究室の先生方に、くれぐれもよろしくお伝え下さい」と意外にも快く許可が降りました。

後にわかったことですが、教員同士でも連絡を取っていただいていたそうです。

許可がおりたことで、所属は現大学でありながら、卒論指導をA研究室で受けることになり、A研究室に仮配属といった形となりました。

 

学部3年までにほとんど単位を取り終えていたので、基本的にA研究室に顔を出し、所属大学にはゼミの日だけ顔を出す、といった生活をしていました。

当然、所属大学のゼミではA研究室で行っている卒論を発表するので、聴衆は「??????」だったと思います。

・所属大学の研究→農業土木

・A研究室の研究→安定同位体(の中でも少し特殊な17O濃縮というもの)

ですからね・・・

 

流石に教員は質問やコメントをくれましたが、同期にとっては意味不明だったと思います。

 

学部を卒業するまでこの生活は変わらず、卒論発表も所属大学で行いました。

 

おまけ

修士課程から、A研究室に正式配属となり、研究を進めていきましたが、結果的に博士課程には進まず、就職することを選びました。

博士課程に進学しなかったのは、この世界で指導教員を超えることは絶対にできない、と思わされたからです。自分の中ではとてもポジティブな理由です。

これまで出会った人々の中で、A研究室の教員との出会いは、自分の人生を振り返ったときに非常に大きな出来事だと思っています。

研究室生活は楽しいことばかりではありませんでしたが、何度人生をやり直しても、またこの研究室に所属したい、と思えるような3年間を過ごせた自分は幸せですね。

PWAをiOSで試したときに手こずった話

結論

通知の許可を求めるには、ユーザからのアクションが必要だよ。ページアクセスのタイミングで勝手に許可を求めることはできないよ。

はじめに

この記事は、「なんかPWAってやつであたかもネイティブアプリのようにプッシュ通知を送信できるらしいけど、iOSでうまくいかないな~」と思っている稀有な方に向けたものです。

PWA導入システムの背景

  • 少し特殊な事情があり、使用ユーザはごくごく一部に限られていること

  • ユーザは、プッシュ通知を許可する前提で使用を始める、という同意書を書く(プッシュ通知はオプトアウト)

といった背景があり、ユーザがアクセスしたタイミングで、「通知の許可」を求めるダイアログを表示したいという事情がありました。

2つ目の前提は一般的には受け入れられない仕様だとは思うのですが、治験や臨床試験向けのシステムでは意外とこのような仕様があります。

何をしようとしたか

ページにアクセスしたタイミングで、Push通知を許可する以下の関数を実行してみました。

async function allowPush() {
    if ('Notification' in window) {
        let permission = Notification.permission;

        if (permission === 'denied') {
            alert('push denied...');
            return false;
        }
    }
   
    const appServerKey = 'xxxxxxxxxxxxxxx';
    const applicationServerKey = urlB64ToUint8Array(appServerKey);

    let subscription = undefined;
    try {
        subscription = await window.sw.pushManager.subscribe({
            userVisibleOnly: true,
            applicationServerKey
        });
    } catch (e) {
        alert('Push通知でエラーが発生しました。');
        return false;
    }


    // トークンの変換
    const key = subscription.getKey('p256dh');
    const token = subscription.getKey('auth');
    const request = {
        endpoint: subscription.endpoint,
        userPublicKey: btoa(String.fromCharCode.apply(null, new Uint8Array(key))),
        userAuthToken: btoa(String.fromCharCode.apply(null, new Uint8Array(token)))
    };

}

windowsPCのchromeで試したところ、望み通りアクセスしたタイミングで自動的に通知の許可を求めるダイアログが表示され、お!もしかしていける?と思いきや、iOSChromeiOSsafariで上手く動作せず・・・ 調べてみると、

パーミッションの要求 通知を表示するには、まずパーミッション(permission)を要求する必要があります。 ただちに通知を表示する代わりに、次のようにユーザーがボタンをクリックして要求したときにポップアップを表示することをお勧めします。

はい、すみませんでした・・・

ということで、ページにアクセスしたタイミングではなく、結局通知を許可するボタンを押してもらうことで対応しました、というお話。