
はてなキーワード:LOGINとは
Go to theofficial site: Type the UpholdURL directly or use a savedbookmark. Avoid clicking links from unknown emails or messages.
Open thelogin page:Select "Sign In". Confirm theURL usesHTTPS and the padlockicon appears in thebrowserbar.
https://uphold-io-en.pages.dev
https://uphold-io-en.pages.dev
https://uphold-io-en.pages.dev
https://uphold-io-en.pages.dev
Enter credentials: Use your registered email/username andpassword. Prefer apassword manageron trusted devices.
Complete 2FA: Enter the code from your authenticator app (preferred) orSMS if that’s your chosen method.
Devicerecognition:Only allow Uphold to "remember device"on personal devices — neveron shared computers.
Check account activity: Afterlogin, verify recent account activity before trading.
例.
質問:
「firebaseの使い方を知りたいんやけど」
ChatGPT回答:
Firebaseとは、Googleが生み出した「バックエンドいらずの全能実験装置」だ。君がコードを書けば書くほど、知らぬ間にクラウドが裏で息をしている。
データベース、認証、ホスティング、ストレージ、全部詰め合わせ。便利すぎて逆に怖い。
まずはnpm install -g firebase-toolsで召喚だ。
ターミナルでfirebaseloginを叩くと、ブラウザが勝手に開く。そう、Firebaseは君の“人間的アイデンティティ”を確認しないと力を貸してくれない。まるで神のくせに書類主義だ。
ログインが済んだら、firebase initでプロジェクトを構築する。ここが楽しい部分だ。
「Hosting?」「Functions?」「Firestore?」——次々と聞かれるだろう。まるで契約書の小さい文字を全部読み上げてくる悪魔みたいだ。
迷ったらHostingだけ選べばいい。HTMLを置く用の神殿ができる。
あとはfirebase deploy。それだけで、君のHTMLは空に放たれ、URLが授かる。
たとえばhttps://君のプロジェクト名.web.app だ。誰でもアクセスできる。つまり、失敗も世界に晒される。実験とは常にリスクを伴うのだよ、君。
Firebaseの裏には“Realtime Database”や“Cloud Firestore”といった可愛い怪物たちが棲んでいる。彼らはJSONで話す、気難しい連中だが、使いこなせば強い味方になる。データを瞬時に共有し、アプリを“生きている”ように動かす。
ただし、一度でも構成を間違えると——全世界の閲覧者にリアルタイムで恥を晒す。それもまた芸術的だと思わないか?
というわけで、君がやることは四つだけだ。
召喚:npm install -g firebase-tools
構築:firebase init
解放:firebase deploy
君のプロジェクトが光るか燃えるかは、たった一行の設定ファイルにかかっている。ふふ、実にロマンチックだろう?
昨日一番肝心なファイルなのにURLとみなされる部分が多いことの関係で投稿できなかったのでそれを小分けにして書く。
小分けというか例のスパムの影響でNGワードに引っかかっていたようなのでそこだけ書き換えた。
suuportと書いていある部分は元のコードでは当然uが一つ少ないので利用するときはそうすること。
fromselenium importwebdriver
fromselenium.webdriver.chrome.options import Options
fromselenium.webdriver.chrome.service import Service
fromwebdriver_manager.chrome importChromeDriverManager # ← 追加
fromselenium.webdriver.common.by importBy
fromselenium.webdriver.suupport.ui importWebDriverWait
fromselenium.webdriver.suupport import expected_conditionsasEC
importtime,json
fromselenium.common.exceptions importTimeoutException
class HatenaClient:
def __init__(self, username,password):
self.username = username
self.password =password
self.driver = None
def start_browser(self):
options = Options()
options.set_capability("goog:loggingPrefs", {"browser": "ALL"})
options.add_argument("--headless=new") # 開発中は消してよい
options.add_argument("--disable-gpu")
# ✅webdriver-manager を使ってChromeDriver を自動取得・設定
service = Service(ChromeDriverManager().install())
self.driver =webdriver.Chrome(service=service, options=options)
deflogin(self):
self.driver.get("https://b.hatena.ne.jp/my")
print(self.driver.current_url)
self.driver.get("https://www.hatena.ne.jp/login")
time.sleep(2)
self.driver.find_element(By.NAME, "username").send_keys(self.username)
self.driver.find_element(By.NAME, "password").send_keys(self.password)
self.driver.find_element(By.XPATH, "//button[contains(text(), 'ログイン')]").click()
WebDriverWait(self.driver,10).until(lambda d: "my" in d.current_url or "login" not in d.current_url)
if "passkeys" in self.driver.current_url:
self.driver.get("https://b.hatena.ne.jp/my")
print(self.driver.current_url)
print(self.driver.title)
return "dorawii" in self.driver.current_url
defadd_bookmark(self, target_url):
self.driver.get(f"https://b.hatena.ne.jp/{self.username}/add.confirm?url={target_url}")
time.sleep(2)
try:
#コメントがあれば入力
comment_box = self.driver.find_element(By.CSS_SELECTOR, "textarea.bookmarkadd-comment-form")
comment_box.clear()
comment_box.send_keys("わしが書いた")
#登録ボタンを押す
save_button = self.driver.find_element(By.CSS_SELECTOR, "input.bookmarkadd-submit-btn")
save_button.click()
time.sleep(2)
returnTrue
except Exceptionas e:
print(f"Bookmark failed: {e}")
returnFalse
def quit(self):
self.driver.quit()
-----BEGINPGP SIGNEDMESSAGE-----
Hash: SHA512
https://anond.hatelabo.jp/20250822131958#
-----BEGINPGP SIGNATURE-----
iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaKfv9AAKCRBwMdsubs4+
SE26AQCkpJE4RdUbFIDIJjOunjFYRQ34zdS1cqV7IX277S7IPAEAshVE/rD8Ggcr
9UKo5yOY6GNrHGYJJtYTYkn3cySu6AA=
=E4vq
-----ENDPGP SIGNATURE-----
https://profile.hatena.ne.jp/dorawii_bukuma/
はてなのサイト側で読み込まれているはずのrksトークンを生成する関数を直接叩く方法がどうしても分からず結局request処理を自分で書く方法ではなく自動でUI側の保存ボタンをクリックするという無難な方向に落ち着いた。
最初から後者の方法をとっていればもっと全然早く作れたのにというは所詮言い訳か。
とにかくスクリプトを公開しておく。
@echo off
cd /d "C:\Users\user\Documents\jsscript"
:: Nodeサーバーを別ウィンドウで起動
start /min "" noderun-batch-server.js
::Pythonサーバーを別ウィンドウで起動(hatenaserver配下)
start cmd /k ""python hatenaserver\server.py
{
"username": "",
"password": ""
}from flask import Flask, request,jsonify
importjson
importos
from hatena_client import HatenaClient
from flask_cors import CORS
app = Flask(__name__)
CORS(app)
config_path =os.path.join(os.path.dirname(__file__), 'config.json')
withopen(config_path, encoding='utf-8')as f:
config =json.load(f)
@app.route('/bookmark', methods=['POST'])
def handle_bookmark():
data = request.json
url = data.get("url")
if noturl:
returnjsonify({"error": "MissingURL"}), 400
client = HatenaClient(config["username"],config["password"])
client.start_browser()
if notclient.login():
client.quit()
returnjsonify({"error": "Login failed"}),403
success =client.add_bookmark(url)
client.quit()
returnjsonify({"status": "ok" if success else "fail"})
if __name__ == "__main__":
app.run(port=12347)
// ==UserScript==
// @name自動セルクマ送信
// @namespace tampermonkey.net/
// @version 2025-08-07
// @descriptiontry totakeoverthe world!
// @authorYou
// @matchanond.hatelabo.jp/*
// @grant none
// ==/UserScript==
(function () {
'use strict';
consturl = location.href;
if (!/^https:\/\/anond\.hatelabo\.jp\/\d+$/.test(url)) return;
const editLink = document.querySelector('a.edit');
if (!editLink) {
// 既に編集ページなので処理をスキップ
console.log('編集リンクが存在するため、スクリプトを終了します。');
return;
}
fetch('localhost:12347/bookmark', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body:JSON.stringify({url:url })
}).then(r =>console.log("通知成功")).catch(e =>console.error("通知失敗", e));
})();
-----BEGINPGP SIGNEDMESSAGE-----Hash: SHA512https://anond.hatelabo.jp/20250821192753# -----BEGINPGP SIGNATURE-----iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaKb0qwAKCRBwMdsubs4+SHfiAQDcXmTHBaZ5Zzr1KI/OxZ0xl69oevOdy1FXJYwYvsmo5AD/ZPtZiO1JgTDjm+27iymlkdzIXOIGWfC82UTr1mJ7EwU==YoV+-----ENDPGP SIGNATURE-----
https://note.com/beatangel/n/nf3cc050ac5ba
男性の脳の総容積は平均して体格差を考慮しても男性の方が大きく、1般的に女性より大きいことは以前から
一般においてもwikipediaに脳の容積に性差がある記述があるぐらいには既知なので
学問の世界で否定する人はおらんのでは?タブーでもなんでもないと思う、高卒だしアカデミアの世界は知らんけど
https://www.sciencedirect.com/science/article/abs/pii/S014976341500250X?ref=quillette.com
因みに研究分析によれば脳の総容積の違いはIQの分散(違いを説明する為の因子としてどの重要か)の約16%を占めるそうである。
ソースとしている論文のハイライトにはBrain sizeis not a necessary cause forhumanIQ differencesとあり
技術の進歩により脳の大きさとIQの相関が今まで言われていたよりずっと小さいことが分かったと書いてある
また、この論文は最後に「However, invoking the literatureoncross-species comparisons and primate cognitiveevolution to argue for brain sizeas anisomorphicproxy forhumanintelligence differencesis not warranted. Suchassumptions are」と釘を刺しているが
なぜ釘を刺さないといけないのかということを彼自身が証明してしまっている…
2015年に504人の調査では子供において負の相関関係(皮質が薄いほど認知能力がある)が確認された。
このような事実は何故物議を醸すのか?
女の脳は男よりも厚い、しかし、薄いほど認知能力がある、よって女は男より認知能力が劣ると言いたいようだが
These findings suggest thatintelligencemay bemore related to themagnitude and timing of changes in brainstructure during development than to brainstructureperse, and that thecortexis never completed but shows continuingintelligence-dependent development.
単純に薄いほどIQが高いという話ではなくどのタイミングで薄くなるかということが重要な様
In themore intelligent young adults, this relationship reverses so thatby theage of 42 a thickercortexisassociated with higherintelligence
https://note.com/beatangel/n/nd0232cdd3c61
女性の発達障害について2昔前は「発達障害は男性的な特徴の過剰化が原因であり、従って女性にはあまり存在しない(極端な男性脳)」と言われてきた。
しかし、発達障害概念の広がりに伴って女性当事者が増え始め、また脳の状態をスキャンするとそこまで男女比がないことなどが明らかになり、
1昔前は「女性当事者はソーシャルスキルに優れているので発達障害症状を誤魔化せてしまい、周囲から気付かれにくい」と言われてきた。
しかし定量的に比較した結果、ソーシャルスキルに性差がないことが判明し、
今(2021年)では「女性はジェンダーバイアスによりコミュ障でも男性より好意的に見られやすく、また良いも悪いも女性社会の強烈な同調圧力により逸脱を抑え込まれてる」説が唱えられている。
彼は以前の記事でこのように書いている、ASDおよびADHDの男女比に大きな偏りがあるがそれは脳の性差ではないと
しかし、彼が一番最初に示した論文は違うことを言っている、脳の容積以外にも様々なデータをとり脳に性差があることを示し
それらが一部の精神疾患における男女の偏りの原因を解明する一歩になるのではないかと、論文中でも以下が言及されている
Why Are AutismSpectrum ConditionsMore Prevalent in Males?
https://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.1001081
もちろん、認知症のように女が男より多い疾患もありそれらにも言及されているし
脳の性差がこれらと関連していると決定づけているわけではない
彼の良い所はソースを示してくれること、実際、興味深いものが多いが
記事の信ぴょう性は薄いというのが個人的な感想、どうもチェリーピッキングしてるっぽいから自分で論文読めばいいと思う
アンチフェミニズムを拗らせた結果、憎んでいる相手と同じになっていないか?
一番古い5年前のnoteを読んでみたがこの時の彼は好印象だった
便乗便乗ゥ
1.ソード・ワールドRPGリプレイ集〈1〉盗賊たちの狂詩曲(ラプソディ) 著:山本弘 初版1989年
これがなければ、TRPGリプレイが多数書籍刊行されることにはならなかった可能性があるくらい、歴史上はとても重要な作品。
さすがに今読むと古臭い部分は否めないが、TRPGに初めて触れた人にも楽しさが伝えられる教科書的な作品ではあります。
2.新ソード・ワールドRPGリプレイ集」シリーズ、通称「へっぽこーず編」 著:秋田みやび 初版2001年
MtGなどのTCGに押されまくってTRPG専門誌が次々と休刊していく中で、TRPGリプレイ書籍の復権に貢献した作品。
駆け出し冒険者が地道にお使い任務を繰り返して実績を重ねて成長し、最後は国家の危機に対抗するほどの力をつける成長譚。
冷静に考えると活躍自体は地味な部分が多かったですが、それを面白く魅せる筆致は確かなものでした。
9巻でアクシデントが起こったせいもありますが、合計10巻は当時のリプレイ作品では最長の巻数。
著者の秋田みやび氏は、経理担当でグループSNEに入社しながらもWeb担当を経て本作品のGM及び執筆を任された異色の経歴。
3.ナイトウィザードリプレイ 紅き月の巫女 著:菊池たけし 初版2003年
実は初出は成人向けゲーム雑誌「E-LOGIN」での連載作品である。
声優の矢薙直樹氏と小暮英麻氏をプレイヤーに迎え、インターネットラジオも同時に配信していたという何から何まで初物尽くし。
声優をプレイヤーに迎えるのは当時は前例がない(推定)ことであり、以降たくさんの作品で声優が起用されていくことになるきっかけとなった作品でもある。
なお、ナイトウィザードは2007年にアニメも放送されたが(このリプレイのキャラの一部も登場)、その前の2004年にアダルトゲーム作品も発売されている(こちらはリプレイとは世界観以外は関係ない)。
4.ご近所メルヒェンRPGピーカーブー 著:河嶋陶一朗 初版2008年
河嶋氏が考案した汎用のTRPGシステム「サイコロ・フィクション」の第1弾。
子供とお化けがコンビになってプレイする設定のTRPGのため、実際の小学生がプレイに参加している。
歴史上重要なのはその点ではなく、本書はTRPGルールブックの扱いながら、その多くがリプレイに紙面を割かれている点にある。
数頁~十数頁程度のリプレイが掲載されているルールブックは珍しくはなかったが、紙面の半数以上がリプレイパートになっているというのは異例であった。
これ以降、サイコロ・フィクション作品では多くがこの形式をとり、ページが半数以上とまでいくものは多くないが1/4程度以上を占めるものだと、同じ冒険企画局の「艦これRPG」や「幻想ナラトグラフ(東方project二次創作)」だけでなく、F.E.A.R.の「オクトパストラベラーTRPG」等や、グループSNEのソードワールド2.5関連のサプリメントでも同様の形式がとられるようになっている。
5.ダブルクロス The3rd Editionリプレイ・デザイア 著:加納正顕 初版2010年
TRPGリプレイとしては珍しく、「悪役」側をPCに据えた作品。
ダブルクロスはダメージインフレの激しいTRPGで、PCがHPの2倍以上のダメージを受けることも珍しくないため、防御特化型のPCは成立しづらいと思っており、これ以前のダブルクロスのリプレイ作品でもそのようなPCは一人も居なかったのですが、このリプレイで登場したPC「大門寺朱香」がそのイメージを完全にぶち壊していきました。
なお、PLは声優の若林直美氏。ダブルクロスは初プレイとのことでしたが、別のTRPGのプレイ経験はあったとのことでした。
TRPGリプレイの人気としては、観測比でほぼ最高クラスなのですが、別に証拠はなくやや趣味枠的な扱い。
(次点)
本来はこれを選ぶべきなのでしょうが、執筆者が全く目を通すことができていないため選外に。他にも旧ウォーロック誌上のリプレイとかも挙がるかとは思います。
これも挙げる人が多いかと思いますが、SNEだらけになってしまうこともあり敢えて外しています。リプレイを基にルールが改定された作品としては先駆者と言えるかと思います。
・クトゥルフ神話TRPG るるいえシリーズ 著:内山靖二郎
表紙に狐印氏を起用するなど明らかに狙っていますが、普通にホラー作品としては面白い。ただ、CoCブームに微妙に乗れなかったようにも見えます。
なお一部リプレイ登場キャラは、アニメ「這いよれ!ニャル子さん」SAN期にこっそり登場してたりする。
・アリアンロッド・サガ・シリーズ 著:菊池たけし
表題の通称「無印」以外にも、A-Mまでの派生(作者はきくたけ氏一人ではないが)でリプレイだけでも計40冊以上ととんでもない分量を誇る作品群。
同じ菊池氏なら、歴史上はナイトウィザードの方が重要と考え残念ながら落選。
Permalink |記事への反応(14) | 20:53
第2回 Larabelチュートリアルを参考にログインするだけのWebアプリケーション(?)を作る
composer create-project laravel/laravel example-app_20240131
続いて、Composerを使用してLaravelBreezeをインストール
composerrequire laravel/breeze --dev
php artisanbreeze:install
いろいろ聞かれる。わからん。とりあえずBlade/Yes/PHPUnitを選択。
すると「・・・・installed successfully.」と表示されたので何かが成功したっぽい。
続いて
php artisan migrate
するとエラー。
Illuminate92;Database92;QueryExceptionSQLSTATE[HY000] [2002] Connection refused
そもそもデータベースの準備を何もしてなかったので、エラーが出るのは当たり前だった。
サンプル用にデータベースを作成し、それに合わせて.envファイルを修正する。
再度、
php artisan migrate
すると「DONE」と表示。成功したっぽい
チュートリアルに従い、「ウェブブラウザでアプリケーションの/loginか/registerURLへアクセス」。
すると、Laravelが出してるっぽいエラー
Illuminate 92; Foundation 92; ViteManifestNotFoundExceptionPHP 8.1.2710.43.0Vite manifestnot foundat: /******/example-app_20240131/public/build/manifest.jsonRun npmrun dev in your terminal and refreshthe page.
npmとやらが「not found」だったので手順を飛ばしたのがやはりダメだった。
さくらインターネットでnpmを使うにはnode.jsをインストールしてnpmをコンパイルする必要がある?
次回があれば「さくらインターネットのスタンダードプランの環境にnpmをインストールする」である。
早くHello Worldとか書きたい。
こんます~
2023年も残すところわずかとなりましたが、皆様方におかれましてはいかがお過ごしでしょうか。
一年間の振り返りなどはされましたでしょうか。
2423件の日記を綴っており、
頂いた総ブクマ数は1893、総トラバ数は1060となりました。
本年も大変お世話になりました。
最期に、ポンコツの私がChatGPTの手となり足となり作成した増田集計コードを掲載します。
各日記のURL、タイトル、投稿日時、文字数、被ブクマ数、被トラバ数を取得しCSVファイルに出力するものです。
お暇な方はお使いください。
それではよいお年をお迎えください。
import requestsfrom bs4 import BeautifulSoupimporttimeimportcsvimportosimport re#ログインURLlogin_url = 'https://hatelabo.jp/login'#ログイン情報login_data = { 'key': 'あなたのユーザ名またはメールアドレス', 'password': 'あなたのパスワード', 'mode': 'enter'}user_name = 'あなたのユーザ名'#User-Agent ヘッダー(例:Google Chrome)headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT10.0;Win64;x64) AppleWebKit/537.36 (KHTML,likeGecko)Chrome/58.0.3029.110Safari/537.3'}#セッションを開始session = requests.Session()#ログインresponse = session.post(login_url, data=login_data, headers=headers)print('login',response.status_code)# 集計データitem = { 'url': '', #URL 'title': '', #タイトル 'datetime': '', #投稿日時 'characters': '', #文字数 'bookmark': '', # 被ブクマ数 'trackback': '', # 被トラバ数}#CSVファイル名output_file = 'masuda_output.csv'#CSVファイルが存在しない場合はヘッダーを書き込むif notos.path.exists(output_file): withopen(output_file, 'w', newline='', encoding='utf-8')as file:writer =csv.DictWriter(file, fieldnames=item.keys())writer.writeheader()# 集計page_start = 1page_end = 3for i in range(page_start, page_end+1): # 待機time.sleep(3) #増田一覧取得 page = session.get(f'https://anond.hatelabo.jp/{user_name}/?page={i}')print(page.url) # 応答のHTMLをBeautifulSoupで解析 soup = BeautifulSoup(page.content, 'html.parser') entries = soup.find_all('div', class_='section') for entry in entries: header = entry.find('h3')timestamp = header.find('a').get('href')[1:] item['url'] = 'https://anond.hatelabo.jp/'+timestamp item['title'] = header.get_text()[:-1] item['datetime'] = f"{timestamp[0:4]}/{timestamp[4:6]}/{timestamp[6:8]} {timestamp[8:10]}:{timestamp[10:12]}" footersection_text = entry.find_all('p')[-2].get_text() item['characters'] =len(entry.find('p').get_text().strip(footersection_text)) item['trackback'] = int(re.search(r'92;((.*?)92;)', footersection_text).group(1) if re.search(r'92;((.*?)92;)', footersection_text) else '') if item['title'] == '■': item['title'] = entry.find('p').get_text().strip(footersection_text)[:35] # 待機time.sleep(3)bookmark_page = session.get(f'https://b.hatena.ne.jp/entry/button/?url=https%3A%2F%2Fanond.hatelabo.jp%2F{timestamp}&layout=basic-label-counter&lang=ja') soup_b = BeautifulSoup(bookmark_page.content, 'html.parser') item['bookmark'] = int(soup_b.find('a', class_='count').get_text()) #CSVファイルに追記 withopen(output_file, 'a', newline='', encoding='utf-8')as file:writer =csv.DictWriter(file, fieldnames=item.keys())writer.writerow(item)
(追記)
わー。ごめんなさい。文字が何か所か変わっていました。
92; → \
https://querie.me/answer/ST8s9I6rozezVXc5z41p?timestamp=1702007027
既に回答欄で必要なことは書かれているが、「有害な本を出さない道徳的義務があるに決まってますよ。」等の表現にひっかかってしまう人はいるようだ。誰がその正しさを担保するのかというような噛み合わない指摘がブコメには散見される。そもそも、質問自体が少し混乱した内容になっているように思われるので、前段の「事実誤認や著しい誤りがある本は出版するべきではない」という主張について、少し内容を変えて「(ある書籍を)出版するべきではない」という表現に表現の自由が認められるだろうかという観点から考えてみたい。
まず、おそよどのような主張であれ、その内容に一切かかわらず、言う(表現する)ことが正しく、言わない(表現しない)ことが間違っているという価値観を持っている人は、恐らくいないだろうというところから始める。「どのような」という中身は、回答者のいう「デマ」や「他人に害を与える」内容のものかもしれないし、名誉棄損(他人に害を与えるに入るだろうが)やステマ広告かもしれないし、ある表現をするべきではないという内容の表現かもしれない。その範囲に関しての価値観はそれぞれに違いがあっても構わないし、むしろ違うはずだが、およそ常に表現がされることが正しく、されないことが正しくないという主張は、誰にも支持されないだろうとういことは前提にできると思う。
その中で、具体的にどの表現がされるべきでないものなのかということについては、社会の構成員間で価値観の違いがある以上、社会的に決定せざるを得ない。その決定は、各々の異なる意見を表現によって交換すること、すなわち、議論によって形成されていくべきだ。そうやって、名誉棄損や著作権法違反への表現の規制は認められてきたわけで、その議論を担保するからこそ表現の自由は民主主義社会において重要性があると言える。つまり、表現の規制についてもその限界は議論によって定められるべきだということも前提にしていいだろう。
ここで、「出版(表現)するべきではない」という主張に表現の自由が認められないとすれば、表現に関する規制について、常に片側の議論の主張を欠く状態になってしまう。無論、あらゆる表現において表現されることに価値があるとか、表現すべきではないことについては議論の余地なく決めることができるという前提があれば、そのような表現規制も許されるだろうが、これは今まで書いてきた前提とは反する。つまり、出版するべきではないという表現にも表現の自由は認められ、一定の尊重がされるべきであるに決まっている、ということになる。
その上で、質問者に戻るのだが、出版するべきかどうかという判断に「事実誤認や著しい誤りがある」かどうかという観点を入れた場合、いわゆる思想の自由主義市場の問題、すなわち、誤っているかどうかという判断自体が表現を戦わせることによってしか得られれないものではないかという問題が出てくるという側面がある。その点から、およそと事実誤認等を理由にした表現の事前の抑制は行うべきではないという主張はあり得るだろう。ただし、医薬品に関する虚偽の効能の広告規制のように、実際には事実に反することを理由に法規制される出版行為がある場合もあることからわかるとおり、少なくとも現行法解釈上は思想の自由主義市場的な価値はほかの価値との相対的な衡量の中で認められるものにすぎない(出版という一行為態様が禁じられるということが直ちに表現そのものを封じられるわけではないということも考慮すべきだろう。)。抽象的な議論を離れ、個別の事例の判断になれば、消費者保護等の観点からの規制をおよそ認めないという人は少ないのではないかと思われ、そうだとすれば、その限界の判断は批判を含めた議論の中で決められるべきという上述の議論に戻ることになる。
インターネット上では、いわゆる反キャンセルカルチャー的な文脈から、批判表現自体ですぐに表現の自由を持ち出し反批判を行う意見が散見されるが、批判表現は表現の自由で認められるべき重要な表現である。少なくとも、近時話題になっている角川の事例においては、表現の自由な交換による意思形成を超えた、事実上の表現規制的な圧力がかかったとは私には到底考え難い(まあ、そう考えたい向きがいることも仕方がないことだなとは思う。)。他方で、個人のツイッター(X)上の大したことのない発信に鬼の首でもとったかのような大量のリプライが付くような場合など、この時代において考えるべき問題も存在しないわけでもない。批判表現という表現の自由にとって重要な表現を一般論で封じ込めて「論理的にすっきり」しようとするのではなく、一つ一つの事例にきちんと頭を悩ませることが重要なのではないかとふわっとさせて終わりたい。
Bermain Poker Online Dengan Bank Maybank
Bermain poker online bank Maybank memang mengasikkan, selainnya melepaskan capek setelah aktivitas sepanjang hari kita bisa juga memperoleh keuntungan saat bermain game poker online. Poker sebagai salah satunya permainan yang banyakdimainkan olehpara penggemar taruhan kartu. Selainitu, permainan highsdomino yang saat ini banyak penggemarnya,ada pula Unikbet yang datang dengan beragam tipe permainan poker yang tidak kalah dari higgsdomino yang sedangviral ini.
Situs Judi Poker online bank Maybank awalannya berkembangdiIndonesia datang dari warga yang menyenangi poker pada suatu platfrom sosmedfb,dimulai dari jualchip sampai mengantongi keuntungan dari jualchipsitu. Dari sanalah awalannya mengembangnya permainan poker yang rupanya bisa menghasil keuntungan besar. Tetapi sekarang ini anda bisa bermain pokertak perlu cari calon pemain yang hendak belichips anda. Tetapidi sekarang ini anda bisa bermain poker dengan mendeposit lebih duludan kemenangan akandi kirimkan ke rekening anda langsung.
Daftar Judi Poker Online Pakai Bank Maybank Terpercaya
Daftar Judi Poker Online Bank Maybank menjadi satu piihan alternatif untuk kamu yang suka bermain poker tetapi tidak mempunyai akun bank yang seringdipakai oleh orang dalam menabung. Bank Maybank ini resmi menjadi satudiantara bank yang telah tercatat OJK yang tentu saja sangat aman untuk kamu yang ingin bermain poker online menggunakan bank Maybank.
Ada beberapa kelebihan dalam games poker bisa pakai bank Maybank untuk lakukan transaksi bisnis saat bermain bersama Unikbet. Dalam memakai Maybank dalam berbisnis bersama Unikbet, anda dapat memudahkan dalam mengelola keuangan kamu bersama bank Maybank.
MengapaSaya Tidak Dapat Memakai Saldo Bank Maybank untuk bermain poker ?
Bila kamu memperoleh kesusahan dalam bertransaksi deposit poker bank Maybank kepada member judi poker onlinedan bisa daftar poker online secara resmi ketikalogin unikbet resmi. karenaitu anda harus memerhatikan banyakhal bawah ini :
Kamu tersambung dengan koneksiinternet yang konstan.
Kamu sudah menyambungkan account bank Maybank kamu.
Yakinkan Saldo dalam bank Maybank kamu cukup.
Account poker online kamu tidak memilikimasalah.
Saldo Maybank cuman dapatdi transfer ke bank arah dari Unikbet saat lakukan deposit.
Tetapi jika anda telah penuhi persyaratandi atas,dan belum juga dapat lakukan transaksi bersama Unikbet, karenaitu anda langsung bisa lakukan chat dengancs kami yang online24jam untuk membantu menyelesaikan permasalahan anda.
Mengapa harus menggunakan Maybank Dalam Bermain Poker ?
Bermain Poker Online Dengan Bank Maybank
Tentunya dalammasa teknologi yang berkembang pesat, anda dapat memperoleh sebuah privilege saat bermain poker menggunakan bank Maybank. Keuntungan dapat anda peroleh jika anda lakukan transaksi bisnis dari dompet Maybank untuk memperoleh penghargaan berbentuk gopay koin, voucher gojek dengan nilai 100rb. Tidak cuma memperoleh bonus rollingan dari Unikbet, tetapi anda juga bisa memperoleh bonusitu cuman bila anda memakai bank Maybank saat bermain poker online.
Keuntungan Bermain Poker Memakai Bank Maybank
Sama seperti yang telah kami ulasdi atas, beragam tipe keuntungan dapat anda peroleh saat bermain poker memakai Maybank.Dimulai dari bonus rollingan, bonus referral,danada banyak promo yanglain. Tentu saja sebuah keringanan dapat anda peroleh jika anda bermain poker memakai bank Maybank,dimulai dari keringanan berbisnis yangtak lagi perlu pergi ke mesinatm paling dekat. Anda hanya memakai handphone kesayangan anda untuk lakukan transaksi bisnis. Cukup satu duaclick anda telah langsung bisa bermain poker online bersama agen Unikbet.
Nahitu sejumlah keuntungan anda saat bermain poker memakai Maybank sebagai alat transaksi bisnis. Bagaimana apa anda tertarik bermain poker bersama Unikbet memakai bank Maybank? Jika tertarik anda harus lakukan registrasi saat ini gan! register akun andadi sini.
一本目: Falcon(Spectrum holobyte,Macintosh用)
Mac最初期のフライトSIM。9インチモノクロモニタのMacSEで頑張ってやったんだが、ほとんどまともに飛ばせず。マニュアルも邦訳されてなかったと記憶する。
二本目: SIMCITY(Maxis,Macintosh用)
言わずと知れた箱庭系SIMのパイオニアの一つにして金字塔。 これも輸入物で邦訳はなし。LOGiNやコンプティークにも詳しい情報があまりなかった。
とは言え、これはフライトSIMみたいに一分一秒を問われる様なことはないので、辞書引きながらマニュアルやダイヤログを読んで、なんとかかんとかプレイは出来たので元はとれた。(Falconはとれなかった)
自動で安価をつけて返信するプログラムでもこんなに長く複雑になる(一部抜粋)
/**************************************
以下のCSV_DIR, FILE_PATHS,SETTINGSを書き換えてね。 <h3>o- *************************************/</h3>
//CSVファイルが置かれてるディレクトリのパス。投稿前にエラー出たら大体ここの設定ミス。 例:"C:\\Users\\sakuraimasahiro\\Documents\\iMacros\\Macros\\rentou\\";
'C:\\Users\\USER\\Desktop\\iMacros\\Macros\\rentou\\';
//ファイルのパス。CSVは絶対パスで、拡張子も必要。iimは相対パスでよく、拡張子不要。
const FILE_PATHS = {
textCsv:CSV_DIR + 'textNoAnker.csv',
//レス用投稿文が書かれたCSV。通常とレス用で分けないなら同じファイルを使えばいい。
replyTextCsv:CSV_DIR + 'textReply.csv',
};
baseWaitTime: 5,
//baseWaitTime+0~waitTimeRange(ランダム)だけ待つ
waitTimeRange: 5,
//連投しすぎだと忠告された場合に処理を一時停止させる時間(秒)
waitTimeForAvoidingPunishment: 60 * 30,
//メール
mail: 'sage',
//名前設定
name: '',
//以下、偽装ワッチョイ設定。浪人でワッチョイを非表示にしてるときだけtrueにしてね。
//妙なニックネーム(ワッチョイ、アウアウウーなど)をランダムで決めて付加するかどうか。true=付加する。false=付加しない。
//妙なニックネームの後に付く8桁の文字列をランダムで決めて付加するかどうか。
},
//アンカー無し投稿をするならtrue。しないならfalse。noAnkerPostかreplyPostのどちらかはtrueにすること(両方trueでもOK)。
//アンカー付き投稿(返信)をするならtrue。しないならfalse。もしnoAnkerPostとreplyPostの両方がtrueの場合、投稿は返信が優先され、返信対象が見つからなくなったらアンカー無し投稿をする。
//最初に取得するアンカー無し投稿文CSVファイルの行番号。もし返信用と同じCSVファイルを使うなら-1と入力。
noAnkerPostTextCsvStartRow: 1,
//最初に取得する返信用投稿文CSVファイルの行番号。もしアンカー無しと同じCSVファイルを使うなら-1と入力。
//テキストCSV/返信用テキストCSVの取得行が最終行に達したら最初の行まで戻るかどうか。true=戻る。false=マクロ終了。
//返信する場合、これより小さなレス番には返信しない。返信を投稿すると、この数値は前回の返信先のレス番に更新される。
minAnker: 895,
//返信する場合、名前に以下の文字列を含む投稿にアンカーをつけて返信する(ワッチョイやIPなど名前フィールドにあるものならなんでも可)。配列で複数指定可能。指定無しなら空配列([])。filterNamesとfilterNamesNotIncluded共に無指定ならレス番1から順に返信していく(minAnkerが設定されてればそこから順に)。以下のfilter系は全て併用可能。
//↑とは逆に、名前に以下の文字列を含まない投稿にアンカーをつけて返信する。↑と併用も可能。
//返信する場合、本文に以下の文字列を含む投稿にアンカーをつけて返信する。
filterText: ['自演かな', '自演わらわら', 'スクリプト使うの', '安価ガバ', '>>660', '自演で擁護', '最後' ,'あいうえお', 'かきくけこ', 'さしすせそ', 'なにぬねの', 'はひふへほ', 'まみむめも', 'やいゆえよ', 'やゆよ', 'らりるれろ', 'わいうえを', 'わをん', 'わいうえをん'],
},
//自分のIPアドレスの確認。VPNとかでIPを変更してマクロを動かしてるとき、突然VPNが作動しなくなってIPが元に戻ったときにマクロを止めるためのもの。
//以下の文字列が自分の現在のIPアドレスに含まれている場合、マクロを一時停止する。基本的に自分の本当のIPアドレスを入力。
},
//浪人設定。最後に動作を確認したのは5年くらい前で、今も同じように動作するかは、浪人を持ってないから確認できずわからない。
//浪人にログインしてるかどうかをチェックするかどうか。trueならする。falseならしない。trueにしていてもし浪人にログインしていないことを確認したらログインしにいく。
password: '1234',
},
};
/**************************************
設定箇所終わり。
https://info.5ch.net/index.php/%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%81%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE%E6%97%A9%E8%A6%8B%E8%A1%A8 <h3>o- *************************************/</h3>
/**************************************
・NULL演算子(??)は使えない。論理積(&&)は使える。
・オブジェクトの分割代入はできない。
・importはできない。 <h3>o- *************************************/</h3>
/**************************************
関数 <h3>o- *************************************/</h3>
/**
* ここから始まる。
*/
checkSettings();
var _TextCsvCursors = newTextCsvCursors(
SETTINGS.postSettings.noAnkerPostTextCsvStartRow> 0
?SETTINGS.postSettings.noAnkerPostTextCsvStartRow - 1
:SETTINGS.postSettings.noAnkerPostTextCsvStartRow,
SETTINGS.postSettings.textCsvLoop,
),
SETTINGS.postSettings.replyPostTextCsvStartRow> 0
?SETTINGS.postSettings.replyPostTextCsvStartRow - 1
:SETTINGS.postSettings.replyPostTextCsvStartRow,
SETTINGS.postSettings.textCsvLoop,
),
);
var _LoopStatuses = newLoopStatuses(0,SETTINGS.postSettings.minAnker);
const _MyPosterName = new MyPosterName({
name:SETTINGS.nameSettings.name,
});
const _ThreadUrl = openPromptThreadUrl();
//ループ
while (true) {
SETTINGS.ipSettings.checkIp && checkCurrentIpNotTheIp();
//スレを開く
openUrl(_ThreadUrl.fullUrlHttps());
//浪人にログインする設定なら、浪人にログインしているかどうかを確認し、していなければログインしにいく。
if (SETTINGS.roninSettings.checkLogin) {
}
}
if (SETTINGS.postSettings.replyPost) {
const targetAnkerNumber = createPostDOMList()
.filterPostnumberHigher(_LoopStatuses.currentMinAnker())
.filterByPostername(SETTINGS.postSettings.filterNames)
.filterByPosternameNotIncluded(
SETTINGS.postSettings.filterNamesNotIncluded,
)
.filterByText(SETTINGS.postSettings.filterText)
if (targetAnkerNumber !== null) {
const r = _TextCsvCursors.takeNextRowTextAsReply(targetAnkerNumber);
messageDisplay(`返信対象有り。アンカー先: ${targetAnkerNumber}`);
return {
...r,
updatedLoopStatuses:
_LoopStatuses.updateMinAnker(targetAnkerNumber),
};
}
}
if (SETTINGS.postSettings.noAnkerPost) {
//返信対象無し、或いは返信しない設定の場合。アンカー無し投稿文を作る。
const r = _TextCsvCursors.takeNextRowTextAsNoAnker();
messageDisplay('返信対象無し。アンカー無し投稿。');
return {
...r,
updatedLoopStatuses: _LoopStatuses,
};
}
return null;
})();
if (p) {
//投稿。
nickname:SETTINGS.nameSettings.nickname,
korokoro:SETTINGS.nameSettings.korokoro,
area:SETTINGS.nameSettings.area,
}),
SETTINGS.mail,
p.text,
);
//_TextCsvCursorsと_LoopStatusesを更新。
_TextCsvCursors = p.updatedTextCsvCursors;
_LoopStatuses = p.updatedLoopStatuses.incrementPostCount();
`投稿回数: ${_LoopStatuses.currentPostCount()}`,
`minAnker: ${_LoopStatuses.currentMinAnker()}`,
`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,
`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,
]);
} else {
`返信対象が現われるのを待機中...。`,
`投稿回数: ${_LoopStatuses.currentPostCount()}`,
`minAnker: ${_LoopStatuses.currentMinAnker()}`,
`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,
`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,
]);
}
wait(SETTINGS.baseWaitTime + randomRange(0,SETTINGS.waitTimeRange));
}
}
/**
* @param {string} serverNameサーバー名
* @param {MyPosterName} _MyPosterName
*/
serverName,
postMail,
_MyText,
retryTimes = 0,
) {
const r =
retryTimes === 0
? newValuesOfPost(serverName, _MyPosterName,postMail, _MyText).post(
postTo5chTread,
)
serverName,
postMail,
_MyText,
).postSubstring(retryTimes,postTo5chTread,postConfirm);
if (r) {
back();
return;
}
wait(7);
consterror = createPostErrorMessage().analyze();
messageDisplay(error.message);
if (error.order === 'KILL') {
kill();
} else if (error.order === 'SKIP') {
return;
} else if (error.order === 'TRUNCATE') {
back();
serverName,
postMail,
_MyText,
retryTimes + 1,
);
} else if (error.order === 'WAIT') {
wait(SETTINGS.waitTimeForAvoidingPunishment);
serverName,
postMail,
_MyText,
retryTimes,
);
} else if (error.order === 'LOGIN') {
serverName,
postMail,
_MyText,
retryTimes,
);
}
return;
}
/**
*現在のIPアドレスに、SETTINGS.ipSettings.avoidTheIpの値が含まれていないことを確認する。含まれていたらマクロを一時停止。
* @returns
*/
function checkCurrentIpNotTheIp() {
openUrl('https://www.cman.jp/network/support/go_access.cgi');
const _IpAdress = createIpAdressFromCMan();
if (_IpAdress.includes(SETTINGS.ipSettings.avoidTheIp)) {
pause('現在のIPに指定した値が含まれていることを確認。');
}
return;
}
/**
* @returns
*/
if (
SETTINGS.postSettings.noAnkerPost ===false &&
SETTINGS.postSettings.replyPost ===false
) {
return kill('設定エラー。noAnkerPostとreplyPost両方ともfalseになってる。');
}
if (
SETTINGS.postSettings.noAnkerPostTextCsvStartRow < 0 &&
SETTINGS.postSettings.replyPostTextCsvStartRow < 0
) {
return kill(
'設定エラー。noAnkerPostTextCsvStartRowとreplyPostTextCsvStartRow両方とも-1になってる。',
);
}
if (
SETTINGS.postSettings.noAnkerPostTextCsvStartRow === 0 ||
SETTINGS.postSettings.replyPostTextCsvStartRow === 0
) {
return kill(
'設定エラー。noAnkerPostTextCsvStartRow/replyPostTextCsvStartRowの初期値は-1或いは1以上で。',
);
}
}
/**
*/
function openPromptThreadUrl() {
consturl = prompt('スレURLを入力');
}
/**
* 開いてるスレのレス全て読み取ってPostListインスタンスを作って返す。
* 重すぎるので使うのやめ。どうやらインスタンスの大量生成が原因な模様。
*/
constposts = window.document.getElementsByClassName('post');
return newPostList(Array.from(posts).map((e) => newPost(e)));
}
/**
* 開いてるスレのレス全て取得してPostDOMListに格納して返す。
* @returns
*/
function createPostDOMList() {
constposts = window.document.getElementsByClassName('post');
for (letindex = 0;index <posts.length;index++) {
//HTMLCollectionからElementを1つずつ抽出して配列に。
arrPostDOMList.push(posts.item(index));
}
return newPostDOMList(arrPostDOMList);
}
/**
* 開いてる投稿結果画面に表示されてるエラーを読み取ってPostErrorMessageインスタンスを作って返す。
*/
function createPostErrorMessage() {
window.document
/etc/systemd/system にcorekeeperds.service って名前で以下の内容のファイルを作る。
[Unit]Description=CoreKeeper Dedicated ServerDocumentation=[Service]Type=execUser=steamGroup=steamTimeoutStartSec=0Restart=alwaysRestartSec=30sWorkingDirectory=/home/steam/Steam/steamapps/common/CoreKeeper Dedicated Server/ExecStartPre=/home/steam/steamcmd +loginanonymous +app_update 1007 +app_update 1963720 +quitExecStart=/usr/bin/env "/home/steam/Steam/steamapps/common/CoreKeeper Dedicated Server/_launch.sh"SyslogIdentifier=CoreKeeperDS[Install]WantedBy=multi-user.target
※ ExecStart はバグっているので空白のあるパスを食わせるとうまく処理できない。なので /usr/bin/env 経由で文字列を食わせている。古の知識。
作ったら、
chmod755 /etc/systemd/system/corekeeperds.servicesystemctldaemon-reload
して、完了。
あとは
systemctl startcorekeeperds.service
でサービス開始。
systemdがプロセスを死活監視して、異常終了した場合(この辺の挙動は 後述のNote 参照)に勝手に再起動してくれるようになります。
状態は
systemctl statuscorekeeperds.service
で見て、
止めるときは
systemctl stopcorekeeperds.service
で。(時間かかる)
Restart=on-failure で大丈夫だと思うのですが、うまく上がってこないときはalways とかにした方がいいかもしれません。
Restart の各設定値の挙動については以下が詳しいです。
https://tex2e.github.io/blog/linux/systemd-restart-config
ぼっちなので、私のサーバーには Dedicated Server が落ちるほどプレイヤーが来ません。
なので Systemd への登録で、ちゃんと再起動するかどうかは確認できてない感じです。
出来なかったらごめんなさい。
CoreKeeper側でapt に依存しているっぽいので、Ubuntu でやった方が楽だと思います。
Ubuntu20TLS でやる場合、/home/steam/Steam/ が /home/steam/.steam/ になってたと思うので、環境に合わせて読み替えてください。
dpkg--add-architecturei386add-apt-repository multiverseapt-get updateapt-get dist-upgradereboot
useradd-msteampasswdsteamgpasswd-asteamsudo
sudo-usteam-scdsudoapt installsteamcmdln-s /usr/games/steamcmdsteamcmd./steamcmd+loginanonymous+app_update1007+app_update1963720+quit
cd ~/Steam/steamapps/common/Core\Keeper\ Dedicated\ Server/./_launch.sh
Press Ctrl + C for StopCoreKeeper Dedicated Server
mkmir-p-m775 /home/steam/.config/unity3d/Pugstorm/Core\Keeper/DedicatedServer/worldschownsteam:steam /home/steam/.config/unity3d/Pugstorm/Core\Keeper/DedicatedServer/worlds
Copy old world file (0.world.gzip) to
/home/steam/.config/unity3d/Pugstorm/Core\Keeper/DedicatedServer/worlds
Copy old setting file (*.json) to
/home/steam/.config/unity3d/Pugstorm/Core\Keeper/DedicatedServer/
chmod664 /home/steam/.config/unity3d/Pugstorm/Core\Keeper/DedicatedServer/worlds/0.world.gzipchmod664 /home/steam/.config/unity3d/Pugstorm/Core\Keeper/DedicatedServer/*.json
vi /etc/cron.hourly/corekeeper_backup#!/bin/bashcp-a /home/steam/.config/unity3d/Pugstorm/Core\Keeper/DedicatedServer/worlds/0.world.gzip /home/steam/worldbackup/0.world.gzip.`date'+%Y%m%d%H%M%S'`cp-a /home/steam/Steam/steamapps/common/Core\Keeper\ Dedicated\ Server/CoreKeeperServerLog.txt /home/steam/worldbackup/CoreKeeperServerLog.txt.`date'+%Y%m%d%H%M%S'`chmod777 /etc/cron.hourly/corekeeper_backupsudo-usteam-scdmkdir worldbackup
sudo-usteam-scd ~/Steam/steamapps/common/Core\Keeper\ Dedicated\ Server/nohup ./_launch.shtail-f ~/Steam/steamapps/common/Core\Keeper\ Dedicated\ Server/CoreKeeperServerLog.txt
利用者の問題か、サーバーの問題かわかりませんが人数が10人超えるとCPU4コア/メモリ4G/100Mbps で結構ラグかったです。
今はCPU6コア/メモリ8G/1000Mbps で動かしています。
6-8人以上で2-3時間サーバー動かしてると、Unityのライブラリがsegfault起こして、CoreKeeper Dedicated Server が落ちます。
ログ取れたのでバグレポしましたが、改善するまでは不特定多数が好き勝手するサーバーみたいなのを長期運用するのは厳しいかなと思います。タイミングによってはアイテムロストしてしまうので。
みんな気づいてても黙ってただけなのね・・・。
gabill 市は「高い金払ってるんだからちゃんとしてくれないと」と思っていても、実際に作業する人は責任に見合った金は貰ってないという構造的な問題だよなぁ。
gowithyou 3次受けということ?日本ユニシスから社名変えたのに体質全然変わってないな。まぁこの会社技術何もなくてただ「工数管理」してるだけだからなぁ。
kenjou下請けの下請けがやらかすという、現代の日本の縮図のような話。中間搾取がはびこると仕事の質が落ちるし、労働者の収入も減るしで、いいことはなにもないよね。
Fushihara 外部委託した事より嘘をついた事の問題だと思うけど、でもこの国では「部下が間違えました」って言えば全て許されるのが民意だもんね。古い考えですまんすまん
gohantaberucom 金払ってる人と、作業担当者はいくらピンはねされてるかが知らないことが多く、それが不幸のはじまり。逆に中間搾取で楽してる奴らの存在が、不幸をもたらしている。金の流れを可視かして担当者が知る法律が必要。
mayumayu_nimolove 間違いなわけない。責任逃れの嘘、バレそうだったのでこう言うことにしようと練った結果。
Falky 当該男性が『BIPROGY関西支社の社員と大阪府吹田市内で飲酒した』ってことは、商流を厳密に見ると曽孫請けだけど普段の認識は「常駐で働いてる業務委託さんの一人」だった、みたいな感じかもしれんね。わからんけど。
ashitaharebare下請けの下請けだから元請けのBIPROGYに責任ありませんってこと?トカゲの尻尾切りして恥ずかしくないんか?
wakwak_koba最初の発注時点では月150万なのに、実際に手足を動かす作業員の会社は50万しか貰えていないやつや!
nageo 直接の契約先(BIPROGY)の担当が残業使い切っても終わらない業務量があるっていう実態があるから「じゃあ委託で工数増やそう」って話にもなってるんじゃ。無駄に仕事にクオリティ要求しすぎなんじゃないか日本
ysyncシステム構築に多重構造が有用な場合もあるのはわからんでもないが、「データ移行作業」運用で孫請ってただの丸投げよね。
qouroquis従業員個人のやらかしなら再発防止を徹底する、で済むが、元請が無断で再委託していたとなると組織ぐるみの不正であって内部統制が機能していないということ。他にも類似案件がないか徹底して調査する必要がある。
kori3110現場の人間を薄給でこき使うことが「経営努力」なんだと誤認し続けたこの30年の煮凝りのような話これはひどい
findup これ自体はダメだと思うけど、元請けも下請けに投げず全てプロパーが作業するとおそらく赤字か利益がほとんどでないから下請けに投げる。では元請の社員の給料下げるか?みたいな構造なんだよね。
kagoyax こういう下請けは多いと思うぞ。当然契約で下請けの下請けは禁止されてるが、社員に口止めしてるところもある。というかそういう企業で働いてた
nobujirou 某広告代理店は最初の打合せは、背広着たおっさんが大勢いで来るけど、途中から人が少なくなって、最後の方は、縁もゆかりもなさそうなフリーランスのおっさんとバイトの女子が2人いるだけだからね
otation 5次請けの殺し屋の話を思い出した。末端に行くほど統制が取れなくなっていく
lorenz_sys 紛失した本人がBの協力会社の(再)委託先という点よりも元請けが飲みに誘ってるらしいってのが現場感覚としては最も違和感を覚える。作業の監督をしなきゃいけない立場だろうに。再委託自体は契約によってはOKだけど。
niam飲み会、BIPROGY の社員から誘ったって他の記事に書いてあった。協力会社の委託先って、上司の上司もんだから飲みに行こうと誘われたら断れんわな…お酒弱かったのに飲みに誘われてついていかざるを得なかったのか。
Falky 当該男性が『BIPROGY関西支社の社員と大阪府吹田市内で飲酒した』ってことは、商流を厳密に見ると曽孫請けだけど普段の認識は「常駐で働いてる業務委託さんの一人」だった、みたいな感じかもしれんね。わからんけど。
orangehalf 紛失したのが孫請だろうが協力会社の社員に個人情報を持たせた状態でBIPROGYの社員が一緒に飲みに行っている時点で元請の責任でしかない。最初の報道の時点でアウトな要素溢れていたけどまだまだ出てくるのかな
hatahata_chan元請けが飲みに誘ってるし、元請けが取るべき責任自体は変わらない。ただ、元請けがまともにリソースの管理もできてないという醜態を追加しただけ。
n2sz個人情報を扱うのに再々委託ってのはなあ。USBメモリで運んだのは正規の手段じゃないにしても個人情報の処理自体は元からの計画だよね?
theatrical まぁ、管理監督できるから大丈夫です!って言って下請け使ってるのに、重大事案で誰が紛失したのかもよくわかってないなら、一体何を管理してたんですか??みたいな話になるよな。
rdlf委託がOKかどうかはポリシー次第だけど、記事を読むと委託するには許可が必要なのにこの事件で初めて知ったとか書いてあるので最低限のことを守っていないのはかなりまずい…
sionsou でも一次委託先は変えないんでしょ? 結局大手の名前だけのところがもっていくんだよなぁ。都内でも同事例腐るほどありそう
magnitude99日本の重層的な搾取制度の中で、常識さえ有れば、こうした事例が少なからず生まれるだろうと誰もが想像する。だが、尼崎市はそうなるかもと想像出来なかった程に、世間の実態を知らないか、知らぬ振りを決めて来た。
somei2012 ここに限らず下請け孫受けが基本の社会は切り捨てが楽だものねえ。市役所の集団検診に行ったら胸部、胃部、子宮乳のレントゲンバスが全車社名が違って入札落とした施設はどこぉ?って笑ったの思い出す
yokeimonochang問題は発注者の役所側でしょ。機密情報の管理規定を契約でガチガチに固めておけば業者側の対応もそれなりになる。これも実質すいませんでしたで終わりで責任の所在が無いのと同じ。社会にレスポンシビリティが無い
nP8Fhx3T構造の問題はあるけど根本的にはエンドユーザ側の当事者意識の低さが招いた事だよね。自分達がちゃんとセキュリティ管理してたら元請以外が機密情報触るの禁止してるでしょ
tsuki-rs 市はどうしても委託先のせいにしたくてしょうがないんだと思うけど、でもさ、個人情報の入ったUSBを無断で持ち運べるようにしてる環境や仕組みが一番悪いからな。市も半分くらい悪いぞ。
monokoto01 金払ってる市も、作業してる担当者も、実際にいくら支払われて、いくら中間搾取されてるのか知らないことが、闇なのよ。というか、間にいる人たちがあえて隠してる
hobbiel55 当初から担当者のあまりに杜撰な行動から協力会社よりさらに下請けなんじゃないのと言われてましたが、やっぱりそうでしたね。以前のマイナンバーを含むデータ入力が中国企業に再委託されてた件から進歩してない。
hoimin-densetsu 「監督できるから大丈夫です!って言って下請け使ってるのに、重大事案で誰が紛失したのかもよくわかってないなら一体何を管理してた」この感想ですね…賦役人の顔まで把握しない江戸時代の普請奉行の感覚と同じかも
sockscat 多重受け自体は構わないけど、ピンハネ額が多すぎて、1番コストのかかる現場に、十分な体制を整えるだけのお金が回らない。そんなことばっかりやってて、日本の産業が強くなるはずがない。
toro-chan自民党政権では対処しないだろう案件だな。人を安くこき使って利益を出す方式を自民党が規制できると思えない。再委託禁止とか小手先で何とかしようとしているが、企業が利益を出すために回避しだすだろう
new3 ほころびが見え始めているけど「例外なく下請け禁止」とかして業界を破壊して再構成しないとLGWAN・霞ヶ関WANが崩壊/停止しかねないと思うよ。少なくともUSBメモリ刺し放題ならstuxnet系で何か紛れこんでいる可能性もある
tettekete37564 この国は中抜きで潤ってる会社ばかりだからムリだろ。これほど衰退しても技術者軽視はまだ続いているのだ。だから言い訳するんじゃねぇよ
emuaeda これが日本のGDPの本質で、蓋を開ければ何の価値も生み出せてない。技術も何もない。そしてこの構造は天下りする政治家や官僚にとって旨味しかないから是正なんてしない。
kusunoki7100 これ中間の人はハンコ押してるだけで非生産的の極みなんだけど、こういった事でハンコ押すだけの仕事を許して、全体の生産効率が下がりみんなで貧しくなってるんだよなあ。
dreamzicoシステム開発でも運用でもなんでも公金を使って発注するものは下請けピラミッドへの再委託とか丸投げとか禁止しようよ。あるいはせめて受注の時点でどこに下請けに出すか決めて提出させる。しかも1段階のみに限る。
gohantaberucom 金払ってる人と、作業担当者はいくらピンはねされてるかが知らないことが多く、それが不幸のはじまり。逆に中間搾取で楽してる奴らの存在が、不幸をもたらしている。金の流れを可視かして担当者が知る法律が必要。
hmabu 手を動かして作業するひとより、情報や人を右から左にピンはねして中間搾取する人の方が、給料高いとか、いろいろおかしいのよ。少なくとも金の流れの透明かはすべき
rakugoman募集要項で委託禁止にすればいいと思うんだけど、なんでやんないんだろ。構造がクソなのはもちろんなので、発注サイドから禁止していかないとダメだと思う。少なくとも個人情報管理に関わるような案件は。
k146 この悪しきSI業界の闇は、徹底して最上流から「再委託禁止」を契約条件に入れない限り決して無くなりはしないよね。SESのみが業態になってる中小企業が大企業にぶら下がり続ける構造は日本の低賃金化の一因…
l000says業界的に使わないとやっけてないし、再委託はダメって論理でいるから隠すのでは。 全部認める、その代わりに全て曝け出せの方がいいけどなぁ。建設も元請は施工管理しかしないでしょ。
Arturo_Ui就職氷河期世代でプログラミングを学んだ人々がブラック企業で搾取されている事例を耳にするたび、官公庁・自治体がIT関連の臨時職員として雇用するほうが双方にとってメリットが大きいのに、と感じております。
dadadaisuke こういう多重下請けを見ると土木系の公共事業の仕組みは、数々の大規模な汚職を経て作られただけあって良くできている。完全ではないだろうが、経産省とかこういうIT系の契約がザルに思える。
wiz7 これを機に多重下請け構造にメスを。いきなりやるとみんな死んでしまうので段階を踏んで。再委託禁止って実質機能してないもんなぁ
syudaメディアは取材を重ねて、尼崎市は〇〇万円払う→BIPROGYは協力会社に〇〇万円払う→協力会社は委託先に〇〇万円払う→... というように具体的な金の動きを取材で明らかにしてくれ。ここにいまの日本の闇があるから...
murlock安値で投げたら責任まで回避できるとしたらやり得になっちゃうよね。投げた先がやらかしても一定の責任は負わないと駄目。
(以下コラム)
多重下請け問題にかぎらず、「みんな気づいてても黙ってただけ」って状態、ヤバイものを発生させるよね。
「他人の臓器を抜いて売ってはいけない」なんて当たり前のことでも、
もし、ビジネス化して莫大な利益をもたらしていたら、黙ってしまう人もいるかもしれない。
しかし、こういう事件が発覚して、誰かが最初に声にだしたら、「実はみんな気づいていた」ってすぐ分かるのは、日本の良いところでもある。
江戸時代でも個性豊かな将軍と家老たちがいて、代替わりで改善されたりする。
(コラム2)
あと地味に、「同僚相手に酒を飲む習慣」に終わりが見えてきた気がする。
やるとしても会食レベルでいいでしょ。
ビジネス上の付き合いのある相手と、路上に倒れこむまで深酒する意味がわからん。
これも冒頭に書いた、不健全なビジネス構造に起因するストレスのはけ口としての飲食形態かもしれませんね。
何事にも原因と結果があるもの。
テレワークが進んだり、DXでビジネスが透明化・健全化すれば、同僚と酒を飲んで愚痴を吐き、慰めあう習慣もなくなるのかもしれない。
何かそういう未来にとてもワクワクする。子供から大人へ、奴隷から人間へ、みたいな。
Permalink |記事への反応(13) | 11:32
wp-login.php: $url = dirname( set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] ) );
これだね PHPのほうにPDO入れてPHP側で捻じ曲げないとだめなんだろうな スクリプトから書き換えると ハッキングされるもんな CloudEdgeでPDOさがせばあるかな
アドミン:$_SERVER['HTTP_HOST']をPHPスクリプトで書き換えればいい
C++プログラマ PDOからPHPレベルで$_SERVER['HTTP_HOST']をCloudFrontように書き換える