Skip to content
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

Manifest for the IF docs website #58

Closed
3 of 4 tasks
Tracked by #61
jawache opened this issue Jul 16, 2023 · 9 comments
Closed
3 of 4 tasks
Tracked by #61

Manifest for the IF docs website #58

jawache opened this issue Jul 16, 2023 · 9 comments
Assignees
Milestone

Comments

@jawache
Copy link
Contributor

jawache commented Jul 16, 2023

What
Create a manifest file that uses CO2js to estimate the carbon emissions from our IF docs website

Why

To dogfood our own tech!

Context

For a first attempt at capturing our website carbon emissions, we can use the Green Web Foundation's CO2js package, invoking the Sustainable Web Design Model. This uses the amount of data transferred when a site loads as a basis for a top down estimate of the carbon emissions for that website.

I'll also look into bottom-up approaches while this top-down model is being implemented.

The way I'd like to do this is for @manushak to create a manifest file that initializes the CO2js plugin and passes all the arguments that are accepted by the CO2js perVisitTrace function, returning all the response parameters as output data.

The idea would be that it a) clarifies precisely what information I need to source in order to estimate the website carbon emissions, and b) when that data is available, I just have to slot it into the right place in the manifest and run it.

SoW

  • @manushak creates a template manifest that runs with dummy data
  • @jmcook1186 sources real data for each model parameter
  • Real data is inserted into the manifest - running the manifets yields an estimate of CO2e/visit

Acceptance Criteria

  • A manifest is available that can be run using IF to yield a carbon emission per visit.
@jawache jawache added this to the Phase 1 - Measuring - POC milestone Jul 16, 2023
@jawache jawache self-assigned this Jul 16, 2023
@jawache jawache added this to IF Jul 16, 2023
@jawache jawache changed the title Creating an SCI score/IMPL for the Green Software Foundation Website (Handling R) Creating an SCI score for the GSF Website & handling R Jul 16, 2023
@jawache
Copy link
Contributor Author

jawache commented Jul 20, 2023

As discussed on project call.

  • There is a time component to every impact calculation.
  • Every component will measure at a certain frequency, monthly, daily, hourly, minutes.
  • All measurements/telemetry will have to be normalized/extrapolated/interpolated to match that global frequency for things to be summed up properly.

e.g. If two components might have different frequencies of measurement e.g. carbon intensity of grid is every 5 mins, CPU utilization every 5 seconds and the global frequency was set to 1 hour. Then all the measurements would have to be normalized into 1hr buckets before being passed into the models.

Another approach would be we define the global freq, and you MUST provide data at that frequency, if not the calculation fails.

Interval.

Can query measurements for different interval.

SCI can be calculated for a duration (and update the next duration).

Sometimes we may just want to calculate multiple SCI scores over time, e.g. every 5 mins. In that scenario the freq. will be 5 mins, and the telemetry put in will be again in 5 min increments.

@jawache jawache moved this to Ready in IF Jul 23, 2023
@jawache jawache moved this from Ready to In Progress in IF Aug 11, 2023
@jawache jawache assigned jmcook1186 and unassigned jawache Aug 11, 2023
@jawache
Copy link
Contributor Author

jawache commented Aug 11, 2023

@jmcook1186 can you take a look at reformatting this IMPL to one that meets the latest spec and add it to the impls folder as per your other issue. This will defo be a work in progress but let's have it added to the collection.

  • Work with @osamajandali our web dev to understand the build/deploy process for our website (I guessed most of the above!).
  • Make the IMPL reflect the reality of our build/deploy process.
  • Source real data for say July this year (i.e. the number of builds etc.... ask Osama or you can find details in the actions tab in the website repo) also reach out to @zanete to get real traffic data regarding our website traffic.
  • Try to get the data as daily observations, so one value per day for a month.
  • Make this use observations (i toyed with the word measurements in this yaml but we've landed on observations)
  • Remove the nodes that divide things (that will be handled by the new pipeline process)

@jawache jawache changed the title Creating an SCI score for the GSF Website & handling R IMPL for the GSF Website Aug 11, 2023
@zanete
Copy link

zanete commented Aug 14, 2023

Hi @jmcook1186 happy to help with any traffic data that would be useful. Do you have any parameters for me? e.g. timeline, the metric such as users or page views, should it be broken out by anything such as website sections, device, location etc. Look forward to hearing from you.

@jawache jawache moved this from In Progress to Pending Review in IF Aug 18, 2023
@jawache jawache moved this from Pending Review to Blocked in IF Aug 21, 2023
@jawache jawache moved this from Blocked to In Progress in IF Aug 29, 2023
@jmcook1186
Copy link
Contributor

Hi @osamajandali and @zanete - there's a draft impl for the GSF website in PR #80 but I'd love to get your help to make it more realistic.

@osamajandali can you help by explaining how the GSF website is really built and hosted? Then I can ask @zanete for appropriate metrics.

Cheers!

@osamajandali
Copy link

Hello @jmcook1186, I am glad to assist you with any development-related queries.

The GSF website is constructed using the GatsbyJS framework and is deployed on Netlify. We utilize GitHub, which automatically builds the website on Netlify during deployment.

To better assist you, I would appreciate it if you could share more details on what specifically you are looking for. While I have provided you with a brief overview of the essential aspects, I understand that there may be additional requirements that you require further assistance with.

@jawache jawache moved this from In Progress to Ready in IF Oct 9, 2023
@jawache jawache moved this from Ready to Backlog in IF Oct 17, 2023
@jmcook1186 jmcook1186 removed this from the v0.1 - Proof of Concept milestone Nov 20, 2023
@jmcook1186 jmcook1186 added this to the v0.1 - Proof of Concept milestone Nov 20, 2023
@zanete
Copy link

zanete commented Aug 12, 2024

@jmcook1186 can we reuse this issue to restart working on manifest for the GSF website or has too much changed and we need to start fresh? 🙏

@zanete zanete moved this from Parked to Ready in IF Aug 12, 2024
@jmcook1186
Copy link
Contributor

Hi @zanete - yes we can use this ticket.
A good first go at this is to use CO2js in SWD mode to estimate the website emissions from data transfer measurements.
We can do this using our CO2js IF plugin.

So what I want to do is to ask @manushak to prepare a manifest that invokes the CO2js plugin and exposes all the available config for the SWD model. This will help me by enumerating all the data points I need to collect. We can divide and conquer by having @manushak prepare the manifest while I'm sourcing the right data to feed the model.

@jmcook1186 jmcook1186 changed the title IMPL for the GSF Website Manifest for the IF docs website Aug 12, 2024
@jmcook1186 jmcook1186 moved this from Ready to In Progress in IF Aug 19, 2024
@zanete zanete moved this from In Progress to Parked in IF Aug 21, 2024
@zanete zanete moved this from Parked to Blocked in IF Aug 21, 2024
@zanete zanete moved this from Blocked to Pending Review in IF Aug 21, 2024
@jmcook1186
Copy link
Contributor

This is now just waiting for fixes to aggregation feature, then it will be done.

@zanete zanete moved this from Done to In Progress in IF Sep 12, 2024
@zanete
Copy link

zanete commented Sep 16, 2024

@manushak to look at the GSF website manifest and the existing if docs website and bring it to the level of the GSF website.

@zanete zanete closed this as completed Sep 19, 2024
@github-project-automation github-project-automation bot moved this from In Progress to Done in IF Sep 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

5 participants