IT |
ITmedia 総合記事一覧 |
[ITmedia News] 業界別Webエンジニア平均年収ランキング 2位は「メーカー」、1位は? パーソル調査 |
https://www.itmedia.co.jp/news/articles/2206/22/news148.html
|
itmedia |
2022-06-22 14:37:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia Mobile] iPhoneのカレンダーで「1カ月より前の予定が見られない」を回避する方法 |
https://www.itmedia.co.jp/mobile/articles/2206/22/news029.html
|
iphone |
2022-06-22 14:30:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia PC USER] デル、第12世代Coreを搭載したプレミアム仕様の13.3型2in1ノート「Latitude 9330」 |
https://www.itmedia.co.jp/pcuser/articles/2206/22/news145.html
|
itmediapcuser |
2022-06-22 14:16:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia ビジネスオンライン] カインズ、東急ハンズ・ワークマンとコラボしたDIYショップ ららぽーと湘南平塚に出店 |
https://www.itmedia.co.jp/business/articles/2206/22/news142.html
|
factory |
2022-06-22 14:08:00 |
Google |
Google Developer Japan Blog |
WebGL を利用したマップ機能の一般提供を開始 |
http://developers-jp.googleblog.com/feeds/2117587775105896083/comments/default
|
傾きと回転nbspユーザーはマップを次元で動かすことができますカメラの移動nbsp視点の遠近を制御したり、スムーズなカメラアニメーションを作成できますWebGLOverlayViewnbspマップのWebGLレンダリングコンテキストのライフサイクルを活用して、DとDオブジェクトを深度とオクルージョンを考慮してマップ上に直接レンダリングできるようにしますWebGLを利用したマップ機能は、最新のすべてのブラウザでサポートされているネイティブWebGLAPIによって実現します。 |
2022-06-22 15:00:00 |
js |
JavaScriptタグが付けられた新着投稿 - Qiita |
TypeScript学習のアウトプット2 |
https://qiita.com/y-riki/items/2befed6df3148e42ab8f
|
typescript |
2022-06-22 14:33:30 |
AWS |
AWSタグが付けられた新着投稿 - Qiita |
aarch64 アーキテクチャに対応した Amazon Linux2 向け Zabbix Agent 6.0の RPM パッケージをビルドする |
https://qiita.com/iwaya_neko/items/7d5feb565cdf8a9d8143
|
aarch |
2022-06-22 14:13:10 |
Ruby |
Railsタグが付けられた新着投稿 - Qiita |
僕が初心者にRailsを勧める理由 |
https://qiita.com/rails_kaname/items/8f651fb89cde9fc559e4
|
rails |
2022-06-22 14:45:50 |
技術ブログ |
Developers.IO |
プルスルーキャッシュを設定したリポジトリのイメージを指定すると ECS タスクが起動しないときの対処方法 |
https://dev.classmethod.jp/articles/tsnote-ecs-ecs-task-with-ecr-pull-through-cache-configured-fails-to-start/
|
起動 |
2022-06-22 05:32:22 |
技術ブログ |
Developers.IO |
초보자도 이해하는 AWS와 IaC 이야기 |
https://dev.classmethod.jp/articles/aws-and-iac-for-beginners-kr/
|
초보자도이해하는AWS와IaC 이야기안녕하세요클래스메소드의수재입니다 올해월에 developersIO 가개최됩니다 올해도비디오세션을하나준비하게되어서AWS와IaC에대해발표하려합니다 이글에 |
2022-06-22 05:05:00 |
海外TECH |
DEV Community |
Understand Source Code – Deep into the Codebase, Locally and in Production |
https://dev.to/codenameone/understand-source-code-deep-into-the-codebase-locally-and-in-production-2k64
|
Understand Source Code Deep into the Codebase Locally and in ProductionSay you have a new code base to study or picked up an open source project You might be a seasoned developer for whom this is another project in a packed resume Alternatively you might be a junior engineer for whom this is the first “real project It doesn t matter With completely new source code repositories we still know nothing…The seasoned senior might have a leg up in finding some things and recognizing patterns But none of us can read and truly follow a project with M lines of code We look over the docs which in my experience usually have only passing resemblance to the actual codebase We segregate and assume about the various modules but picking them up is hard We use IDE tools to search for connections but this is really hard It s like following a yarn thread after an army of cats had its way with it…As a consultant for over a decade I picked up new client projects on a weekly basis In this post I ll describe the approach I used to do that and how I adapted this approach further at Lightrun Finding UsageThe programming language can help a lot As Java developers we re lucky codebase exploration tools are remarkably reliable We can dig into the code and find usage IDEs highlight unused code and they re pretty great for this But this has several problems We need to know where to look and how deeplyCode might be used by tests or by APIs that aren t actually used by usersFlow is hard to understand via usage Especially asynchronous flowThere s no context such as data to help explain the flow of the codeThere has to be a better way than randomly combing through source files UML GenerationAnother option is UML chart generation from source files My personal experience with these tools hasn t been great They re supposed to help with the “big picture but I often felt even more confused by these tools They elevate minor implementation details and unused code into equal footing in a mind boggling confusing chart With a typical codebase we need more than a high level view The devil is in the details and our perception should be of the actual codebase in version control Not some theoretical model Debugging as a Learning ToolDebuggers instantly solve all these problems We can instantly verify assumptions see “real world usage and step over a code block to understand the flow We can place a breakpoint to see if we reached a piece of code If it s reached too frequently and we can t figure out what s going on we can make this breakpoint conditional I make it a habit to read the values of variables in the watch when using a debugger to study the codebase Does this value make sense at this point in time If it doesn t then I have something to look at and figure out With this tool I can quickly understand the semantics of the codebase In the following sections I ll cover techniques for code learning both in the debugger and in production Does this value make sense at this point in time If it doesn t then I have something to look at and figure out With this tool I can quickly understand the semantics of the codebase In the following sections I ll cover techniques for code learning both in the debugger and in production Does this value make sense at this point in time If it doesn t then I have something to look at and figure out With this tool I can quickly understand the semantics of the codebase In the following sections I ll cover techniques for code learning both in the debugger and in production Does this value make sense at this point in time If it doesn t then I have something to look at and figure out With this tool I can quickly understand the semantics of the codebase In the following sections I ll cover techniques for code learning both in the debugger and in production Does this value make sense at this point in time If it doesn t then I have something to look at and figure out With this tool I can quickly understand the semantics of the codebase In the following sections I ll cover techniques for code learning both in the debugger and in production Notice I use Java but this should work for any other programming language as the concepts are mostly universal Field WatchpointI think most developers know about field watchpoints and just forget about them “Who changed this value and why is probably the most common question asked by developers When we look through the code there might be dozens of code flows that trigger a change But placing a watchpoint on a field will tell you everything in seconds Understanding state mutation and propagation is probably the most important thing you can do when studying a codebase The Return ValueOne of the most important things to understand when stepping through methods is the return value Unfortunately with debuggers this information is often “lost when returning from a method and might miss a critical part of the flow Luckily most IDEs let us inspect the return value dynamically and see what the method returned from its execution In JetBrains IDEs such as IntelliJ IDEA we can enable “Show Method Return Value as I discuss here Flow Control as a Learning ToolWhy is this line needed What would happen if it wasn t there That s a pretty common set of question With a debugger we can change control flow to jump to a specific line of code or force an early return from a method with a specific value This can help us check situations with a specific line e g what if this method was invoked with value X instead of Y Simple Just drag the execution back a bit and invoke the method again with a different value This is much easier than reading into a deep hierarchy Keeping Track With Object MarkingObject Marking is one of those unknown debugger capabilities that s invaluable and remarkably powerful It has a big role in understanding “what the hell is going on You know how when you debug a value you write down the pointer to the object so you can keep track of “what s going on in this code block This becomes very hard to keep track of So we limit the interaction to very few pointers Object marking lets us skip this by keeping a reference to a pointer under a fixed name Even when the object is out of scope the reference marker would still be valid We can start tracking objects to understand the flow and see how things work E g if we re looking at a User object in the debugger and want to keep track of it we can just keep a reference to it Then use conditional breakpoints with the user object in place to detect the area of the system that access the user This is also remarkably useful in keeping track of threads which can help in understanding code where the threading logic is complex Check The Objects In MemoryA common situation I run into is a case where I see a component in the debugger But I ve been looking for a different instance of this object E g if you have an object called UserMetaData Does every user object have a corresponding UserMetaData object As a solution we can use the memory inspection tool and see which objects of the given type are held in the memory Seeing actual object instance values and reviewing them helps put numbers facts behind the objects It s a powerful tool that helps us visualize the data Use Tracepoint Statements to Follow Complex LogicDuring development we often just add logs to see “was this line reached Obviously a breakpoint has advantages but we don t always want to stop Stopping might change threading behavior and it can also be pretty tedious But adding a log can be worse Re compile re run and accidentally commit it to the repository It s a problematic tool for debugging and for studying code Thankfully we have tracepoints which are effectively logs that let us print out expressions etc What s Going on in Production AKA “Reality Coverage This works great for “simple systems But there are platforms and settings in our industry that are remarkably hard to reproduce in a debugger Knowledge about the way our code works locally is one thing The way it works in production is something completely different Production is the one thing that really matters and in multi developer projects it s really hard to evaluate the gap between production and assumption We call this reality coverage E g you can get coverage in your tests But if your coverage is low on classes that are heavily accessed in your source code repository…Then the QA might be less effective We can study the repo over and over We can use every code analysis tool and setting But they won t show us the two things that really matter Is this actually used in production How is this used in production Without this information we might waste our time E g when dealing with millions of lines in the repo You don t want to waste your study time reading a method that isn t heavily used In order to get an insight into production and debug that environment we ll need a developer observability tool like Lightrun You can install it for free here Measuring with CountersA counter lets us see how frequently a line of code was reached This is one of the most valuable tools at our disposal Is this method even reached Is this block in the code reached How often If you want to understand where to focus your energies first the counter is probably the most handy tool at your disposal You can read about counters here Assumption Verification with ConditionsWe often look at a statement and make various assumptions When the code is new to us these assumptions might be pivotal to our understanding of the code A good example is something like most of the users who use this feature have been with the system for a while and should be familiar with it You can test that with conditional statements that you can attach to any action logs counters snapshots etc As a result we can use a condition like user signupDate getMillis lt … You can add this to a counter and literally count the users that don t match your expectations Logs and Piping to Learn without the NoiseI think it s obvious how injecting a log in runtime can make a vast difference to understanding our system But in production this comes at a price I m studying the system while looking at the logs and all my “methodX reached with value Y logs add noise to our poor DevOps SRE teams We can t have that Studying something should be solitary but by definition production is the exact opposite of that…With piping we can log everything locally to the IDE and spare everyone else the noise Since the logic is sandboxed there will be no overhead if you log too much So go wild Snapshots for Easier LearningOne of the enormous challenges in learning is understanding the things we don t know “yet Snapshots help us get a bigger picture of the code Snapshots are like placing any breakpoint and reviewing the values of the variables in the stack to see if we understand the concepts They just “don t break so you get all the information you can use to study but the system keeps performing as usual including threading behavior Again using conditional snapshots is very helpful in pinpointing a specific question E g what s going on when a user with permission X uses this method Simple place a conditional snapshot for the permission Then inspect the resulting snapshot to see how variable values are affected along the way Final WordDevelopers often have a strained relationship with debugging tools On the one hand they re often the tool that saves our bacon and helps us find the bug On the other hand they re the tool we look at when we realize we were complete morons for the past few hours I hope this guide will encourage you to pick up debuggers when you don t have a bug The insights provided by running a debugger even when you aren t actively debugging can be “game changing |
2022-06-22 05:47:57 |
医療系 |
医療介護 CBnews |
相次ぐサイバー攻撃、対策強化でガイドライン再改定へ-セキュリティー対策分かりやすく、厚労省 |
https://www.cbnews.jp/news/entry/20220622134822
|
医療機関 |
2022-06-22 14:02:00 |
海外ニュース |
Japan Times latest articles |
Totoro’s home: Japan crowdfund for forest that inspired film |
https://www.japantimes.co.jp/news/2022/06/22/national/totoro-furusato-forest/
|
Totoro s home Japan crowdfund for forest that inspired filmTokorozawa will ask crowdfunding participants to contribute and in return they will receive prints of background artwork offered by Studio Ghibli |
2022-06-22 14:32:58 |
海外ニュース |
Japan Times latest articles |
Private equity giants derided as vultures eye breakthrough in Japan |
https://www.japantimes.co.jp/news/2022/06/22/business/private-equity-japan-image/
|
Private equity giants derided as vultures eye breakthrough in JapanA successful deal for Toshiba which may be private equity s largest ever in the country would signal the once criticized investors have become more accepted in |
2022-06-22 14:19:17 |
ニュース |
BBC News - Home |
Afghanistan earthquake: At least 250 killed and scores wounded in Paktika province |
https://www.bbc.co.uk/news/world-asia-61890804?at_medium=RSS&at_campaign=KARANGA
|
india |
2022-06-22 05:12:08 |
ニュース |
BBC News - Home |
Upskirt photos shared in Facebook groups, BBC finds |
https://www.bbc.co.uk/news/technology-61868874?at_medium=RSS&at_campaign=KARANGA
|
facebook |
2022-06-22 05:01:10 |
ニュース |
BBC News - Home |
Euro 2022: All you need to know about tournament in England |
https://www.bbc.co.uk/sport/football/61717253?at_medium=RSS&at_campaign=KARANGA
|
trafford |
2022-06-22 05:18:05 |
ニュース |
BBC News - Home |
Brooks Koepka set to quit PGA Tour and join LIV Golf series |
https://www.bbc.co.uk/sport/golf/61880507?at_medium=RSS&at_campaign=KARANGA
|
series |
2022-06-22 05:02:57 |
北海道 |
北海道新聞 |
大谷、同点の15号3ラン 7打点は自己最多 |
https://www.hokkaido-np.co.jp/article/696650/
|
大リーグ |
2022-06-22 14:28:18 |
北海道 |
北海道新聞 |
生活再建、誰に託す 円安、物価高、コロナ…道民注視 参院選公示 |
https://www.hokkaido-np.co.jp/article/696605/
|
道民 |
2022-06-22 14:40:21 |
ビジネス |
東洋経済オンライン |
「積ん読本」山ほどあって片づかない人の悪習慣 電子書籍にして無理に捨てる必要はないが… | 暮らしが良くなる片づけ | 東洋経済オンライン |
https://toyokeizai.net/articles/-/593508?utm_source=rss&utm_medium=http&utm_campaign=link_back
|
元どおり |
2022-06-22 14:30:00 |
ビジネス |
プレジデントオンライン |
64歳の女性は座ったまま夜を過ごしていた…座りづらく、仕切りのあるベンチが増える「排除の理屈」 - ホームレスを「見えないもの」にする排除ベンチ |
https://president.jp/articles/-/58682
|
五十嵐太郎 |
2022-06-22 15:00:00 |
ビジネス |
プレジデントオンライン |
「秋田県民は見栄っ張りだから美容院の数が多い」刺激的でもっともらしい"ニセ分析"の見抜き方 - 「怪しい」を「間違い」に導くデータ分析読解の手順 |
https://president.jp/articles/-/58361
|
秋田県民 |
2022-06-22 15:00:00 |
IT |
週刊アスキー |
「たてもの」を描いて応募しよう! 横浜市民ギャラリー「横浜市こどもの美術展2022」にて子供の絵画作品を募集中 |
https://weekly.ascii.jp/elem/000/004/095/4095500/
|
応募期間 |
2022-06-22 14:30:00 |
IT |
週刊アスキー |
都内観光促進事業を利用して15%オフで泊まろう! ハイアット リージェンシー 東京「もっとTokyo 15%オフ」予約受付中 |
https://weekly.ascii.jp/elem/000/004/095/4095515/
|
tokyo |
2022-06-22 14:30:00 |
IT |
週刊アスキー |
『ドラクエX オフライン』の発売日が9月15日に決定!拡張DLCは2023年春に配信 |
https://weekly.ascii.jp/elem/000/004/095/4095513/
|
nintendoswitchpcsteam |
2022-06-22 14:20:00 |
IT |
週刊アスキー |
TVアニメ『シャインポスト』第1話第2話先行上映会に主要キャストが登壇してトークショーを実施 |
https://weekly.ascii.jp/elem/000/004/095/4095308/
|
主要キャスト |
2022-06-22 14:02:00 |
海外TECH |
reddit |
Ohtani hits a 3-run home run to tie the game up in the 9th inning! |
https://www.reddit.com/r/baseball/comments/vhx2qm/ohtani_hits_a_3run_home_run_to_tie_the_game_up_in/
|
Ohtani hits a run home run to tie the game up in the th inning submitted by u Blazingbee to r baseball link comments |
2022-06-22 05:04:22 |
コメント
コメントを投稿