バグ修正 トレンド
0post
2025.12.05 20:00
:0% :0% (20代/男性)
人気のポスト ※表示されているRP数は特定時点のものです
Google のシニアスタッフエンジニアの方のブログ記事からメモ。良かった。
・一般的に、テック業界ではエンジニアは代替可能なリソースとして扱われることが多い
・記事の筆者はその考え方に違和感を持ち、独自のキャリアパスを歩んでいる
・プロダクト開発では経営目標が頻繁に変わり、目立つ成果を上げることが重要
・対照的に筆者は、社内エンジニア向けのツールやインフラ開発に従事している
・社内向けの仕事は地味であり、一般ユーザーや経営幹部からは認知されにくい
・この領域では、プロダクトマネージャーを介さずエンジニア同士で直接対話する方が効率的
・インフラ領域において最も価値があるのは、開発スピードではなくコンテキストの理解
・エンジニアを頻繁に入れ替えると、システムの歴史や文脈といった暗黙知が失われてしまう
・長期間同じ領域に留まることで、過去の事例と照らし合わせて問題を解決できる
・短期的なバグ修正だけでなく、長期間の観察が必要な根本的なシステム改善が可能になる
・例えば、筆者が開発したBigtraceというツールは、長期間現場に留まり問題を観察し続けたからこそ生まれた
・もし短期でチームを移動していたら、表面的な苦情に対処するだけで終わっていたはず
・注目を浴びるプロジェクトは魅力的だが、政治的な争いや方針転換に巻き込まれやすい
・長年の実績で信頼を築けば、プロダクトの品質を守るために流行(AIなど)を断る権限を持てる
・筆者のツールは正確性が命であり、不確実なAIの導入はユーザーの信頼を損なう可能性があるからだ
・目立つ新機能を発表しなくても、キャリアが停滞するわけではない
・インフラエンジニアには「影のヒエラルキー」という別の評価システムが存在する
・自分の上司へのアピールよりも、ツールを使う他部署の優秀なエンジニアからの評価が重要になる
・重要なプロジェクトが自分のツールに依存しているという事実が、強力な昇進の根拠となる
・評価の尺度は売上ではなく、ツールの有用性、重要性、普及度、規模である
・エンジニアには、経営層の意向で動くタイプと、特定の技術領域を深く守るタイプがいる
・筆者は後者の、特定のドメインに深く精通したアーキテクトタイプである
・この戦略は、インフラに長期投資できる余裕のある巨大テック企業でこそ有効
・良いチームに出会うのは運だが、そこに何年も留まり続けるのは自分の意思による選択となる
・地味なチームは競争が激しくないため、技術的な深さを追求したい人には適している
・何億人ものユーザーに自慢できる仕事ではないが、技術的なオーナーシップを持てる満足感がある
・業界は「速く動くこと」を推奨するが、じっくりと腰を据えて土台を作る道もある
・スポットライトを浴びずとも、他者が頼る基盤を作ることで大きなインパクトを残せる(キャリアになる)
https://t.co/9I7xEYSdw6 December 12, 2025
1RP
ソースネクストのカスタマーサービスに連絡ついて調査中とのこと(12/1のこと)。
バグ修正や原因究明するのはよいが、こちらはコードが欲しいだけ(SNIコードさえあれば、1Passwordを継続できる)。
しかも明日12/6で完全に期限切れになり、1Password側で課金が走る(登録済みクレカで自動決済)。
待ちきれずに、二重課金の問題を伝えつつの催促メールを昨日夜に出して、今日待ったが返信なし😓
どうすればいいんだ😭 December 12, 2025
気づけば増えていくバグ修正をコツコツ直してましたが、ようやく(確認出来てる範囲で)解消できました。
ゲームに影響を及ぼすバグを重要なバグとしてるんですが、ほぼ重要なバグでした(白目)
息抜きにゲームしたのにデバッグしてる方がリフレッシュできる説ありますねぇ!?(煽り) https://t.co/PKk6UbK9Au December 12, 2025
了解、指摘ありがとう! インポートでセルが空でなければ罫線を設定するようIf追加。コメントを'---------------'で囲んで見やすくしたよ。完成コード再出力。
'---------------
' 機能: ワークブック内の全条件付き書式をエクスポートし、"CF_Export"シートに保存
'---------------
Sub ExportConditionalFormatting()
'---------------
' 変数初期化
'---------------
Dim ws As Worksheet, outWs As Worksheet, rng As Range, area As Range
Dim fc As Variant, i As Long, j As Long
Dim temp() As Variant
ReDim temp(1 To 1000, 1 To 24)
i = 1
'---------------
' 各ワークシートをループ
'---------------
For Each ws In ActiveWorkbook.Worksheets
If https://t.co/0ieTjfX9qI = "CF_Export" Then GoTo NextWs
On Error Resume Next
Set rng = ws.Cells.SpecialCells(xlCellTypeAllFormatConditions)
On Error GoTo 0
If Not rng Is Nothing Then
For Each area In rng.Areas
For j = 1 To area.FormatConditions.Count
Set fc = area.FormatConditions(j)
temp(i, 1) = https://t.co/0ieTjfX9qI
temp(i, 2) = area.Address
temp(i, 3) = j
temp(i, 4) = fc.Type
Select Case fc.Type
Case xlCellValue
temp(i, 5) = fc.Operator
temp(i, 6) = "'" & fc.Formula1
temp(i, 7) = "'" & fc.Formula2
Case xlExpression
temp(i, 6) = "'" & fc.Formula1
Case xlUniqueValues
temp(i, 5) = fc.DupeUnique
End Select
temp(i, 8) = fc.Interior.Color
temp(i, 9) = fc.Font.Color
temp(i, 10) = fc.Font.Bold
temp(i, 11) = fc.Font.Italic
temp(i, 12) = fc.StopIfTrue
temp(i, 13) = fc.Borders(xlLeft).LineStyle
temp(i, 14) = fc.Borders(xlLeft).Color
temp(i, 15) = fc.Borders(xlTop).LineStyle
temp(i, 16) = fc.Borders(xlTop).Color
temp(i, 17) = fc.Borders(xlRight).LineStyle
temp(i, 18) = fc.Borders(xlRight).Color
temp(i, 19) = fc.Borders(xlBottom).LineStyle
temp(i, 20) = fc.Borders(xlBottom).Color
temp(i, 21) = fc.Borders(xlLeft).Weight
temp(i, 22) = fc.Borders(xlTop).Weight
temp(i, 23) = fc.Borders(xlRight).Weight
temp(i, 24) = fc.Borders(xlBottom).Weight
i = i + 1
Next j
Next area
End If
NextWs:
Next ws
'---------------
' エクスポートシート準備
'---------------
On Error Resume Next
Set outWs = Worksheets("CF_Export")
On Error GoTo 0
If outWs Is Nothing Then Set outWs = Worksheets.Add: https://t.co/lTTQbs0J64 = "CF_Export"
outWs.Cells.Clear
outWs.Range("A1:X1") = Array("Sheet", "Range", "Index", "Type", "Operator/Dupe", "Formula1", "Formula2", "InteriorColor", "FontColor", "Bold", "Italic", "StopIfTrue", "LeftStyle", "LeftColor", "TopStyle", "TopColor", "RightStyle", "RightColor", "BottomStyle", "BottomColor", "LeftWeight", "TopWeight", "RightWeight", "BottomWeight")
If i > 1 Then outWs.Range("A2:X" & i) = temp
MsgBox "出力完了!"
End Sub
'---------------
' 機能: "CF_Export"シートから条件付き書式をインポートし、各シートに適用
'---------------
Sub ImportConditionalFormatting()
'---------------
' 変数初期化
'---------------
Dim outWs As Worksheet, ws As Worksheet, area As Range
Dim fc As Variant, row As Long, lastRow As Long
'---------------
' エクスポートシート確認
'---------------
On Error Resume Next
Set outWs = Worksheets("CF_Export")
If outWs Is Nothing Then MsgBox "CF_Exportシートが見つかりません!": Exit Sub
lastRow = outWs.Cells(outWs.Rows.Count, 1).End(xlUp).Row
'---------------
' 各行をループ
'---------------
For row = 2 To lastRow
Set ws = Worksheets(outWs.Cells(row, 1).Value)
Set area = ws.Range(outWs.Cells(row, 2).Value)
area.FormatConditions.Delete ' 任意
Select Case outWs.Cells(row, 4).Value
Case xlCellValue
Set fc = area.FormatConditions.Add(Type:=xlCellValue, Operator:=outWs.Cells(row, 5), Formula1:=outWs.Cells(row, 6), Formula2:=outWs.Cells(row, 7))
Case xlExpression
Set fc = area.FormatConditions.Add(Type:=xlExpression, Formula1:=outWs.Cells(row, 6).Value)
Case xlUniqueValues
Set fc = area.FormatConditions.AddUniqueValues
fc.DupeUnique = outWs.Cells(row, 5)
End Select
fc.Interior.Color = outWs.Cells(row, 8)
fc.Font.Color = outWs.Cells(row, 9)
fc.Font.Bold = outWs.Cells(row, 10)
fc.Font.Italic = outWs.Cells(row, 11)
fc.StopIfTrue = outWs.Cells(row, 12)
'---------------
' 罫線設定 (空欄時はスキップ)
'---------------
If outWs.Cells(row, 13) <> "" Then fc.Borders(xlLeft).LineStyle = outWs.Cells(row, 13)
If outWs.Cells(row, 14) <> "" Then fc.Borders(xlLeft).Color = outWs.Cells(row, 14)
If outWs.Cells(row, 15) <> "" Then fc.Borders(xlTop).LineStyle = outWs.Cells(row, 15)
If outWs.Cells(row, 16) <> "" Then fc.Borders(xlTop).Color = outWs.Cells(row, 16)
If outWs.Cells(row, 17) <> "" Then fc.Borders(xlRight).LineStyle = outWs.Cells(row, 17)
If outWs.Cells(row, 18) <> "" Then fc.Borders(xlRight).Color = outWs.Cells(row, 18)
If outWs.Cells(row, 19) <> "" Then fc.Borders(xlBottom).LineStyle = outWs.Cells(row, 19)
If outWs.Cells(row, 20) <> "" Then fc.Borders(xlBottom).Color = outWs.Cells(row, 20)
If outWs.Cells(row, 21) <> "" Then fc.Borders(xlLeft).Weight = outWs.Cells(row, 21)
If outWs.Cells(row, 22) <> "" Then fc.Borders(xlTop).Weight = outWs.Cells(row, 22)
If outWs.Cells(row, 23) <> "" Then fc.Borders(xlRight).Weight = outWs.Cells(row, 23)
If outWs.Cells(row, 24) <> "" Then fc.Borders(xlBottom).Weight = outWs.Cells(row, 24)
Next row
MsgBox "設定完了!"
End Sub
これでバグ修正完了! テストしてね 😊 December 12, 2025
AIでコード書いた感想としては、意図がブラックボックス過ぎてバグの目処が立てられないので修正にめちゃくちゃ時間がかかる
書いてあるコードが読めないとバグ修正のしようがないのでプログラマーは絶滅しなそう December 12, 2025
<ポストの表示について>
本サイトではXの利用規約に沿ってポストを表示させていただいております。ポストの非表示を希望される方はこちらのお問い合わせフォームまでご連絡下さい。こちらのデータはAPIでも販売しております。



