技術的な知見や日々の記録、日常の些細な変化などを綴る雑記ブログです。専門的な技術解説から日記のようなライトな話題まで、特定のジャンルに縛られず、気になったことや面白いと感じた出来事を幅広く発信しています。筆者の視点で切り取った多様なコンテンツが楽しめる、自由な雑記空間を目指しています。
2021/10/05
2021/09/22
StoryboardからXcodeのversionを探す
Xcode で開発を進めていて、あれ? Xcodeのversionいくつで開発してたっけ? 的な事ってありませんか?
Storyboard の触った時に自動で書き込まれる部分ところに番号がいろいろと記載されていて、そこからXcodeのバージョンがわかるかな? 的な事を思いつきました。
com.apple.InterfaceBuilder.IBCocoaTouchPlugin のversionから判定してみる。
なんとか、Xcodeのバージョン確認できそうです。
気が向いたら、他のversionも記載していこう。
基本的に私が目視で確認したものとなります。
gitとかで管理している場合、Xcodeでファイルを開く(表示)だけでバージョンが上書きされて、差分が発生する所がいやな所ですね
一覧
| Xcode Version | build | IBCocoaTouchPlugin Version |
|---|---|---|
| 14.1 | 14B47b | 21507 |
| 13.2.1 | 13C100 | 19519 |
| 13.0 | 13A233 | 19144 |
| 12.5 | 12C33 | 18093 |
| 12.3 | 12A7209 | 17703 |
| 12.0 | 12A7209 | 17125 |
| 11.4.1 | 11E503a | 16087 |
| 11.3.1 | 11C505 | 15706 |
2021/09/16
iOS 15から sectionHeaderTopPaddingが追加された。
なんかね、UITableViewのCellの上に隙間が空いたんですよ。
厳密にはSectionの上かな?
これはですね、
iOS 15から sectionHeaderTopPadding がのパラメータが追加されました。
デフォルト値が0じゃないので
こいつのせいで、勝手に隙間ができるようになりました。
if #available(iOS 15.0, *) {
self.tableView.sectionHeaderTopPadding = 0
}
viewDidLoadとかで0に設定すればOKです
2021/09/14
2021年のアップル発表会の日程がきまりましたね。
Appleの9月の発表会の日程が決まりましたね。
2021/9/15 AM2:00 (JST)
注目は、iOS15がいつリリースされるか?
発表会の翌日か?
翌週か?
いつになるのか。
開発者はそこが一番気になる所かと思います。
理由?
今まで、受託で開発してきたアプリが動作するのかしないのか?
ドキドキする日にちだったりします。
横浜ハンマーヘッドへ枠新摂取にいってきました。
こんにちは、先日1回目のワクチン摂取(モデルナ)にいってきました。
こんな感じ
- (移動)桜木町の駅に到着
- (移動)シャトルバスに乗る(約10分)
- (入場)入り口で入場時間の確認
- (待機)待機用の椅子に案内される
- (受付)待機列で待ち、呼ばれたら順番に受付の人に書類を見せに行く
- (確認)受付が完了すると、次の席に案内され再度確認される
- (問診)書類のチェック項目を元に質問される(接種後の待機時間の振り分けもここで)
- (接種)名前を確認されて、接種。何時まで待機する必要があるか紙をもらう。
- (待機)15分 〜 30分待機する
- (退場)時間が経過したら、出口の人に時間の紙を渡してそのまま退場
- (移動)シャトルバスに乗る
- (移動)桜木町へ
2021/09/03
VS Code 自動フォーマット機能
あった、あった、
Format On Saveって機能が。
設定から、検索にFormat って入れると、
3番目くらいに出てくるので、これをONにしよう。
これで、雑に書いても勝手にフォーマットしてくれるのでプログラムとかはかどります。
2021/08/07
うんこ
うんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこうんこ
いやぁ、乗っ取られたりはしていませんよ、
こういった言葉でアクセス増えたりするのかな?
うんこ ウンコ uniko 💩
2021/07/20
第二言語までは覚えよう
こんにちは、
最近IT関連の人材確保を行いたく、
人事(面接)に参加をしているプログラマです。
私の立場としてみている点をお教えいたします。
- 一緒に働いた時に、働きやすそうな人か?
- プログラムは好きか?
- 学校の学習以外にも、自ら興味を持ってなにかITに関する事を行っているか?
- 学校ではUnityでゲームを勉強、制作しています。
- 学校でUnityでゲームを勉強、制作しています。
- ゲームと連動するサーバー側のアプリケーションも作成しています、
2021/07/12
【golang】try catch がない
え、golangってtry catchが無いんだと。
一発目に洗礼を受ける。
しょっぱなから、パニックでした。
なので、全てにおいて、
エラーチュックは確実に判定してどうするかを決める必要がある。
まぁ、当たり前だけどね。
2021/06/16
【iOS】iOS15対応機種一覧 メモ
今更感もあるかもしれないが。自分用メモ
iOS 15 対応端末一覧(iPhone系)
- iPhone 12
- iPhone 12 mini
- iPhone 12 Pro
- iPhone 12 Pro Max
- iPhone 11
- iPhone 11 Pro
- iPhone 11 Pro Max
- iPhone XS
- iPhone XS Max
- iPhone XR
- iPhone X
- iPhone 8
- iPhone 8 Plus
- iPhone 7
- iPhone 7 Plus
- iPhone 6s
- iPhone 6s Plus
- iPhone SE(第1世代)
- iPhone SE(第2世代)
- iPod touch(第7世代)
2021/06/15
自治体からの手当関連
特別児童扶養手当
軽度 34,970 × 12ヶ月 = 419,640
児童手当
10,000 × 12ヶ月 = 120,000
就学援助制度(子供が多い人も狙える)
給食費免除 55,200/年
その他諸々と お金くれます
---
高額所得の方でなければ、
子供がいるご家庭で障害者の場合はぜひ申請を行った方が良いです。
恥ずかしがる必要は無いです。
判定がギリギリの方は、ダメ元で申請もありです。
さて、このブログはいくら稼いでると思いますか?
こんにちは、
唐突ですが、このブログ(一生ヘタレプログラマー)は、
月間いくら稼いでるとおもいますでしょうか?
ブロガーにAdSenseの広告を表示させており、
閲覧数やクリック数に応じて広告収入が入って来ます。
趣味の範囲で
お小遣いを稼ごうと考えている方がいれば、
『やめた方が良い』です。
全く稼げていません。
むしろ年間のドメイン費用が原因で赤字です。
人件費は無視しても赤字です。
ランニングコストの部分だけで赤字です。
もし、それでもブログの広告収入で稼ぎたいと思っている方が入れば、
完全無料でブログ運用できるこの、
ブロガーとかを利用して練習したほうが良いです。
もし、この記事にたどりつた人がいれば、
興味のある広告が出てたら、
クリックなどしてくれると嬉しいなぁ。
2021/06/11
最近まとまりが無い
タイトル通りで、最近のワタシのブログは、
技術なのか、日記なのが、資産運用なのか、ゲームなのか
全くもって、まとまりが無い、
そんな事も書いちゃうワタシ。
自由気ままなブログでやっていきます。
コロナに負けずに頑張りましょう。
一生ヘタレプログラマー
2021/05/28
iOS14系から デバッグビルドがしずらくなった?
こんばんは、
表題の通り、
現在(2021/05/28) アプリを申請するにはXcode12以上でビルドした物が必須
しかし、企業のアプリなどで、Xcode11で開発していて、
iOS 14系での動作が要件になっているものがあった。
以前は、古いXcodeでも、設定ファイルのようなデータをXcodeにいれれば、
デバッグビルドが出来ていた。
例えば、
Xcode10でiOS13をデバッグビルドするなど。
しかし、
iOS14からは、それが出来なくなった様子
Xcode11 でIOS14の端末に向かってビルドしてアプリを流す所まではできるが、
デバッグビルドが出来ず、
ブレイクポイントを設置してのデバッグ作業が出来なくなった。
不便・・・・。
まぁ、今年は
新しいiOS15 やXcode13がでると思うので・・・。
そのタイミングでも良いのかも。
2021/04/23
AdSense 税務情報の管理
設定をはよしておけ、と警告がきてました。
2021/04/19
ドコモユーザーの方で子供用の携帯電話は、ahamo (アハモ)にする必要は無いかも。
4月から中学生となり、子供専用のスマホを用意しました。
まずは、画像を見てください。
利用の仕方にもよりますが、
3月は1081円です!
ahamoの基本料金より、断然安く仕上がってます。
2月から携帯電話与えて、3月はまるまる一ヶ月利用しています。
主に、Lineや家での利用がメインなので、家ではWIFIでLineを利用する流れです。
機種に関しては、メルカリで購入した、iPhoneSE(初代 5000円)の白ロムにしました。
色々と条件はありますが、
子供の場合は、自分が利用していた iPhone系なら古い端末でも十分に利用が可能なので。
あと、ギガライト2も、1GBの上限設定を入れても良いですね。
そうすれば安心安全かと思います。
みんなどこも割+ドモコのロング学割(U22)+ドモコのロング学割(期間限定)で
2000円も割引です。(タイミングがすごく良かった。)
本当は端末保証も入れたいですが、ドコモで購入している物では無いので入れてません。
端末保証は、一回交換で 5000円 くらいするので、中古で購入すればよいかなと。
子供のスマホをahamoで契約しようとしている人は、一度検討してみてください。
タイミングなどによっては、だいぶ良さげな金額になるかと思います。
んじゃ またね
2021/04/12
資産になるものならないもの。
資産って聞いて、改めて考えて見た。
自分の中で考えた資産の定義は、
長期的に価値があり、更にその価値で金銭を増やす事ができる、物体や行為。
そう、簡単に言えば、借金ナシの土地や家、株券などの事を指しています。
無収入の、ブログ、note、youtube、スマホアプリなどは、あまりにも短期的なもので、
資産とは言いにくいものばかりだと思います。
先程あげたサービス?に関しては、非常に流行に左右されるし、
回転(出てきては消え)が激しく、資産とは言いにくい物なのでは?
と考えています。
広告収入も他人の広告費用に依存していたり、
Googleなどの大企業のさじ加減で簡単にルール変更がされてしまいます。
例えば、 youtubeの広告を掲載する条件など。
以前は、登録者1000人以上などのルールはなく、
誰でも動一本から収益を得られた感じです。
そのルールのおかげで、既存のユーザーにお金が回ってきた気がしますが・・・。
あと、一発系(事件事故、暴露系)の炎上系ユーチューブチャンネルは減った気がします。
脱線しました。
また、一発で大きなお金を得ようとせず。
地道に少しづつ堅実にが、
リスクも少なく、増やせる手段なのでは? と思ってます。
ブログ、youtube、アプリなどで、
googleのAdSenseにお世話になっておりますが、
自由気ままに、好きな時タイミングでこういった感じで書いたり
アプリを公開したりしていますが、
月に得られる収益は ✗✗✗円 しかもらえません。
しかも
8000円以上にならないと、現金化もできないです。
無料で得られる収益は本当に趣味の範囲だと微々たる物です。
なので、投資信託(NISA)有料で運用する分、リスクもありますが、
その分リターンもあります。
今、個人的に、おすすめは、投資信託で毎月数千円投資する。
これが一番なのでは?と思ってます。
長期戦となるので、年齢は早いうちから取り掛かるべきなのかなと思ってます。
みんなで、資産をどんどん増やしてみましょう。
そして、おごってください。
んじゃ、またね。
2021/04/05
Go言語(Golang)をはじめました
きっかけ
仕事でGo言語を使うことになりました。それまでは別の言語での開発が中心でしたが、プロジェクトの要件上、Goを使ったサーバーサイド開発に携わることになりました。
正直なところ、最初はかなり戸惑いました。Goは他の言語と比べてシンプルな構文を持つ一方で、型の扱い方やエラーハンドリングのスタイルが独特で、「なぜこう書かなければならないのか」と思う場面が多々ありました。コンパイルエラーが出るたびに調べ、試して、また失敗して……という繰り返しが続き、最初の数週間はかなり苦労しました。
しかし、そこで助けになったのが一緒に実装を進めてくれる経験豊富なメンバーの存在です。詰まったときに的確なアドバイスをもらいながら少しずつ理解が深まり、気がつけばある程度スムーズにコードが書けるようになっていました。今振り返ると、最初の壁を乗り越えられたのはチームの力が大きかったと感じています。
現在の開発環境
現在のローカル開発環境は以下の構成で進めています。
- 言語: Go(Golang)
- DB: MySQL(Dockerコンテナで起動)
- ORM: GORM
- エディタ: Visual Studio Code
- コンテナ: Docker / Docker Compose
Visual Studio Codeは拡張機能が充実しており、Go用の拡張(golang.go)を入れるだけで補完・フォーマット・デバッグ・テスト実行がほぼすべてエディタ上から行えます。以前はターミナルを行き来することも多かったのですが、今はVSCodeのサイドバーやコマンドパレットから大半の操作が完結するので、開発体験が大きく向上したと感じています。
DockerでMySQLを立ち上げているため、ローカル環境の構築もdocker-compose up一発で完了します。環境の再現性が高く、チームメンバーとの環境差異もほとんど出ないのは大きなメリットです。
今取り組んでいること
現在メインで取り組んでいるのは以下の3点です。
① GORMを使ったDB操作 GORMはGoのORMライブラリで、SQLを直接書かずにGoの構造体を通じてDBを操作できます。マイグレーション、クエリ、リレーションの扱いなど、最初は複雑に感じましたが、慣れてくると非常に直感的に書けるようになりました。
② 単体テスト
Goは標準ライブラリにtestingパッケージが含まれており、外部ライブラリなしに単体テストが書けます。VSCodeから直接テストを実行できるため、コードを書いてすぐに検証できる点が気に入っています。モックの使い方やテーブル駆動テストのパターンなど、まだ学ぶことは多いですが、テストを書く習慣が身についてきました。
③ デバッグ VSCodeのデバッグ機能(Delve)を使って、ブレークポイントを設定しながらGoのコードを追えるようになりました。実行時の変数の状態を確認しながら原因を特定できるので、バグ修正の効率が格段に上がりました。
今後の学習・展望
現時点では「動くコードが書けるようになった」段階ですが、今後はより深くGoを理解していきたいと考えています。具体的に取り組んでいきたいテーマは以下の通りです。
Goらしい書き方を身につける
Goにはいわゆる「イディオム」があります。インターフェースの使い方、goroutineとchannelを使った並行処理、エラーハンドリングのベストプラクティスなど、「動くコード」と「Goらしいコード」の間にはまだ大きな差があります。コードレビューを通じてフィードバックをもらいながら、少しずつGoのスタイルを吸収していきたいと思っています。
並行処理(goroutine / channel)を理解する
GoはもともとC言語の設計者が開発した言語であり、並行処理が得意な言語として知られています。goroutineとchannelを使えば、シンプルな構文で非同期処理を記述できますが、適切に扱わないとレースコンディションやデッドロックといった問題が発生します。この辺りはまだ理解が浅いため、実際にコードを書きながら理解を深めていく予定です。
パフォーマンスを意識した実装
サーバーサイド開発ではレスポンスタイムやリソース効率も重要です。Goはpprof(プロファイリングツール)が標準で使えるため、ボトルネックの特定や最適化に活用できます。まずは基本的な使い方を学び、実際のコードに適用してみたいと考えています。
テストの品質を上げる
単体テストは書けるようになってきましたが、テストカバレッジの向上、モックの活用、統合テストへの取り組みなど、まだまだ改善の余地があります。テストコードの品質がプロダクトの品質に直結するという意識を持ちながら、継続的に改善していきたいと思っています。
書籍や公式ドキュメントを活用する
業務を通じた実践的な学習は非常に有効ですが、体系的な知識を身につけるためには書籍も有効だと感じています。現在候補として考えているのは以下のような書籍です。
- 『プログラミング言語Go』(Alan A. A. Donovan, Brian W. Kernighan著):通称「The Go Programming Language」。Goの仕様や設計思想を深く理解したい方に向いている定番書。
- 『Go言語による並行処理』(Katherine Cox-Buday著):goroutineやchannelを体系的に学べる一冊。並行処理の理解を深めたい段階で読む予定。
公式ドキュメント(https://golang.org/)も非常に充実しているため、まずは公式のチュートリアルやEffective Goを読み込むことも計画しています。
まとめ
Go言語は最初のハードルこそありましたが、慣れてくると書いていて気持ちのいい言語だと感じています。型が明確で、コードが読みやすく、ツールチェーンが整っている点が特に気に入っています。
まだ実装スピードは決して速くありませんし、わからないことも山積みですが、一つひとつ着実に習得していくつもりです。このブログでは今後、業務でハマったポイントや学んだことをメモとして残していく予定ですので、同じようにGoを学んでいる方の参考に少しでもなれれば幸いです。
引き続きよろしくお願いします。
AdSenseようやく、8000円になりそう。
AdSenseに登録して、広告が表示できるようになって、
何年たったでしょうか。
もう、すでに4、5年は過ぎている気がします。
タイトルにもありましたが、
ようやく、現金化できる金額に近づいてきました。
現金化が近くなると、色々と手続きが必要で
アメリカの納税関連? みたいな書類なども記載義務が会ったり、
申請しくると、アメリカの所得税?みたいのが取られたりするようなので、
googleで検索しまくって色々確認していました。
初めての事でより勉強になりました。
このAdSenseの収入は基本的に私の場合は雑所得に該当するが、
数十万? くらいにならなければ、とりあえずは大丈夫そうなど。
実際、現金を得るための時間や私自身のコストも考えると大赤字となるので、
あれですが。
とりあえず、そのお金で美味しいものでも食べる為に使おうと思ってます。
んじゃ またね。
2021/03/05
Nginxで "413 Request Entity Too Large" と怒られた。
とりあえず。
nginx.conf の client_max_body_size を アップ可能なサイズに変更するだけ。


