Michael Warkentin
11K posts

Michael Warkentin
@mwarkentin
SRE @getsentry. Son of a preacher, man. @[email protected]
iPhone: 43.640385,-79.384995 가입일 Mart 2008
669 팔로잉516 팔로워

First up is the Financial Freedom Calculator!
maybe.co/tools/financia…
See how long your savings will last by accounting for your monthly expenses and savings growth rate.

English
Michael Warkentin 리트윗함

First of all, we set up @getsentry which is always a delightful way to discover what's going on with your app in production
In the past when I first set it up, there has been a flurry of fixing things as you're made aware of issues that you weren't aware of before you had o11y
English

@AtomicLang Planetscale is Vitess (vitess.io), not raw MySQL btw.
English

@zeeg @NotTuxedoSam We’re using it the right way at least.. if someone introduces it as an intra-service event bus, run away!
English

@raindrop_io I’ve been having issues with Sign in with Apple for the last day or two, not sure if there’s any issues on your end? After authenticating with Apple it just seems to hang there.
English

I've finally fixed my integration with @getsentry on my personal site and gosh why did I wait so long to do that? This thing's incredible.
English

@badthingsdaily 505 of your 700 employees have resigned.
theverge.com/2023/11/20/239…
English

RT @dkhan: PSA: Dedicated Metrics are coming to @getsentry 🚀
Soon, you can send metrics to Sentry through all of our SDKs, and we will con…
English

@zeeg Cloudflare seems like our only hope on this end: blog.cloudflare.com/aws-egregious-…
developers.cloudflare.com/r2/pricing/
English

@zeeg Yeah, I don’t know why none of them did (ansible seems like it tried with stuff like docs.ansible.com/ansible/latest…..)
English

@mwarkentin chef/ansible/puppet/salt were the same thing under the hood. os config is stlil just APIs as the end of the day. its just function calls.
Just feels like we really didnt have to reinvent the wheel (yet again).
English

@zeeg convox.com was fantastic back in the day (basically Heroku on top of AWS ECS) but they migrated to Kubernetes and it was ruined. :(
Built a $500M company before that on it though, not bad!
github.com/convox
English

@zeeg @getsentry Key takeaways for Terraform:
- Declarative, API focused
- *Massive* provider ecosystem (~3500 providers, probably millions of “resources”)
- basic CRUD
Here’s a toy provider I built: github.com/mwarkentin/ter…
Literally Create, Read, Update, Delete
English

@zeeg @getsentry There are some cross-overs - Terraform can do some configuration of an OS on VM launch by providing a provisioning script to the cloud API, and maybe there’s a plugin for ansible or chef that provide a way to manage things through the Sentry API
English

𝗙𝗮𝗰𝗲𝗯𝗼𝗼𝗸 𝗰𝗿𝗲𝗮𝘁𝗲𝗱 𝗮 𝘁𝗼𝗼𝗹 𝘄𝗵𝗶𝗰𝗵 𝗱𝗲𝘁𝗲𝗰𝘁 𝗮𝗻𝗱 𝗿𝗲𝗽𝗮𝗶𝗿 𝗯𝘂𝗴𝘀 𝗮𝘂𝘁𝗼𝗺𝗮𝘁𝗶𝗰𝗮𝗹𝗹𝘆
The recent document by engineers from Facebook explains how they wrote a tool that can automatically fix bugs. In the paper, they introduced 𝗦𝗔𝗣𝗙𝗜𝗫, an automated tool designed to detect and repair bugs in software. The tool has suggested fixes for six essential Android apps in the Facebook App Family: Facebook, Messenger, Instagram, FBLite, Workplace, and Workchat.
How Does It Work?
𝗦𝘁𝗲𝗽 𝟭: Detect a Crash - Another tool, 𝗦𝗮𝗽𝗶𝗲𝗻𝘇, finds app crashes. When Sapienz identifies a crash, it is logged into a database.
𝗦𝘁𝗲𝗽 𝟮: Identify the Problem - SAPFIX pinpoints the exact line of code causing the issue. It first checks if the crash is reproducible. If it's not reproducible, the crash is discarded. It uses a technique called "spectrum-based fault localization" to identify the most likely lines of code responsible for the crash.
𝗦𝘁𝗲𝗽 𝟯: Suggest a Fix - Using predefined templates or code mutations, SAPFIX proposes a solution. After identifying the fault location, SAPFIX attempts to generate a patch. It employs two strategies:
🔹 𝗧𝗲𝗺𝗽𝗹𝗮𝘁𝗲-𝗯𝗮𝘀𝗲𝗱 𝗙𝗶𝘅𝗶𝗻𝗴: SAPFIX uses predefined templates to suggest fixes for common bugs. These templates are designed based on standard developer practices.
🔹 𝗠𝘂𝘁𝗮𝘁𝗶𝗼𝗻-𝗯𝗮𝘀𝗲𝗱 𝗙𝗶𝘅𝗶𝗻𝗴: SAPFIX resorts to a mutation-based system if the template-based approach fails. It systematically applies a series of code mutations to the fault location to generate potential fixes.
𝗦𝘁𝗲𝗽 𝟰: Test the Fix - The proposed solution is tested to ensure it's valid. It uses the test cases from 𝗦𝗮𝗽𝗶𝗲𝗻𝘇 to check the validity of the patch. If the patch passes all tests, it's considered a good fix. After patch validation, SAPFIX uses 𝗜𝗻𝗳𝗲𝗿 (a static analysis tool) to analyze the proposed fix further. Infer checks if the patch introduces any new potential issues.
𝗦𝘁𝗲𝗽 𝟱: Review - Developers get the final say, reviewing and approving the fix.
Check the entire document in the comments.
Image credits: Facebook.
What do you think about this?
_______
If you like my posts, please follow me, @milan_milanovic, and hit the 🔔 on my profile to get a notification for all my new posts.
Grow with me 🚀!
#technology #softwareengineering #programming #techworldwithmilan #coding

English
Michael Warkentin 리트윗함

@getsentry leading the way, showing companies how it's done
if everyone allocated budget to regular sponsorship, in small amounts, of their opensource dependency devs, I bet a lot of opensource maintainers could afford to allocate regular time to maintenance
Chad Whitacre ⇌@chadwhitacre
Aiming for 97% in this org and likely similar in the other two (codecov, syntaxfm).
English

@fux0r I don’t think we’ve published details for 2023 yet, but they should be coming soon. :) See blog.sentry.io/we-just-gave-2… as an example from last year.
English

thanks, @getsentry it's really appreciated
I'd be interested to know what work of mine is useful to you, ie the reason for the sponsorship - just curious!

English


