-
Notifications
You must be signed in to change notification settings - Fork 122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Blog text about green coding #517
Conversation
|
||
When working with the Power Platform, one might easily think that developers can't do much. The platform takes care of most things like scaling, data savings, and cloud servers. Here, green coding comes into play. | ||
|
||
Green coding is a method of coding that aims to minimize the energy required to process lines of code. While there are no studies available on the efficiency of Power FX (if I were to speculate, there might not be much to brag about it, given that high-level coding languages, like JavaScript, are not typically the most efficient), and we lack the ability to select the language in Canvas apps, our attention should be directed towards enhancing the energy efficiency of our apps through alternative means. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what does it mean to "process lines of code"? does it mean how much overhead the language brings? a single line could be run 1 time or a million times.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what is a "Canvas app", perhaps link to some explanation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Added some clarification ( Process lines of codes --> process single line of code), and some links to power platform and canvas app, to provide more context
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
still, what does it mean? x = x + 1
is obviously much cheaper than myVeryBigList.sort()
, but both are single lines of code.
Does it mean some calculated average of the efficiency of the language? If there's some link to a good definition, that could be added.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure, what is the unclear part. Do you mean Is the definition of Green coding unclear or is the process word that causes confusion? Apparently I'm already way too familiar with my text :D
Green coding itself does not have a strict definitions (at least yet), it could be defined as "way of coding that consumes minimal energy" (which leaves it a bit wider). There are different ways to calculate and measure the efficiency of the code (i think it's more about how much computational power it requires compared to what it does and is there ways to reach same outcome with less energy needed) but I'm not that far yet to understand how those could be implemented in power platform development.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mainly how it is calculated... you state there are now studies on efficiency of "Power FX", but are there studies for other languages? How do they define the efficiency terms. Perhaps a link to some review or further text regarding the topic.
I could find this, https://dl.acm.org/doi/10.1145/3136014.3136031 (paywalled) and another referencing it https://www.efinancialcareers.com/news/2023/06/which-programming-language-uses-the-most-energy
If you have some good link for the efficiency, it would be good for the uninitiated reader.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, Now I Got It! I think the study from Pereira et al (2017, the link that was in the paywall) is still the best paper there is on this subject.
There are also some updates done to it. I added a link to it in the blog post, where you can read the paper and measuring methods more =)
https://sites.google.com/view/energy-efficiency-languages/home
|
||
The ICT sector (including data centers, communication networks, and user devices) is estimated to account for [around 4-6% of global electricity usage.](https://post.parliament.uk/research-briefings/post-pn-0677/) When discussing CO2 or greenhouse gas emissions, the ICT sector's emissions primarily stem from electricity consumption. As an app developer, I don’t have the power to dictate the type of electricity end-users or data centers use; therefore, I should focus on reducing the energy consumption of the app. | ||
|
||
When working with the Power Platform, one might easily think that developers can't do much. The platform takes care of most things like scaling, data savings, and cloud servers. Here, green coding comes into play. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could make "Power Platform" a link to it, I'm unfamiliar with it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
added!
- Power Automate | ||
--- | ||
|
||
![Illustartion of how green software divedes to energt effiency, hardware effiency and carbon awarness](/img/2024-Power-Platform/Green%20Sofware%20Principles.png) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
typos: illustartion, divedes, energt, awarness
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! The only part that I updated directly and did not go trough grammar check facepalm
|
||
# Closing words and learning content | ||
|
||
"Hopefully, this has provided you with new ideas for finding greener ways to low code. As development progresses towards more sustainable software, we anticipate the emergence of additional best practices and automated solutions to further reduce carbon emissions and energy consumption in Power Platform solutions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
opening quotation that doesn't seem to end
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed!
…stainable-Canvas-App-and-Power-Automate-Development Typo fixes in in alt text, code process clarification and adding some links to provide more context.
Here is a new blog post with pictures for Dev blog, subject green coding and power platform. I'm a new writer, so edited also config file.