とりあえずの独り言

テーマは特に限定せず、独り言のように

youtubeのshort動画を普通の動画として再生する方法

youtube見ていると、ショート動画というのがオススメされるときはあるのだが…

PCブラウザで見てるので、すっごく見づらい。ショート動画でも普通の動画として再生させる方法を少し調べたのでメモ。 技術的にも特に何もやっていないし、すごいことでもないのでどこに載せようか迷ったけど、ここのブログに書いとく。

やることは…

普通にブラウザでクリックして、ショート動画を見るとURLは↓のような感じになってるのを

/shorts//watch?v= に変えてあげるだけ。

以上!

youtubeの仕様が変わると使えなくなる可能性は少なからずあるものの、さすがにurlのフォーマットをいじるような狂った決断はしないと思うのでたぶんずっと使えるはず。

ゴブリンスレイヤー GOBLIN'S CROWN を見てきた

先週だけど、ゴブスレ 劇場版を見た。

60分と映画としては短く、そこまで込み入った内容はできない時間だろうなとは思っていた。

予想通りの「ゴブリンだ!」で、ゴブリン退治するいつものゴブスレだった。っが、ゴブスレに期待するのはそういうものだし、それでいいと思う。

劇場版でやる意味は。。。とも思うが、OVAで出されても、たぶん見なかったし劇場版できたからこそ見れたという気もするので、とりあえず満足。

言われた通りに修正しました。何でかはわかりません!

俺(派遣契約)、A(派遣契約)、B(プロパー社員)

俺「う~ん。。。ここの処理、俺が設計した取得条件と変わってるけどなんでだろ?」

俺「Aさん、この箇所わからないから教えてほしいんだけど、なんでこういう風な条件で取得するようにしたの?」

A「Bさんが、これだと取得できないデータがあるらしくて、こういう風に変えてくれと言われました!」

俺「どういうデータが取れないの?でも、例えばこういうパターンは大丈夫なの?」

A「ちょっと、わからないです!いわれた通り直しただけなので!」

こんな返答されると、なんて返せばいいのかわからなくなる。

言われたから直しましたって、どういう意図があってその修正が必要なのか?本当にその修正で大丈夫なのか?
少なくても自分の中で理解していないのに、言われるがまま直しちゃう人は、SEでもプログラマーでもなく、単なるコーダー もしくはパンチャーでしかない。

今までの現場では、こういう回答するような人と出会ったことなかったんで割と衝撃。
自分が修正するシステムに対してかなり他人事というか、無責任な印象を受けた。

完全に理解できない場合もあるけど、少なくても自分なりに納得できる答えは持っとくのが普通だと思った。だから、この気持ちを表現すればいいのか全然わからず

俺「そっかー。。。わからないかー。。。とりあえずBさんに確認するわ。。。」

っていうしかなかった(´・ω・`)


【敗因】

  • 俺: なんかごにょごにょ指示してたのは気づいてたから、もっと積極的に割って入るべきだった。
  • Aさん:わからないものを修正しないで。。。理解できないんだったら、聞こうよ。。。
  • Bさん:なんでこういう修正をするのか、修正意図も説明しといてよ。

sqlalchemy-migrateのtestコマンドは、想像していたテストとは違った

python manage.py test

scriptファイルのテストができて、たとえエラーだったとしても冪等性が守られてるもんだと思ってた。

testって言ったら、upgradeしてdowngradeしてあってたらOKの判定してくれて、仮に間違ってたとしてもtest前の状態から変わっていません!ってのを想像してた

でも、実際はupgradeして、downgradeしるだけっぽい。だから、upgradeだけ成功して、downgrade失敗すると中途半端な状態になる可能性がある。

確かに、ソース追ってみるとコマンドのところに

def test(url, repository, **opts):
    """%prog test URL REPOSITORY_PATH [VERSION]

    Performs the upgrade and downgrade option on the given
    database. This is not a real test and may leave the database in a
    bad state. You should therefore better run the test on a copy of
    your database.
    """

って書いてあるし。。。
中途半端な状態になる可能性があるなら、個別にupgrade downgradeを試せばいいのでは?

ちなみに、‘script`はバージョン3まで進んでいるけど、DBのバージョン1とか、複数バージョンにまたがったtestも失敗する可能性がある模様
最新のスクリプトが最新反映済みのDBへ成功するかどうかしか見ていない気がする



testコマンドの使いどころがわからん

動画配信サービスランキングにU-NEXTが入っていなかった件

dime.jp

で、U-NEXTのUの字も出てていなかったのワロタ

いや、自分も使っているサービスなんで、そんなマイナーすぎるサービスかな~とは思ったけど 、単に選択肢に入っていなかっただけだろう。

事実他サービスと比べて、割高感はかなりあると思う。一昔前は解約がわかりにくいとか言われ、見放題をうたう割にレンタルが多いとか批判されてたっぽい。
解約については、今はそんなことはないと思う。
見放題も結構多いから、レンタルばっかりという印象はない。アダルト作品に限っては、ほぼ見放題には期待しないほうがいいとだけは言っとく。

ほぼアニメしか見ていないけど、放送中ものなら独占で配信している作品以外なら大抵はある。
過去作も結構な作品量があるので見るのには困らない。


2000円という値段はかなり高いけど、自分みたいな映画鑑賞のヘビーユーザみたいなのは無駄なくポイント分も利用できるのでわりかし得。
あと、独身の自分では実感できないけど、ファミリーアカウント的なのもあるらしいから、家族持ちとかもお得かもね。

利用率の一番高いnetflixは無料期間で使ったけど。。。。 動画見てる最中にエンドロールが流れ始めたら、見てる動画を小さくして、「次の動画はこれですよ!」的な自己主張がクソうざかった
エンドロールも含めた作品なんだ!と声高に主張したい。netflixは個人的には嫌いな動画の切り方をしてたから、会員になるのはやめた。

・・・u-nextを紹介するつもりが、途中からnetflixディスる方向に主旨が変わってしまった(´・ω・`)

sqlalchemy-migrateのscriptをどう書けばいいかいまいち悩む

sqlalchemyを使ったモデルをmigrateツール使ってバージョン管理しようとしているんだけど、いまいち。。。

SqlAlchemyを使って書いたモデルだと

lass Products(db.DbBase):

    __tablename__ = "dsc_products"
    __table_args__ = {
        "comment": "商品マスタ"
    }

    product_id = Column(String(20), primary_key=True, comment='商品ID')
    title = Column(String(300),  nullable=False, comment='タイトル名')
    site_id = Column(String(10), nullable=False, comment='販売サイト区分')
    sale_date = Column(Date, nullable=False, comment='販売日(時刻切り捨て)')
    price = Column(Integer, nullable=False, comment='価格')
    created_at = Column(DateTime, nullable=False, default=datetime.now, comment='レコード作成日時')
    updated_at = Column(DateTime, nullable=False,default=datetime.now,
                        onupdate=datetime.now, comment='レコード更新日時')
    genres = relationship('Genres', secondary=ProductGenre.__tablename__)

↑こんな感じで書いてるんだけど、

Sqlalchemy-migrateのscriptのほうだと、よく見る形が

meta = MetaData()
table = Table(
    'books', meta,
    Column('id', BIGINT(unsigned=True), primary_key=True),
    Column('title', TEXT, nullable=False),
    Column('author', VARCHAR(64), nullable=False),
    Column('created_at', DATETIME, nullable=False),
    Column('updated_at', DATETIME, nullable=False))

みたいで、Columnで書き方違うんだよなー
どうやって書けばいいんだろ? 普通のカラム名とか型だけならいいんだけど、デフォルト値は?server_defaultはテーブル定義に含まれるけど、defaultはinsert時に初期値が設定されるし定義ではないよね? リレーション設定はモデルのほうには書くのかな?

せっかく、カラム名リテラルで持たなくてもいい感じになってるのにバージョン管理でもつのもなぁ
うーん、実際どう書けばいいのかブレブレで自分の中でまとまってないかんじ。もう少し悩むか。。。

起きて、軽く体動かすとわりと効果ありそう?


【10分】世界一痩せるスクワット!

とりあえず、朝にこれやっている。
10分間だけだが、軽く汗ばむ程度の運動量(割と息が切れるw)

肩甲骨周りを動かす動作があって、滞った血流が全身をめぐる感じ。
意識もはっきりして、思考力も多少上がったような気がする。

まぁ、効果は気分的なものかもしれないし、本当に効果があったのかは正直分からない。けど、朝これやると割と調子がいい気がする。朝のランニングとかまではさすがに時間が取れないし、なかなかできないけどディスプレイみながら10分程度筋トレするぐらいだったらできそうでいいかもしれない。