先月まで58冊だったのですが、今日見たら112冊になってました。
追加日を見ると、2021年5月19日~24日にかけて追加されたようです。
デザインの伝え方、Javaパフォーマンス をはじめ、よさげな本がたくさんあります!
安く読む方法は、ACMの会員になるのが良いです。以下のリンクを参照。
ACM会員になってオライリーの本が読み放題先月まで58冊だったのですが、今日見たら112冊になってました。
追加日を見ると、2021年5月19日~24日にかけて追加されたようです。
デザインの伝え方、Javaパフォーマンス をはじめ、よさげな本がたくさんあります!
安く読む方法は、ACMの会員になるのが良いです。以下のリンクを参照。
ACM会員になってオライリーの本が読み放題以下のJsonがあるとして、cursor
とhas_next
はPaginationに関するものだから、別のObjectにマッピングしたい。
{ |
普通にMappingするとこういうクラスを用意するわけだけど、
|
こういう感じの構造にマッピングしたい。
|
@JsonUnwrapped
を使う
|
JacksonTest.MyRoot(id=abc, paging=JacksonTest.Paging(cursor=next-cursor, hasNext=true)) |
もし、MyRootクラスと@JsonUnwrapped
されたPagingクラスに同じ属性名が存在する場合、MyRoot側に値が設定されます。
メソッドがないので、Requestを愚直に作ってレスポンスを取得する。
require "twitter" |
インターネットを適当に検索して出てくるサンプルを動かしてみると、CVE-2015-9284対応前のバージョンのサンプルばかりで、/auth/twitterへアクセス時にForbiddenエラーが発生してしまう。
gem "sinatra" , "2.1.0" |
マニュアルによると、
By default, this uses rack-protection’s AuthenticityToken class to validate authenticity tokens. If you are using a rack based framework like sinatra, you can find an example of how to add authenticity tokens to your view here.
デフォルトではAuthenticityToken クラスを使用して認証トークンを検証します。
sinatra のようなrackベースのフレームワークを使用している場合の、認証トークンをviewに追加するサンプルがここにあります。
と記載があり、/auth/:provider
のrequest parameterとしてauthenticity_token
が必要とのこと。
値はrequest.env["rack.session"]["csrf"]
を。
こんな感じのが必要.
<form method="post" action="/auth/twitter"> |
サンプルで遊んでいたら、/auth/:provider
が有効にならなくて、なんでだろうなと。
CSRFの対策で、/auth/:provider
はgetメソッドでは受け付けません。
p OmniAuth.config.allowed_request_methods |
https://github.com/omniauth/omniauth/pull/1010で変更が入り、omniauth 2.0以降に取り込まれています。
以下のようなことはしてはいけません。
ちゃんとpostでコールしましょうね。
OmniAuth.config.allowed_request_methods = [:get, :post] |
concurrent-rubyの使い方を調べていて、こちらのページを見つけたのですが、解説が正しくなかったので、正しい挙動をメモ。
このQiitaのページでは、以下のように記載があります。
zipとういうメソッドが用意されているのでそれを使用すると、同時にスレッドが実行され、それらの返り値が配列にまとめられます。
しかし、Concurrent::Promises.future
はfuture_on
のshortcutであり、future_on
はeval on immediately
であるので、futureを作った時点で実行が始まります。そのため、zipとは関係なく、threadの状態はfullfilled
になります。
Constructs new Future which will be resolved after block is evaluated on default executor. Evaluation begins immediately.
zipメソッドで処理を発火したい場合は、delay
を使います。
threads = (1..5).map do |i| |
before zip: 2021-04-11 14:56:35 +0900 # zipで発火するまでスレッドは実行されていない |
ruby aaa.rb |
faraday-cookie-jar
を使えばResponseのSet-Cookieを処理し、後続のRequestにCookieヘッダを付与することができるので、一般的なCookieとしての情報を扱うことができます。
この情報を永続化するサンプルが見つからなかったのでメモ。
require "faraday" |
保存したCookieを読み込む場合はload
を使います。
jar = HTTP::CookieJar.new |
O’reilly Online Learning(Safari Books Online)はたくさんの本が読めるサブスクサービスです。
前職では会社が契約したのですが、個人で申し込むと月額49ドルと、なかなかお高い。
そこで安く使う方法として、年額ACMの会員になると、特典としてこのサービスへのアクセス権がついてきます。ACMの会員費用は年額99ドルです。さらに、私は学生でもあるので、学生会員として登録することができます。その場合、なんと年額19ドル。会員になるしかない!!
ACMといえば、コンピュータ分野全般を対象として国際学会で、チューリング賞なんかが有名ですね。SIGとしてはSIGGRAPH(コンピューターグラフィックスを扱う分科会)も有名です。
※注意!! (追記: 2021/10/10)
Beginning June 30, 2021 you will no longer have access to O’Reilly content. Due to the significant increasing cost of licensing content from O’Reilly, we are no longer able to offer these resources to as part of your student membership.
Please note that this change does not affect your access to Skillsoft online books, courses, and videos or your access to Elsevier ScienceDirect books and journals. You will continue to receive access to the thousands of titles from Skillsoft and ScienceDirect as a benefit of your student membership.
If you would like to continue to receive access to the O’Reilly’s resources licensed by ACM, we can offer them to you at an additional fee. If you have any questions or if you would like to add O’Reilly resources to your membership, please contact Member Services by telephone at +1 212 626-0500 or via email at acmhelp@acm.org.
ライセンス料の高騰により、2021年6月30日以降、学生会員には提供されなくなりました。
一般会員には引き続き提供されています。
(追記ここまで)
ACM デジタルライブラリーはジャーナルや論文へのアクセスができるようになるのですが、私はこれはいったん不要。
https://www.acm.org/membership/joinから「ACM Student Membership」を選択し、必要な情報を入力していきます。学生じゃない場合は、Professionalを選択する。その場合は入力項目が変わります。以下の画像は、学生会員の場合の例です。
クレジットカードかペイパルで支払う事ができます。私はペイパルで払いました。
(SIGGRAPHに参加する場合とか)オプションで色々つけることができますが、何もつけません。
ACMの会員になっただけでは、アカウントがありません。アカウントを作ります。
会員費を支払ったあと、次の画面が表示されるので、「Create your ACM Web Account」を選択します。
キャプチャ画像を撮るの忘れてしまったので画像はないのですが、メールアドレスとパスワードを入れます。すると、Complete Your ACM Account
というタイトルで確認メールが来るので、メール中のURLを踏んで登録を完了させます。
その後、{account}@acm.org
というメールアドレスが作成されます。account名は氏名から自動生成されます。
マイページにアクセスできるようになります。
アクセスできる特典は、本だけでなく、主に3つあります。
SkillsoftはLMSなのですが、コンテンツとしては以下のようなSafariにないような、例えばInside SSD本があります。
ACMのマイページからリンクを踏んでSSOでログインして、ACMのIDとパスワードを入れればオライリーのサイトにログインした状態で遷移します。
設定のLanguage Preferences
でJapanese
にチェックを入れます
すると検索条件にJapanese
が出てきます。
日本語の本が出てきます
Brendan Gregg先生が最近出したSystems Performance, 2nd Editionはオススメです。Safariでは読めませんが、2nd Edition版ではないですが、システムパフォーマンス詳解として日本語版が出版されています。
The Manager’s Pathも良いです。これも日本語版が出ています。表紙はなんとなく見たことあると思います。
すごく古いですが、Java Concurrency in Practiceも良き。日本語版は「Java並行処理プログラミング」です。
せっかくなので、今時点(2021/04/08)の日本語の本の一覧を列挙しておきます。
2021年になってからは追加されていない😭
※自分用のメモなので間違いはあるかも。東京都23区に事業所が1個の場合で、消費税は免税。会計期間は3月1日~2月28日。
仕分けは弥生会計で行いました。
弥生会計(スタンダード)では決算書(P/L, B/S, 株主資本(社員資本)等変動計算書, 注記表)の出力はできますが、法人事業概況説明書や勘定科目内訳明細書は作れません。なので、決算書含めて、決算、申告、納付に関しては全力法人税を利用しました。
また、弥生会計の注記表はテンプレートこそあるものの、何を省略して、何を記載すれば良いのかが非常に分かりづらいためオススメしません。
設立日が2020年3月23日。
会計期間は月初~しか設定できないので、「2020年3月1日~2021年2月28日」となる。
このままでは設立日よりも前の日付で仕訳を作れてしまう。もし、設立日よりも前の仕訳を作ると、全力法人税のデータチェックでエラーが出るし、会計的にも正しくないので、入力制限をかける。
「設定」▶「帳簿・伝票設定」▶「入力制限」で「2020年3月22日」を設定する。
設立日よりも前に使った場合は、開業日(2020年3月23日)で入力して、摘要に実際日付を含めるようにする。
創立費と開業費は「繰延資産」として資産に計上する処理することができるため、2期目以降に費用を繰り延べることが出来ます。中小企業の場合、繰延資産は任意のタイミングで任意の金額を費用化することが認められています。つまり、利益が大きく出た年度(期)で費用化することで節税することができます。
何が創立費にあたり、何が開業費にあたるかは以下のサイトが参考になります。
試算表の作成は、弥生会計の集計機能を用いることで行えます。
試算表は期中に作成するB/S,P/Lみたいなものなので決算作業自体には不要ですが、銀行との取引がある場合なんかは求められる場合があります。
このあたりの内容は末尾に記載した書籍を参考にしました。もしくは簿記3級の内容でもカバーしています。
第一期目は出資しているので差額が出ます。
株式会社では「新規株式の発行」の変動事由を追加して差額を埋めれば良い。
合同会社の場合は「出資の受入」あたりで。
提出する書類はたくさんあります。どの別表が必要なのかは判断が難しいですが、今回私が必要なのは以下の通り。全力法人税を使えば、必要な書類だけをピックアップしてくれます。
国税はe-Taxで、地方税はeLTAXで処理します。
合同会社の場合、記載しないといけない事項は以下の通り。
該当しないものは省略可能です。また、良く「この計算書類は「中小企業の会計に関する指針」によって作成しています。」というものが入っているものが多いですが、この指針を読んでいないのでこの文言は入れません。
良く出来ているので、画面の指示に従って処理していけば良いです。
まずは、社員名簿を作って、同族会社の判定をします。私は一人会社なので同族会社です。「同族会社の判定明細書出力」でPDFをダウンロードできます。(別表2)
まずは、弥生会計の勘定科目と仕訳日記帳と固定資産のデータをエクスポートして、全力法人税にインポートします(参考)
あとはインポートした仕訳に沿って、全力法人税が自動で転記してくれます。便利だ..!(例えば、別表1の①には法人住民税を含まない金額を記載するわけですが、こういうのを自動でやってくれます)
税金の計算が終わったら、その金額を弥生会計の今期の仕訳として登録をします。画面に記載の方法が出てきます。
これを会計ソフトに入力します。
日付: 2021年2月28日(期末日)
借方勘定科目: 法人税、住民税及び事業税
貸方勘定科目: 未払法人税
貸方補助科目: 都民税・事業税(任意)
金額: 64,100円
※全力法人税にはこの仕訳データが入っているので、弥生会計にこの仕訳を追加した後に、再度インポートしてはいけません。計算がおかしくなります。
なぜ7万円ではないかというと、均等割は月割で計算をし、1ヶ月未満は切り捨てることになるからです。2020年3月23日に起業して、2月決算(期末日が2月28日)だとすると、11ヶ月と8日になるので、切り捨てて11ヶ月。 7万円*11/12=64100円です。(参考)
以下のページに書いてある通りに進めるだけでできます。
Web版ではなく、PC版じゃないとできません。
こちらも以下のページに書いてある通りに進めるだけでできます。
Web版ではなく、PC版じゃないとできません。
eLTAXで電子申告をすると、電子納税ができます。申告と違って納税はWeb版でも可能です。
PCdeskを使うとペイジーの連携のところでIEが起動するので、Web版で行いました。
ダイレクト納付の場合、登録した口座から自動で引き落としがされます。
インターネットバンキング方式では、ペイジー用の番号が発行されてそこに振り込む形式になります。
さて、GMOあおぞらネット銀行はどちらも対応していません!!
なので、個人口座で振込をして、役員借入金として処理しました。
弥生会計も全力法人税も繰越処理を行い、次年度の会計期間を設定します。
納税の仕訳は、未払法人税を打ち消せば良いので以下のようになります。
日付: 納税した日
借方勘定科目: 未払法人税
貸方勘定科目: 普通預金
貸方補助科目: 銀行名
金額: 64,100円
(現金で払った場合は普通預金ではなく「現金」、個人口座で払った場合は「役員借入金」にするか、立替処理をする)
とてもつらかった。
書籍