Struggling again with fp-ts, I think it's one of the things where I need to
start from the very beginning with basics, before I "get" it.
September 2019
216 tweets
One of the first things to change in my codebase is to remove all exception
throwing. Then figure out how to use pipe and chain...
@flosalihovic Yes, they should be returned
as errors in the left of Either or TaskEither (if asynchronous)
@niondir If find Exceptions to be a rather
problematic way to control flow and I want to move towards exception-less code.
FP offers a language-independent way to achieve this. It might not be faster
now, but I already see that code becomes easier to read and more compact.
@niondir I love how GoLang made errors a first
class citizen and made the Either monad built-in.
Oh, an agile conference in Helsinki: http://www.scan-agile.org/
They have a call for presentations open right now:
https://docs.google.com/forms/d/e/1FAIpQLScb-ESMUWwre_j_jEfr3dEy2PC7cj4dppQQhGbGHmtcnvB6_A/viewform
Boarding for the first ever #codebreeze near Turku, Finland 🇫🇮
https://codebreeze.netlify.com/
Learn everything there is to know about
@NordicTweets new #iot prototyping platform,
the #thingy91, in this video: https://youtu.be/gs98nuBn4HU
First time checking in at a Burger Restaurant. #codebreeze 🇫🇮
@rinkkasatiainen
@AmelieCornelis Great! I have an
open-source codebase with some typical examples to convert.
I also started reading https://github.com/MostlyAdequate/mostly-adequate-guide
The @NordicTweets #thingy91 arrived in
Turku, Finland 🇫🇮 and is happily roaming with the @1NCE3 SIM.


This is the best call for proposals process I know, so don't miss this chance to
speak to the awesome committee members of
@EuroTestingConf!
https://twitter.com/AdharaIT/status/1168515656372932608
Captain @rinkkasatiainen taking us to the
#codeBreeze location.


#codebreeze in my hair:
#codebreeze has the best location for a tech conference, seriously. And we start
with an amazing home-cooked lunch.




We have a sauna track at #codebreeze, I could do this all day.




OMG. What. A. Lineup! https://twitter.com/mablhq/status/1168886457127395329
🤩 #codebreeze 🌅
#codebreeze has many exciting things to offer: this is the way to the toilet at
night.
@dtanzer
@WeAreDevs Thanks for the tip, but they are
constantly delivering a terrible conference experience for attendees and
sponsors as well. I don't want to be associated with them.
First #codeBreeze session today: preparing lunch.




How to clean potatoes for many hungry people: #codebreeze
#CodeBreeze sessions are also about preparing our own food (and cleaning up
afterwards):




@sebbruck No, it's a special device for potatoes
:-)
RPG combata kata iteration 1 done in FP:
https://github.com/codefreezefi/rpg-combat-kata-fp/blob/saga/character.spec.js
#codebreeze
Pretty epic place to cook dinner. #codebreeze
@kriscorbus
@DanAshby04
@EmmaWedekind
@the_qa_guy
@itemis @j19sch
@Iki_Kviki
@DataDuke
@dcarral @11vlr
@Testhexe
@ron_werner
@buggylina Hey, thanks for asking, I was
speaker last year so I think someone else should have the chance to experience
@EuroTestingConf, too!
(Sent from the toilet.)
@jacek_smolak
@sebbruck Obviously, no.
@benjamin Yeah, I love that name.
So far most of the time involved preparing food, good food, which takes quite
some time since we all are foodies here and appreciate a good meal. The cleaning
up not so much ...
@kriscorbus I'll attend definitely in
Amsterdam!
"Tired?" "No! Totally relaxed." Me observing the #codebreeze effect: being on a
remote island around a small group of very lovely introverts, cooking great
food, computering a bit and having sauna every day.
Love this idea! Now the early bird ticket became even more attractive!
https://twitter.com/maaretp/status/1169226873722851328
Great writeup on the agile manifesto which must be seen as maybe the most
prominent, but not actually radically new expression of feminist ideas:
https://medium.com/@Hanna.Thomas/why-dont-we-just-call-agile-what-it-is-feminist-8bdd9193edba
@mirjam_diala Wait until you reach season 3
(the camp fire scene). 😭
#codebreeze breakfast ... happens when it happens :-) We just make our own.
#codebreeze got kinda wet now.
Sun is back! #codeBreeze
This is #codeBreeze: trying to make an apple crumble using an open fire oven and
pair programming a kata in #clojure.


It worked! 🔥
@EvAltenberga It also worked.
@EskoLuontola can you share the repo?
When you have no power because we prepare for a thunderstorm. #codeBreeze
Good Morning from #codeBreeze!
@jefiozie Yes, truly magical.
Have you brought your @NordicTweets
#Thingy91 outside to prototype your next generation IoT product? I'm here on a
remote island to test an asset tracking solution...
https://www.nordicsemi.com/Software-and-Tools/Prototyping-platforms/Nordic-Thingy-91
This was the wood chopping session at #codebreeze
Result:
@RealIvanSanchez You just did! 😆
@tobmaster
@ngdeconf Beautiful!
Once again failing to find a nice way of making the AWS IoT Device SDK available
in the browser. Being to forced to use their browserize aproach just sucks:
https://github.com/aws/aws-iot-device-sdk-js/#browser
Crêpes at Sunrise by our chefs
@AmelieCornelis and
@rinkkasatiainen. I think we reached peak
conference experience at #codebreeze.




Last #codebreeze breakfast. 😢
@datenreisender Hier überall!
Heady home. 👋 #codeBreeze


@c089 It's the only way to get to the island.
Or by ski in Winter over the frozen sea, which is also possible to drive a car
on.
WTF is the @Infineon Security 2 Go #blockchain
starter kit?!
@mortzu Frischkäse mit schwarzem Pfeffer:
https://www.cremebonjour.fi/tuotteet/mustapippuri-tuorejuusto-200-g/
On the way back to Helsinki. 🇫🇮
Btw. there is literally a Sauna beer in #Finland 🇫🇮
The @NordicTweets #thingy91 arrived in
Helsinki!


@carolstran
@w3ltraumpirat I like the term "glue
skills": without them everything falls apart.
Helsinki has a scooter problem. 6+ operators litter them everywhere.
One learning from implementing the RPG Combat Kata in FP is that in
@sanctuaryjs we thought that pipe()
terminates execution if it receives a Nothing, but that's not the case. pipek()
does that:
https://github.com/codefreezefi/rpg-combat-kata-fp/commit/7a097d4fb470efb3b515abde2e4f878b74d7be6a#diff-e1d62d8c4965edf0e532dfa19da0891fR79
Note that I try to have all rules about the actions in one place so it's easy to
reason about them.
Still not very satisfied with the readability.
Still in #codebreeze mode...
/status/1170642417911042051
@maaretp Consider adding the pronouns to the
speaker list as well (even if speaker info is provided in third person sometimes
the pronouns are not in that text), so everybody can use the right pronouns when
they talk about them during the event.
@datenreisender
@sanctuaryjs I first read this
https://github.com/MostlyAdequate/mostly-adequate-guide and then used the API
docs only.
@RiccardoOdone Yes, it's a good kata
because the iterations are easy to understand but provide challenges which e.g.
with OOP force big refactorings, with FP though it's rather straightforward.
Great list of good reasons why non-managerial career paths can be much more
satisfying: https://twitter.com/mipsytipsy/status/1170612752525746176
Btw, too many companies still believe that managers are required to provide
structure, clarity and the foundation for engineers to be productive.
/status/1170651221855748096
If knowledge and power is given to everyone, engineers can self-manage perfectly
fine, thus making some of the downsides if being a manager mentioned in the
article go away.
@RiccardoOdone Once I've finished it with
Sanctuary, I'll port it over to fp-ts.
But I wanted first to understand the FP aspect, before having to deal with type
errors in addition.
@datenreisender
@sanctuaryjs Yes, and if you struggle, try
doing the exercises after each chapter.
And this is our final flight back to Trondheim 🇳🇴.
Now reading the parts of https://fsharpforfunandprofit.com/books/ about FP,
which @rinkkasatiainen recommended as a
great resource for understanding the basics concepts of FP: #codebreeze
@AmelieCornelis Thank you for making
#codebreeze happen! We are now safe back on Norwegian 🇳🇴 soil!
Self-managed teams will figure out when they need support and either build
knowledge internally or seek council! 👇
https://twitter.com/offbyoni/status/1170713592683012099
Oh, what a welcome, #Trondheim 🇳🇴
@miskaknapek From my experience it's very
different in Norway (if managers are Norwegian, that is).
The four kinds of data you need to consider when developing an #IoT product
https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/the-four-kinds-of-data-you-need-to-consider-when-developing-an-iot-product
@NordicTweets I wrote some personal remarks
on this role here: /status/1164434224495190016
.@MicrosoftTeams has no reminders. This is
the one @SlackHQ feature I cannot work without.
@AmelieCornelis
@rinkkasatiainen Thank you for this! I
did not much except showing up; this was a truly epic team effort!
#codebreeze is over, but it created some truly unique memories. I took some
pictures, that might inspire you how conferences can look like:
https://www.flickr.com/photos/tacker/sets/72157710741392093
If you'd like to be part of this, maybe join
@codefreeze_fi in January?
@dc7590
@kamilleblumm
@patricklenz
@cpzengel @Flocke
@oreillyverlag It's a good thing we added
to. Truly a bigger whole than the sum of its parts. I'll always remember that.
@jen_star
@r_oquentin
@alexschnapper
@FranziskaNaja
@alipasha
@MarioHachemer
@rolandjudas
@Ravetracer @jke
@dwass
@SebGreiner
@calibanatspace
@TimKarsko
@jschirrmacher
@dtanzer @c089
@SamirTalwar
@wolframkriesing
@cm_zannini Yes, this is already being done
using @zoom: https://remoteforeversummit.com/openspaceday-2018/
https://medium.com/virtual-teams-for-systemic-change/popping-bubbles-550d02a6f7ac
Norsemen was right, btw.
https://twitter.com/jasonsanford/status/1171099505158164481
@toggleModal You have more time to use what
you learn afterwards, than what you had until today, so yes.
@Lazer I imagine the cats will be delighted ...
I've finished the RPG Combat Kata with
@sanctuaryjs:
https://github.com/codefreezefi/rpg-combat-kata-fp
Main focus was on learning some FP basics, and trying to keep the business rules
about attack/heal close together:
https://github.com/codefreezefi/rpg-combat-kata-fp/blob/saga/src/api.js#L84-L108
#codebreeze
I'd love some feedback on this if you have FP experience, it still looks a
little strange. /status/1171524088730284032
@XDetant Congratulations! 👫💯
@Lazer Maybe because it's smaller, they don't see
it as a danger.
TFW you forgot which AWS account this is running in, again?
This might be the end of the Ubers:
https://www.nytimes.com/2019/09/11/technology/california-gig-economy-bill.html
Today I started to work on #BDD #e2e tests for a cloud-native app, means I need
to test directly against the @awscloud SDK.
@cucumberbdd feature file:
https://github.com/bifravst/aws/blob/a42789d8fd79578a315feb54f7e1f3cc93eea412/features/IoTUserPolicy.feature
and this is the testrunner implementation:
https://github.com/coderbyheart/bdd-feature-runner-aws/blob/fef4f244bc0c278703a6c51f4e179e2d7c888543/src/steps/aws-sdk.ts
@MattBolton365 But things will change for
the drivers at least.
@siljelb
@pati_gallardo I fixed the link on the
event page, it's here: https://techwomen.no/code-of-conduct
@pati_gallardo
@siljelb ... and I fixed it from my phone!
This is my "How does FP even work?" face.
Photo by @EskoLuontola
I incorporated some feedback from @Der_Pesse
and @VocumSineratio and abstracted away
the sanctuary noise in the attack method:
https://github.com/codefreezefi/rpg-combat-kata-fp/commit/e8454c9285284060b4449bad31a6c4fc3bdf59b0#diff-e1d62d8c4965edf0e532dfa19da0891fR114
/status/1171524088730284032
Interesting: https://clubhouse.io/product @clubhouse aims to provide a more
team oriented and leaner project management platform than Jira+Confluence.
I think the bar is pretty low.
@MattBolton365 Of course they are trying to
argue that this does not apply, in order to safe their asses because the drives
ARE actually a requirement for their core business.
The 5 Big Features of #TypeScript 3.7 and How to Use Them
https://httptoolkit.tech/blog/5-big-features-of-typescript-3.7/
@marcoemrich
@sanctuaryjs Great, I would like to see your
way, given your extensive experience with Ramda.
@MattBolton365 If it were an actual
transparent marketplace, drivers could make better decisions about prices and
not get cut off. Uber abuses it's power to put drivers against each other and
minimize driver wages. That is not a fair market.
I don't get why you don't want a union in your tech company. There is such a big
power difference between the company and individual employees, I think it's a
companies responsibility to support the establishment of a strong workers
representation.
.@tes_engineering explains how they manage without managers:
https://engineering.tes.com/post/manage-without-managers/
"The heart of the concept is the delegation of leadership and responsibility and
enabling the teams to take true ownership of their work."
💙
My mother: https://twitter.com/theitskeptic/status/1172433159339692033
Chopin:
@reactlivenl
@EmmaWedekind @gatsbyjs What a stage, Emma!
Awesome!
Does @RidingWolf know this account?
https://twitter.com/hourlywolvesbot/status/1172495431592529920
youthful exordial furfuran
My name generator is a real poet:
https://npm.runkit.com/@bifravst/random-words
@benjamin I think the gist is that they try to
keep the number of managers singular, but for some chores (e.g. firing people)
it's better for all to have a responsible person.
@EuroTestingConf
@mirjam_diala Can't wait to see this one!
Yeah! After being quite happy with @github Actions
to replace third party CI runners, I can now start replacing NPM for hosting my
packages:
Ready for the Norwegian autumn. #trondheim 🇳🇴
@RidingWolf No :-p
I made small wood to start fires today ...
2 Women – Polar Ambassadors 1 Trapper’s Hut – No Electricity or Running Water 9
Months – 270 Days, 90 Days of Complete Darkness 140 KM Away From Civilization 6
Science Projects 1 Mission – To Engage a global community in the dialogue around
Climate Change 👇
https://twitter.com/heartsintheice/status/1172483507987390464
I am selling some of my gadgets on #ebay (located in DE 🇩🇪):
- a Surface Pro 4 w/ TypeCover: https://www.ebay.de/itm/202779246740

- a Royole RoWrite (cool, smart physical notepad):
https://www.ebay.de/itm/202779239677
- Plugable USB-C Docking Station: https://www.ebay.de/itm/202779250948

- a 1st gen Nexus 7: https://www.ebay.de/itm/202779256224

@lauralindal
@WieVieleFrauen 1 Frau 15 Männer
https://itnext.io/test-driven-development-is-dumb-fight-me-a38b3033280c
... if you try to use TDD as a replacement for communication, you are doing it
wrong.
To stay in the article's analogy: if you don't know whether you are building a
highway or a railroad don't start with painting road markings.
It also ignores that test-after approaches often increase the likelihood of
unsafe refactorings, because the implementation was not designed for testability
in the first place (let's just make it work), and then there are not tests in
place to allow for a risk-free refactoring.
This great article by @GeePawHill explains one
of the tricks when TDDing "big ideas": split them into small, easily testable
things:
https://www.geepawhill.com/2019/07/26/tdd-pro-tip-make-hard-problems-collections-of-toy-problems/
Doing that will also enable you to iterate faster on various mutations of the
big idea, existing working parts can be recombined with little effort. Because I
have the confidence that the small things keep working, I can focus on the
bigger picture.
@Jen_BMJ 🤞
@tPl0ch I wonder if you literally had this
discussion once and then were like, nah, let's use a long distance bus. 🤣
"Over the course of five years, the Grant for the Web program will disburse $100
million to individuals, projects, and global communities that contribute to a
privacy-centric, open, and accessible web monetization ecosystem."
https://twitter.com/mozilla/status/1173598092857360384
@KlaraMiffili
@satellytes_beep It's always amazing to
start a new thing with learning! Have a lot of fun!
This is good: https://www.xaprb.com/blog/you-guys/
Great example of why OOP sucks:
https://github.com/aws/aws-iot-device-sdk-js#jobs
Jobs extends Device ThingShadow extends Device
and that's why you can only use Jobs OR ThingShadow, not both at the same time
on the same connection:
https://github.com/aws/aws-iot-device-sdk-js/issues/179#issuecomment-356427624
@toggleModal Which one?!
@vicbergquist I have my waterproof winter
boots out this week ... raining all week in #Trondheim
Btw, if you are in the Netherlands, come by Maker Faire in Eindhoven:
https://eindhoven.makerfaire.com/
We'll show the cool @NordicTweets Cat
Tracker Project there!
The fuckery involved to get the git tag for the commit hash in an AWS
CodePipeline deploy step with secondary sources is mindboggling.
CODEBUILD_RESOLVED_SOURCE_VERSION points to primary source
CODEBUILD_SOURCE_REPO_URL is not set
I need to set the source repo URL as an environment variable on the CodeBuild
project for the deploy step.
Then I can git ls-remote against that using the git hash ... which I get from
inspecting the pipeline state using the AWS CLI.
@AnnNat Maybe just tell him in private how it
makes you feel?
@maaretp Yes, but that's a nice buffer vs. hours
of sleep, vacation days and wrecked nerves.
It me.
+45% in three months!
https://twitter.com/witty_works/status/1174625482572255232
@kotzendekrabbe
@cssconfbudapest
@jsconfbp @s2engineers @sinnerschrader Oh no,
get better soon, Feli!
@rinkkasatiainen
@ITMattersConf Don't forget to eat Pirogi
there!
@rinkkasatiainen
@ITMattersConf Ohh, I envy you!
For me intersectional conferences like
@EuroTestingConf are where I get inspired
most because I get to hear and experience a much more diverse perspective on how
we build tech. https://twitter.com/a_bangser/status/1175347670350815232
What @stripe is doing to support a large #remote
engineering team:
https://weworkremotely.com/the-remote-show-podcast/patrick-mckenzie-content-and-community-at-stripe
We had so much rain here in #Trondheim 🇳🇴 in the last week that the Nidelva
turned brown.
@AnnNat Eine eigene Messe rund um die
Knödel-Herstellung?!
@RasidRedzic @toggleModal I think it's
fascinating. He is such a nerd and gets to be even nerdier in his retirement.
Norwegen 50 €/t (500 NOK), und es ist kein Thema:
https://www.regjeringen.no/no/tema/okonomi-og-budsjett/skatter-og-avgifter/veibruksavgift-pa-drivstoff/co2-avgiften/id2603484/
https://twitter.com/ole_uexkull/status/1175488716925755392
"Neoliberal economic theory has sold itself to you as unchangeable natural law,
when in fact it's social norms and constructed narratives based on
pseudoscience."
https://www.ted.com/talks/nick_hanauer_the_dirty_secret_of_capitalism_and_a_new_way_forward
@bberrycarmen
@47deg All the best Rachel! They are lucky to have
you!
Oh I thought I never needed it but I just had to do real math in order to
calculate the proper triangle size based on the area (25% signal strength should
have 25% are of the triangle, not width).


@msdeibel I guess at 20px size the difference is
hard to notice ;-)
What a magical sunset tonight here in #Trondheim 🇳🇴




Autumn is here. #Trondheim 🇳🇴
@fgortazar
@etereoio
@antaipt
@rcfsegovia Nice, looks like they figured it
out that hierarchies are a crude tool which can be removed if values are
aligned.
@lsmith
@witty_works
@liip Nice!
I love how transitioning to the @GitHub package registry from NPM removes the
hassle of having to deal with tokens of any kind if combined with Actions:
https://help.github.com/en/articles/virtual-environments-for-github-actions#github_token-secret
All Action runs have a GH token scoped to the repo, which can publish packages
to the registry. 💯🚀
@fgortazar
@github Travis is no longer a European company, it
belongs to Idera, Inc. an American company.
I recently started to shift CI tasks to CircleCI but GitHub Actions integrates
much better...
@toggleModal YAML
WOW! Thank you @ngdeconf!
https://twitter.com/ngdeconf/status/1176782260835684352
@toggleModal Yes, I try not to use JSON/YAML
when epxressiveness is needed, but rather the programming language itself.
@stefanscheidt Of course, you can find all
the pictures I took on flickr as well in case you need more:
https://www.flickr.com/photos/tacker/albums/72157710559788186
Asshole.
I would like to know why Norway 🇳🇴 thinks this salad made of carrots, cole and
mayonnaise is Italian?
Someone suggested that it's because it resembles the copies in the Italian flag.
Then I'd like to know why Norwegians consider carrots to be red.
#Trondheim 🇳🇴 is just ridiculous sometimes.


Die @INNOQ Podcast Episoden zu
#selfcontainedsystems sind wirklich hörenswert:
https://www.innoq.com/de/podcast/030-scs-teil-1/
Dazu empfehle ich eines meiner Lieblingsbücher in dem schon 2010 viele der
Grundprinzipien dieser Systeme erläutert werden: REST in Practice.
http://shop.oreilly.com/product/9780596805838.do
Another RFC-inspired process for distributing software design decisions that
focuses on spreading knowledge and collecting feedback from the entire
organization:
https://blog.pragmaticengineer.com/scaling-engineering-teams-via-writing-things-down-rfcs/
@GergelyOrosz also include a concrete
example on GitHub! 💯
Should API docs be mobile friendly?
@NativeWired So, not only for ... guys. 👍
@NordicTweets Check out their #iot solutions
on https://meshtech.no/!
Oh, memories. 🤣 https://youtu.be/_JcEd0eo6O8
Monster set: https://www.youtube.com/watch?v=XWfGPGQnYew
@NativeWired You could reach out to people
you have worked with and ask them what it is they get out of working with you.
Also keep in mind that we often don't see the things we do as special or
valuable, just because it's our way of doing them.
#Trondheim is shutting down the local e-scooter offering, because of wild
parking. Scooter companies need a license in the future:
https://www.nrk.no/trondelag/trondheim-vedtok-forbud-mot-elsparkesyklene.-samtidig-etablerte-selskapet-seg-i-en-annen-by-1.14660768
@devdevcharlie
@Mandy_Kerr
@jsconfbp Here is the live-stream recording:
https://www.youtube.com/watch?v=F2YynQIFhYQ&feature=youtu.be&t=9896
Awesome talk!
@lessless_ua Yes, for now it is only Trondheim. And we only had one operator
since June. So they are (thankfully) pulling the plug quickly.
@nelisboucke Have you tried
@glitch?
@nelisboucke
@glitch Right, it might have for a web app.
Creative coding par excellence!
https://twitter.com/TechWomenNorway/status/1177529318601367552
Interesting. Telenor is issuing IPv4 and IPv6 adresses to #iot devices:
@rinkkasatiainen Hehe! Yeah, we have
R&D in Turku and Oulu.
@rinkkasatiainen Uhh...
And one in Espoo:
https://www.nordicsemi.com/About-us/Visit-Us/Europe/Finland/Espoo
#UrlauberFriendly https://twitter.com/mathiasgorf/status/1177503232567865345
I never had an insalata capricciosa that looked like that, but I think that's a
good answer: https://twitter.com/RoalzApps/status/1177597763573473282
We want up the #Trondheim 🇳🇴 fjord and are waking up next to the sea is just
awesome.



It's nice to be able to take a break wherever and have a nice an cozy place
regardless of the weather.
@rinkkasatiainen It is! Our own off-grid
cabin on wheels!
@Lynoure
@NativeWired IME they are to some extent
still noticeable and have some strange effects here I have never seen anywhere
before, like absence of criticism of any kind and lack of responsibility.
"There is no option to remove this payment address from my Keybase profile,
turning my Keybase profile page into an ad for a shitcoin, using my name, face,
and identity as an implicit endorsement for Stellar. This is rude and
unethical." https://sneak.berlin/20190929/keybase-backdoor/
.@NativeWired is one of the few people I am
aware of that invests their entire self into making tech more inclusive. Watch
her explain how we can start by being more kind to our selves and then start the
necessary changes from there in this talk:
https://www.youtube.com/watch?v=E93akm1WYRY #BeBrave
@NativeWired Thank you! I am very grateful
for the effort you put into making tech a place where everyone feels welcome.
Mit der kostenlosen @betterplace_org
Academy lernen soziale Organisationen ab dem 1.11.19 erfolgreich in einer
digitalen Welt durchzustarten:
https://twitter.com/betterplace_a/status/1178620214075953153
Of course there are fortunately many, many others, but how
@NativeWired turns her rage into something
productive and has so few fucks to give is amazing!
/status/1178629378906955776
@NativeWired Well, I these are your own words
which you use in the talk: https://youtu.be/E93akm1WYRY?t=918
This rage enables you to deliver powerful messages, for you effortlessly, but
nevertheless you make the decision to not keep the rage to yourself but stand up
and set clear boundaries.
.@github actions is still beta, you have been
warned! https://github.com/actions/checkout/issues/50
@NativeWired No problem!
This tool helps reforestation projects discover regions and type of tree to
plant:
https://www.goodnewsnetwork.org/how-many-trees-to-plant-to-stop-climate-crisis/