Ramzi Akremi

80 posts

Ramzi Akremi banner
Ramzi Akremi

Ramzi Akremi

@rakremi

Opinions are my own! Passionate about Software Engineering in the Salesforce space, and how to make the complex less daunting. "Go slow in order to go fast"

Melbourne Katılım Ekim 2011
47 Takip Edilen74 Takipçiler
Ramzi Akremi retweetledi
Jason Lantz
Jason Lantz@jasontlantz·
Introducing D2X, a new open source Salesforce DevOps tool designed to make it easy to launch projects fully configured to leverage all of GitHub that align with the Salesforce Well-Architected principles of Adaptable (Resilient and Composable). muselab.com/d2x
English
0
5
7
825
Ramzi Akremi retweetledi
dxatscale
dxatscale@dxatscale·
January 23 Release Notes have been published for the DX@Scale Team. New Craft-First Frameworks available and as new features in sfpowerscripts to explore. Head over and review whats new at github.com/dxatscale/dxat… Thanks everybody for the support and collaboration!
English
0
1
1
184
Ruslan Kurchenko 🇺🇦
Ruslan Kurchenko 🇺🇦@ruslankurchenko·
I can express my gratitude enough to @azlus, Vu Ha, Ramzi, and the @dxatscale community. You guys supported me tremendously in implementing our CI/CD pipeline. Thank You! Please, reach out to me any time if you need anything 🙏 4/4
English
2
0
4
240
Ramzi Akremi retweetledi
Ruslan Kurchenko 🇺🇦
Ruslan Kurchenko 🇺🇦@ruslankurchenko·
It has been about 6 months since we adopted @dxatscale in @khealth. It is the best time and effort investment for our Salesforce delivery pipeline. To make it even more precise - I can't imagine working with other CI/CD solutions on this platform in the future. #sfruslan 1/4 🧵
Ruslan Kurchenko 🇺🇦 tweet media
English
1
7
19
2K
Ramzi Akremi retweetledi
dxatscale
dxatscale@dxatscale·
As of today, 150 Orgs are on a modular development model using @dxatscale practices and tools. Its easier than you think.. Get started today!
English
0
2
5
0
Ramzi Akremi retweetledi
Robert Sösemann
Robert Sösemann@rsoesemann·
We all agree: Dev Teams need rules to be successful. But where is the sweet spot between anarchy and bureaucracy? My answer: Craftsmanship plus a few simple Ground Rules. I did a presentation about the rules I use at #SFSummit22 today. Here's the recording youtube.com/watch?v=khSSaY…
YouTube video
YouTube
English
2
3
22
0
Ramzi Akremi
Ramzi Akremi@rakremi·
@adamwathan, silly question: What is the "tailwindcss" way for the "font-stretch" property? Seen Mona Sans and Hubot from @github, and they look gorgeous!
English
0
0
0
0
Ramzi Akremi
Ramzi Akremi@rakremi·
@afalker @dxatscale Yes! It does not need to be org dependent. As long as you declare the package dependency.
English
0
0
0
0
Robert Sösemann
Robert Sösemann@rsoesemann·
Watched this Youtube Series of this guy refactoring real-world code and loved it. Would anybody be interested in doing a channel where we do this for Apex? youtube.com/watch?v=p-oWHE…
YouTube video
YouTube
English
8
1
30
0
Ramzi Akremi
Ramzi Akremi@rakremi·
@AndrewDavis_io @dxatscale @ramziakremi The beauty of testing in isolation. The Ruby or Elixir communities were our main source of inspiration. This requires to tuck away everything that triggers IO (database, network, ...)
English
0
1
2
0
Ramzi Akremi retweetledi
Robert Sösemann
Robert Sösemann@rsoesemann·
2022 seems to be the year of Open Source Apex Parsers. Just 2 weeks ago #aheber published this one. It's JS-based and uses the Tree-Sitter parser generator. github.com/aheber/tree-si…
Robert Sösemann tweet media
English
4
4
32
0
Robert Sösemann
Robert Sösemann@rsoesemann·
@theodoorvd @rakremi @azlus I believe keeping ALL business logic in ONE place is more important than everything else. I get why Services (I call them Commands) should be context-free. Here is an example of how I achieve both. Primarily by moving context & filtering into variants of the Command constructor.
Robert Sösemann tweet mediaRobert Sösemann tweet mediaRobert Sösemann tweet media
English
1
0
2
0
Ramzi Akremi
Ramzi Akremi@rakremi·
@rsoesemann @azlus So finally, I think that I am going to land on: the trigger handler responsibility is to re-create the business context, format and to rely on the Service to execute the business logic. The handler is still a View :D
English
1
0
2
0
Robert Sösemann
Robert Sösemann@rsoesemann·
@rakremi @azlus why do move the filtering of records into the trigger? In most cases, this relevance decision is part of the business logic. I put all decision into the Service classes.
Robert Sösemann tweet media
English
7
0
5
0
Ramzi Akremi
Ramzi Akremi@rakremi·
@rsoesemann @azlus The reason why we did that was that we didn't want the Service to handle the maps populated by the trigger. The Service should be re-usable no matter what is triggering it (trigger, LWC, inbound integration)
English
0
0
1
0
Ramzi Akremi
Ramzi Akremi@rakremi·
@rsoesemann @azlus We had instances where we wanted to check the modification of a specific field and trigger the associated logic. That "filtering" logic or better context creation was done in the handler.
English
0
0
1
0