はてなキーワード: consoleとは
AIインフルエンサーたちはChatGPTが世に出る前は何を投稿していたのか?(1/1)の続き
このTwitterアカウントは、主にYouTube、SEO、競馬、アニメなどの話題について呟いており、自身の活動や興味関心について発信しています。
このアカウントは、日々の米国株や暗号通貨の市場動向、特にテクノロジー関連株やビットコインの価格変動についてツイートしています。
「ゼロコロナ政策再び。 $AAPL の生産に影響が懸念され大きく下落。更に経済混乱が想定され、株価はSP500全業種で
一方で年末商戦売上堅調な滑り出しで $AMZN
暗号資産レンディングBlockFiが経営破綻、暗号通貨も軒並み下落。
チャート上、なんとか踏み止まるか? 」
このアカウントは、AI、特にプロマネAIや量子AIに関する話題や、仕事効率化、プログラミング、そして最新の技術トレンドについて呟いています。
"プロマネAIの実証実験を開始しました!量子AI×NotionによるプロマネAIの実証実験を開始 https://prtimes.jp/main/html/rd/p/000000003.000082094.html… via @PRTIMES_JP"
このアカウントは、主にOpenAIの最新言語モデル「text-davinci-003」の進化と、そのモデルを用いた英語学習ツールやサービスについて呟いています。特に、英語学習におけるAI活用とその重要性を強調しています。
"朝起きたら世界がまた変わっていた(笑)。@OpenAI が最新モデル「text-davinci-003」を発表。主な特徴は、①より明確で、説得力のある文章が書ける②より複雑な指示にも対応③より長い形式のコンテンツが生成可 1月に"InstructGPT"が出た時も感動したけどそれを遥かに上回る進化、です。"
このアカウントは、主にAI、特に画像生成AIに関する話題を呟いています。特にStable Diffusionのバージョンアップや使い方について多くのツイートをしています。
ここにリストアップした人たち以外もみましたが、分類すると3種類のアカウントがいて
またIDを変更してログがヒットしない人は含まれていません(IDから特定できるけどそこまでやらなかった)
javascript:(function() {
const text = Array.from(document.querySelectorAll('[data-testid="tweetText"]')).map(s => s.textContent.trim()).join('\n');
const textarea = document.createElement('textarea');
document.body.appendChild(textarea);
try {
document.execCommand('copy');
console.log('結果がクリップボードにコピーされました!');
} catch (err) {
console.error('クリップボードへのコピーに失敗しました:', err);
}
document.body.removeChild(textarea);
})();
const axios = require('axios'); // HTTPリクエストを行うためのモジュール
const fs = require('fs'); // ファイル操作モジュール
const xml2js = require('xml2js'); // XMLをJSONに変換するためのモジュール
const chardet = require('chardet'); // 文字エンコーディングを検出するためのモジュール
const iconv = require('iconv-lite'); // 文字エンコーディングを変換するためのモジュール
const rssUrl = 'https://www.mlit.go.jp/important.rdf'; // 例としてRSSフィードのURLを指定
async function fetchAndSaveRSS() {
try {
// RSSを取得
const response = await axios.get(rssUrl, { responseType: 'arraybuffer' });
const rssData = response.data;
const detectedEncoding = chardet.detect(rssData);
console.log('検出された文字エンコーディング:', detectedEncoding);
// UTF-8に変換
const utf8Data = iconv.decode(rssData, detectedEncoding);
xml2js.parseString(utf8Data, (err, result) => {
if (err) {
console.error('XML解析エラー:', err);
return;
}
const jsonData = JSON.stringify(result, null, 2);
fs.writeFileSync('rss_feed.json', jsonData, 'utf8');
console.log('RSSフィードがファイルに保存されました。');
});
console.error('エラーが発生しました:', error);
}
}
// 実行
fetchAndSaveRSS();
なるほど確かにその通りですね。
ブックマーク先に寄生する形でしか意見を述べられない卑しい存在であるにもかかわらず、増田ことはてな匿名ダイアリーの方々に上から目線で一方的に批判をして申し訳ございませんでした。
その方法として、古来中国から伝わる三跪九叩頭の礼を致します。
冗長な記述を避けるために、VB.NETで表記させていただきます。
Imports System
Public Class SanGuiKiuKouTou
Sub Main()
For i As Integer = 1 To 3
Console.WriteLine("跪")
For j As Integer = 1 To 3
Console.WriteLine("起")
Console.WriteLine("起立")
End Sub
End Class
御清聴の程有難く存じます。
<title>Document</title>
の下に <script src="./script.js"></script>
という行を追加する <body>
と </body>
の間にテスト文言を <h1>てすと</h1>
とでも書いておく body
の中に書いたテスト文言が左上に表示されているはず console.log("Hello, World!");
とタイプし、上書き保存する
Hello, World!
と出力されていれば成功。
これで JavaScript を実行する最小限の環境は整った。
好きなようにプログラムを書いてコンソールに出力したり画面に書き出したりしてみて。
「指示の通りにならない!」という時はどこでつまずいてるか書いて。対応策を助言できるかもしれない。
ここ1年で初めてはてなブックマーク日毎の総合人気エントリ入りしたドメインからのホットエントリ、ブクマ数順トップ30
ブクマ数 | タイトル | ドメイン |
---|---|---|
2287 | 自己肯定感の話 ① | sutekibungei.com |
1344 | 伝わる文章 | 基本要素 | SmartHR Design System | smarthr.design |
1089 | 2022年カタールW杯、日本対ドイツのレビュー - pal-9999のサッカーレポート | pal-9999.hatenablog.com |
1020 | Elon Musk は Twitter で何をしようとしているのか - The Decisive Strike | blog.nagayama.dev |
915 | 今日 Twitter 日本法人を解雇された皆さんへ #OneTeam - The Decisive Strike | blog.nagayama.dev |
775 | LAN配線マンションの回線を直した話 | skmz.one |
636 | 現在の森保ジャパンの攻撃とその問題点について - pal-9999のサッカーレポート | pal-9999.hatenablog.com |
620 | webエンジニアの「業務委託単価表」が公開 - Digital Shift Times(デジタル シフト タイムズ) その変革に勇気と希望を | digital-shift.jp |
595 | なぜ美人を美人と褒めてはいけないのか? オヤジさんのためのジェンダー問題シン常識 | ライフスタイル | LEON レオン オフィシャルWebサイト | www.leon.jp |
546 | ヤマト運輸株式会社 | GitHub | github.co.jp |
509 | 最近のフロントエンドフレームワークに対する認識とお気持ちの整理 - console.lealog(); | lealog.hateblo.jp |
476 | 東北の男性と結婚した外国人女性たちの経験。「不可視化」の理由と託された言葉の数々。#移住女性の声を聴く|ニッポン複雑紀行 | www.refugee.or.jp |
473 | 【勉強法】『一生頭がよくなり続ける すごい脳の使い方』加藤俊徳 : マインドマップ的読書感想文 | smoothfoxxx.livedoor.biz |
471 | 語り手が異常な小説が読みたい - 千年先の我が庭を見よ | kiloannum-garden.hatenablog.com |
451 | 【2022年 最新版】厳選QOLが爆上がりした買ってよかったアイテム紹介(デスク編・iPad編・整理編・エンタメ編・サービス編) | mitsuch.com |
444 | 色々試して行き着いた読書方法 | iwashi.co |
443 | 【お詫びと自主回収のお知らせ】社長に内緒で玉ねぎを入れすぎた 玉ねぎファンに贈るシャリシャリ玉ドレ200ml | 2022年 | ニュース | 綿半公式ページ | watahan.jp |
418 | MF文庫J編集部よりお詫びとお知らせ | ニュース | MF文庫J オフィシャルウェブサイト | mfbunkoj.jp |
411 | Twitterはサービス終了するのか? | www.bluechronicle.jp |
408 | Twitter での 2年 · eed3si9n | eed3si9n.com |
368 | 国立天文台が撮影した2022年11月8日の皆既月食と天王星食|国立天文台(NAOJ) | www.nao.ac.jp |
367 | Stable Diffusionを使って「いらすとや風画像生成モデル」を作った話 - ぬいぐるみライフ? | mickey24.hatenablog.com |
357 | 最近Reactを始めた人向けのReact Hooks入門 | sbfl.net |
355 | たかやん考:ネットラッパーの揺曳する身体と「病み」の美学、そして「エンパワメント」 - ハイパー春菊サラダボウル | namahoge.hatenadiary.com |
352 | 赤色の缶の「サクマ式ドロップス」で知られる佐久間製菓(株)が廃業へ、原材料高騰が影響 | www.tsr-net.co.jp |
342 | 『マネーフォワード ME』無料会員さまの連携上限数の変更、およびサービスの将来像について|マネーフォワード ホームカンパニー公式note | note.home.moneyforward.com |
323 | 【重要な追記あり】世界初のフルダイブVRMMORPG《ソードアート・オンライン》の正式サービスが開始 | dengekionline.com |
322 | GA4の計測設計には設計ドキュメントが重要な件 - ブログ - 株式会社JADE | blog.ja.dev |
315 | 「ザ・ルンペンブルジョワジー」 - tarafuku10 の作業場 | tarafuku10working.hatenablog.com |
306 | iPhoneで「ガスト」検索しようとするも「がす」の『す』でSafariが落ちる!? – kototoka | kototoka.com |
正直動けばいいと思うので、現状でも問題ないと思うけれどちょっとだけ気になった点。
$$使ってる時点で、デベロッパーツール前提なのは分かるけど、 javascriptで動かしたいのか、デベロッパーツールで動かしたいのか、どっちつかずな書き方になっている。
$$('.hatena-star-inner-count').map(a => a.click()); let data = {}; Array.from($$('.entry-comment-contents')).forEach(x => {const userName = x.querySelector('.entry-comment-username a').href.split('/')[3];const comment = x.querySelector('.entry-comment-text').innerText;const stars = Array.from(x.querySelectorAll('.list-star-container a.hatena-star-star')).map(y => y.href.split('/')[3]);data[userName] = [comment, stars];}); console.info(Object.entries(data).map(x => { return ['|', `b:id:${x[0]}`, '|', x[1][0], '|', x[1][1].join(','), '|'].join(' '); }).join("92;n"));
デペロッパーツールだけで動くだけでいいなら、3行目のArray.fromがなくても動く。多分、forEachをmapに書き換えても動く。個人的にはforEachに統一したいけど、そこは好みレベルの問題だと思う。
$$('.hatena-star-inner-count').map(a => a.click()); let data = {}; $$('.entry-comment-contents').forEach(x => {const userName = x.querySelector('.entry-comment-username a').href.split('/')[3];const comment = x.querySelector('.entry-comment-text').innerText;const stars = Array.from(x.querySelectorAll('.list-star-container a.hatena-star-star')).map(y => y.href.split('/')[3]);data[userName] = [comment, stars];}); console.info(Object.entries(data).map(x => { return ['|', `b:id:${x[0]}`, '|', x[1][0], '|', x[1][1].join(','), '|'].join(' '); }).join("92;n"));
逆に、javascriptで動かしたいなら1行目と3行目はquerySelectorAllに書き換えれる。
document.querySelectorAll('.hatena-star-inner-count').forEach((a)=>{a.click()}); let data = {}; document.querySelectorAll('.entry-comment-contents').forEach(x => {const userName = x.querySelector('.entry-comment-username a').href.split('/')[3];const comment = x.querySelector('.entry-comment-text').innerText;const stars = Array.from(x.querySelectorAll('.list-star-container a.hatena-star-star')).map(y => y.href.split('/')[3]);data[userName] = [comment, stars];}); console.info(Object.entries(data).map(x => { return ['|', `b:id:${x[0]}`, '|', x[1][0], '|', x[1][1].join(','), '|'].join(' '); }).join("92;n"));
これも好みの問題だけど、途中のconstの宣言は一回しか使ってないので、宣言せずにそのまんま入れてもいいんじゃないかと思った。
document.querySelectorAll('.hatena-star-inner-count').forEach((a)=>{a.click()}); let data = {}; document.querySelectorAll('.entry-comment-contents').forEach(x => {data[x.querySelector('.entry-comment-username a').href.split('/')[3]] = [x.querySelector('.entry-comment-text').innerText, Array.from(x.querySelectorAll('.list-star-container a.hatena-star-star')).map(y => y.href.split('/')[3])];}); console.info(Object.entries(data).map(x => { return ['|', `b:id:${x[0]}`, '|', x[1][0], '|', x[1][1].join(','), '|'].join(' '); }).join("&#92;n")); |<<
ええと…メモが言うには「Console.WriteLine("足した結果は{0}です!", sum); と書いたとき、sumはどうやって文字列になるんだ」だそうです
% poetry cache clear --help USAGE poetry cache clear [--all] <cache> ARGUMENTS <cache> The name of the cache to clear. OPTIONS --all Clear all entries in the cache. GLOBAL OPTIONS -h (--help) Display this help message -q (--quiet) Do not output any message -v (--verbose) Increase the verbosity of messages: "-v" for normal output, "-vv" for more verbose output and "-vvv" for debug -V (--version) Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output -n (--no-interaction) Do not ask any interactive question
これ見ると
poetry cache clear pypi
で動きそうじゃん?
% poetry cache clear pypi RuntimeError Add the --all option if you want to clear all pypi caches at /usr/local/lib/python3.8/site-packages/poetry/console/commands/cache/clear.py:44 in handle 40│ ) 41│ 42│ if len(parts) == 1: 43│ if not self.option("all"): → 44│ raise RuntimeError( 45│ "Add the --all option if you want to clear all " 46│ "{} caches".format(parts[0]) 47│ ) 48│
ブブー
動きません
正しくはこう
poetry cache clear pypi --all
直感的には--allをついてたら全てのキャッシュを消すべきだと思うが
% poetry cache clear --all Not enough arguments (missing: "cache").
ブブー
動きません
意味不明に思ったのは俺だけではないらしくIssueが出ている
https://github.com/python-poetry/poetry/issues/521
opened this issue on 19 Oct 2018 · 18 comments
2年前ですよ2年前!
Issue700個も溜まってますよ
pipenvもアレだったけどpoetryもアレだな
もう少しマシな奴が欲しい
ウェブマスター オフィスアワー 2019 年 10 月 02 日 メモ(※所々抜け漏れあり)
https://www.youtube.com/watch?v=bBurTQBqhS0
11/25 Webmaster Conference Tokyo:今週か来週の早い段階で情報を公開する予定
最新情報への対応や常に変動するランキングに対応させるためのもの
「何かまずいところがないだろうか?」という視点でサイトに着手するのは不要
客観的にいいのか悪いのかを知るために定期的なユーザーテストの実施とか、
お互いにレビューし合う習慣を付けるとか
品質評価ガイドラインとかE-A-Tとかは個人的には見なくても良いと思うが、
Q.RankBrainにおける更新性や更新の有無による効果はあるのか?
A.オフィスアワーでランキング要素の可能性について言及するのは難しい。言えることはコンテンツの内容を改善してくださいということだけ。もし、更新性が影響すると言ってしまうとみんながそっちに走ってしまうので。
Q.被リンクではページランクとドメインランクのどちらを重要視していますか?
A.ショートアンサーとしてはどちらでもありません。
仮にドメインランクが重要ですと言ったら何が起こるでしょうか?オールドドメインの買い占めが発生してしまうでしょう。
例えばコンテンツの質を見るに、Wikipediaに関連リンクを貼られるとかそのくらいの影響力があるのかなどを見てみると良いでしょう。
筆者注:
【図解】グーグルのリンク評価20の原則【2019年版】(前編#1~#10) | Moz - SEOとインバウンドマーケティングの実践情報 | Web担当者Forum
https://webtan.impress.co.jp/e/2019/09/30/34042
初心者必見!SEO対策の基本を5分で完全解説【2019年最新版】
https://emma.tools/magazine/seo-basics/
↑これら記事とか?
A.Googleのアルゴリズムも完璧ではないので、アップデートで再評価される可能性はある。
メインのクエリでユーザーが自身のサービスが頭に浮かぶような存在になれるかどうか。
Q.robots.txtでブロックしていないURLなのに、カバレッジでrobots.txtでブロックされていますというエラーが出る
A.色々確認中ではありますが、私が調べた範疇では問題ありません。Search Consoleのフィードバックも送ってください。その際、スクリーンショットだけではなく、テキストで問題点も添えてください。
Q.サイト内画像をサムネイルとして表示したい。Googleが推奨する方法がありませんか?
A.特にそのやり方については公開はしておりません。Googleが良いと思った画像だけを採用します。
強いて対策を言えば、画像のヘルプを参考に画像の情報をGoogleに伝えるようにしてください。
A.確認しましたが、Search Consoleに表示されています。
タイムラグがあるかもしれませんがDisallowされていませんか?確認してみてください。
Q.HTTPSのSearch Consoleは追加した方が良い?重複コンテンツになりますか??
A.追加した方が良いです。
重複コンテンツによって、起こるのはどちらかのコンテンツが上位表示される可能性があるということ。
共倒れになるということはありません。
そのクエリで頭に浮かぶくらいの存在になっているかどうかです。
Q.セパレートURLにおいてMFI後のcanonicalURLの設定について
正規化とは同等のページ内容のURLが複数あるからこそ行うもの。
canonicalよりも、リダイレクトでやってみてはどうでしょうか?
Q.検索パフォーマンスのデータの収集開始タイミングはいつから??
A.基本的には登録前のデータも取れるはずですが、違うケースもあればフィードバックで教えて下さい。
Q.Search Consoleのプロパティへの表示について、所有者として確認されてから6日経ってもプロパティに表示されていません
A.何らかの判断で時間がかかったのだと思います。通常は数日ですが、遅れたのは新規サイトであることが要因である可能性があることです。なにか不具合ありましたらSearch Consoleへフィードバックをぜひお願いします。
A.かなり困っているご様子ですので取り上げましたが、当フォーラムでは対象外の話題ですのでウェブ検索フォーラムへ送信願います。
Q.max-image-preview robots meta の値を確認するには?
A.まだ反映されていないのでもうちょっと待てば反映されます。
Q.Search ConsoleのタイムゾーンについてPTからPSTとPDTに切り替わりますか?
A.切り替わります!!
Q.ドメインを変えずにサイト名だけを変えると検索順位はどう変わる?
A.サイト名ほど大きな要素を変えてしまうのは影響すると思います。
どういうサイト名に変えるのかも重要。ユーザーにとってわかりやすくなるとかであれば、長期的には有効になるかもしれません。
Q.max-image-preview でlargeを設定するとDiscoverに表示されやすいと聞きましたがAMP対応しているだけでDiscoverに表示されやすくなりますか?
A.AMPでもmax-image-previewでlargeでもどっちでも対応可能です。
Q.クロールエラーが特定できない件について、1月のオフィスアワーにてホスティング会社に相談してみては?との回答で、のち、6月に検証中とのことでしたがあれからいかがでしょうか?
A.あまり気にされなくても良いです。ただ、間違ったエラーが表示されないようにするためにエンジニアも調整中ではあります。
こういうエラーに気づかれましたらSearch Consoleのフィードバックをぜひお願いします。
次回は10月後半か11月前半の予定です
{
{
Person person = new Person();
person.firstName = "山田";
person.lastName = "太郎";
Console.WriteLine(person.GetFullName()); // "山田 太郎" と表示される
}
}
public class Person
{
// FirstName プロパティ
private string firstName;
public string FirstName
{
get { return firstName; }
}
// LastName プロパティ
private string lastName;
public string LastName
{
get { return lastName; }
}
{
return firstName + " " + lastName;
}
}
午前中にC#について聞いてた人がいて、ついでに聞きたい。
Person person = new Person();
new Person(); としたら、勝手に「Person.cs」の中の「Person」クラスを探してくれるんだろうか。
前の増田が言っていた、Listのやつも知りたい。
paizaとかで入門動画見てれば分かるだろうか。
タイトルの通り2018年に入社したNTTグループの某社を退職しました。
2019年1月中旬に正式退職したので、約9ヶ月間働いたことになります。
本記事では非常に主観的かつ局所的な話を書くつもりであり、一般性には欠けますのでご承知ください。
NTTグループの某SIer企業に2018年度の新入社員として入社しました。
前年度までは大学院に在籍しており、情報系の研究を行っていました。
入社してからの立ち位置としては一応システムエンジニアに分類されるはずですが、あまりシステムエンジニアらしい仕事は行いませんでした(これについては後述しています)。
2018年の4月に入社し、最初の2ヶ月間は新入社員研修を行っていました。
研修内容は大手企業あるあると言った感じで、挨拶練習や名刺渡し練習、ビジネス文章の書き方等を行いました。
周りは「研修が手厚くて良い」と言っていましたが、個人的には退屈なだけでした。
今振り返ってみると、この研修期間中が最もつらかった様に思います。
しかしながら研修自体は退屈であったものの流石に大手企業と言うべきか入社同期には優秀な方が多く、変な人間も少なかったため人間関係の面ではこれといった苦労はありませんでした。
6月になって研修期間が終わると正式に部署配属が行われました。
この時配属された部署に退職するまで在籍していたことになります。
部署自体の詳細についてはこのエントリでは伏せますが、元々配属を希望していた部署であったため、配属当初は安心した記憶があります。
何か1つこれが決め手になってといった明確な退職理由はありません。
インターネットで言われるようなSIer業界の悪評についても内定前から知っていて、実際に入ってみての感想としても「噂は真実だったんだな」くらいのものだったので特に入社したことに対する後悔もありません。
入社して詰まらない・つらい仕事であったら適当なところで辞めようと思っていましたし、その結果として詰まらない・つらい事象がいくつか重なったため退職するに至りました。
それらの事象を細かく挙げていくと切りがありませんが、そのうち幾つか分かりやすいもの(且つ社内機密や違法行為に当たらないもの)を以下に挙げます。
少なくとも自分が想像していたシステムエンジニアとしての業務は殆どありませんでした。
いわゆるSIerへの批判的な記事に挙げられるようなこと(Excelにスクリーンショットを貼り付ける作業、何に使われるのか分からない謎の資料作成、etc.)や、電話番等が主な業務でした。
新入社員に対して雑務を割り当てるというのはある種合理的な部分もあるとは思うので批判は控えますが、個人的には特に学ぶべきこともなく時間の無駄に感じました。
一方でExcelスクリーンショットに関しては批判するべき部分があります。
Excelスクショは「エビデンスを残す」という名目で行われることが多いと思いますが、システムが正しく動作したかを顧客に証明する目的であれば、結果ではなく検証をする方法を提供するべきではないかというのが私の意見です。
スクリーンショットなんてものはいくらでも改竄可能なもの(WebページなどであればDeveloper ConsoleでHTMLを書き換えれば良い)であり、普通に考えればエビデンスとしての効力はないと考えられます。
周りにはそれなりの年齢の方も多く、また社会インフラの構築を担うことの多い会社であるため、技術的な知識に造詣の深い方が多いと考えていたのですが、そのようなことはありませんでした。
大きな会社なのでそういった人も社内のどこかにはいるのかもしれませんが、少なくとも自分の周りでは観測できませんでした。
詳細は避けますが、技術的な知識に関してはその辺の情報系学部生の方が理解していると思います。
Linuxコマンドが分からない方向けにコマンドの打ち方をまとめた手順書(ターミナルエミュレータを立ち上げて、どこにユーザ名・パスワードを打ち込んで、どのボタンを押して...をスクリーンショット付きでExcelにまとめる)や殆ど問題を丸投げしている様な質問表等を作っていた時の心中は決して穏やかなものではありませんでした。
ファイル名の末尾に日付を付けるようなバージョン管理方法も噂では聞いていたものの本当に実在しているとは思っていませんでした。
また部署としては今後コンサルタントとなるような人材を増やしていきたいような雰囲気がありましたが、システムを殆ど理解していない人にコンサルが務まるのかはよく分かりません。
主に常用していた端末周りの環境についてです。
使用しているコンピュータのスペックがあまりにも低く(メモリ2G、ハードディスク50GB、32bitOS)、まともに作業ができるような環境ではありませんでした。
Excelを開いたり、酷い時はIMEの変換機能を使用した時にもコンピュータが固まっていました。
上で雑務が殆どと書きましたが稀に開発をすることもあり、そういった場合は特にスペックの低さによるストレスを感じていました。
私自身そこまで気合を入れて仕事をするような人間ではなく、むしろできることなら仕事せず遊んでいたい人間ですが、やるべき仕事がくだらない原因で阻害されるというのはそれはそれでストレスが溜まるものだなと思いました。
自分だけでなく周りの人達の環境でもそういったことは起こっていましたが、周りの人達はこの現象について好意的に感じている(コンピュータが固まるのを理由に仕事をしなくても済むため)ようでしたので、その辺りの温度差も退職の理由になっています。
計算すれば高スペックのコンピュータを導入するコストよりも、低スペックなコンピュータを使うことにより生じる人件費の無駄の方が大きいと分かるような気がしますが、あまり計算が得意な人がいないのだと思います。
昨今セキュリティが重要視され、セキュリティに関する施策に予算が付くようになったのは良い点だと思っています。
しかしながら、実施される施策が的外れなものと言わざるを得ないものばかりでした。
的外れならまだ良いですが、それはセキュリティリスクを高めるだけなのでは?と言った理解のない上の人間が思いつきで実施したとしか思えないものもあり大変疑問を感じました。
意味のない施策で業務環境が不便になるのも見てる分には面白いですが、その中で仕事がしていきたいとは思えませんでした。
パスワードの定期変更や、暗号化zipファイルをメールで送り続いてパスワードをメールで送る等のバッドノウハウが未だに存在していることも知りました。
またこれはSI業界全体に言えることだとも思いますが、RPAとかDX(Digital Transformation)とか10,20年前に言うならともかく、今更言っても時代錯誤感が強いです。
退職理由として不満点を挙げることになってしまいましたが、良い点もありました。
これは部署やプロジェクトに依る部分もあるみたいですが、少なくとも私の所属部署では早く帰ったからと言って咎められるようなことは殆どありませんでした。
最近は労働時間に関する制限がかなり厳しくなっているようで、残業が多い部署は上から注意されているようでした。
有給休暇についても申請して拒否されるようなことはなく、むしろ消化が推奨されていました。
休んだことにより後から文句を言われることもありませんでした。
上司や同僚から理不尽な扱いを受けるようなことは殆どありませんでした。
入社前のイメージがパワハラ・モラハラは当たり前といったものであったため、非常に驚かされた部分です。
また少なくとも自分の観測範囲では人種や国籍、性別による差別は行われていないように見えました。
色々ありすぎて私も全てを把握できていませんが、恐らく福利厚生に関しては国内企業ではトップクラスに充実していると思います。
少なくとも1年目の年収としては比較的高い方であったと思います。
業務内容の割に高いとも思いました。
私の場合は残業は殆どありませんでしたが、役職のない若手が残業をした場合残業手当が付くため(役職がつくと裁量労働制になる)、残業をした場合は更に貰えると思います。
もちろん残業手当は働いた分だけしっかり付くようでした。
ただどうやら年収の伸びはそこまで良くはなく、聞いた話では20~30年勤続し管理職になってやっと1000万程度らしいです。
ただ勤務中はかなりささくれ立った心境であったため、こうして比較的穏やかに振り返ることができて良かったなと思う次第です。
巷ではSIer崩壊説みたいなものもありますが、個人的にはSIerは今後も続いていくと考えています。
環境も改善していって数十年後に「あの時辞めなければ...」と後悔することになると面白いですね。
今後の身の振り方については決まっていて、ソフトウェアエンジニアとして転職をすることにしました。
具体的な企業名や待遇等について詳細を書くことができませんが、年収については前職であれば20~30年勤続し管理職になった場合と同程度になります。
Quick Tutorial for Pyramid は公式のチュートリアル
https://docs.pylonsproject.org/projects/pyramid/en/latest/quick_tutorial/index.html
$ $VENV/bin/cookiecutter gh:Pylons/pyramid-cookiecutter-starter --checkout 1.9-branch
として、プロンプトの問いに答えるとサンプル的なアプリができる。
ghはgithubか。
引数で指定できるテンプレートは https://github.com/Pylons?q=pyramid-cookiecutter
sqlalchemyを使うものは分かるけど、zodbって何?
アプリは以下のようにして起動する。
$ env/bin/pserve development.ini --reload
このpserveというPythonモジュールでアプリ動かしたりする。
超単純なPyramidアプリを作って、WSGIのイメージをつかむ。
app.py を書き写して動かしたらHello Worldが動いた。
viewとURLの紐付けはconfig.add_routeしてconfig.add_viewする。add_viewしてからadd_routeしても大丈夫だった。
viewにはrequestが渡される。requestに色々入ってそう。
waitressは知らないけど、serveでHTTPサーバ作ってWSGIアプリを公開できるのかな?
print('Incoming request')
...instead of:
print 'Incoming request'
Inernal Server Errorになった。アプリのほうではValueErrorでresponseを返すようにと怒られていた。text/plainとか返すには何かしないとダメっぽい。
print(xyz)してみろ、ということかな。1と同じくInernal Server Errorになって、コンソールにはNameErrorが出た。
CGIかな?