Comments (6)
I fully agree 100%!
I have a couple more opinions:
- for exceptions, I think there used to be an interest in converting everything into a Fed-BioMed exception because these could be treated differently by the runtime. For example, we may decide that the node CLI should crash if a non-Fedbiomed exception is raised (because we don't know what to expect), but if in fedbiomed exception was raised we might assume that at least it is a known issue/possibility and therefore no need to crash the node. However, I think that it would make more sense to raise a
Fedbiomed AttributeError
in your example, rather than what we currently do. - I would be in favour of strongly reducing the types of check we do on
TrainingArguments
(or even more extrem, I would be in favour of removing them altogether)
from fedbiomed.
Hi @srcansiz,
For me, this kind of things about agreeing on coding practices (or changing the existing ones) should be discussed and decided together, maybe in a retrospective meeting (or dedicated meeting ?). And then written and followed :-)
At first sight, I would tend to agree with 1. but
disagree with 2. and 3. that we purposely implemented for robustness.
from fedbiomed.
Hi @sharkovsky, @mvesin,
Thanks for your comments. Yes I agree @mvesin It can be something that we can discuss during the retrospective or we can have an internal meeting during this sprint. The main idea is to reduce the complexity of the code, avoid writing unnecessary code, and thanks to that reducing the time spent while coding, unit-testing etc.
from fedbiomed.
If matters of coding rules (these ones, maybe others) are of interest to the team, maybe we can dedicate next sprint retrospective to discussing & deciding on some of these aspects ?
from fedbiomed.
Yes, I agree it matters of coding rules even though we don't have specific written rule for that. My point is that it seems we won't have enough time discuss and decide it during retrospective. However, I think we will need maximum 1 hour to discuss and decide, we can spare 1 hour when everyone is in SED. But if you wanna delay it for the next sprint yes we can.
from fedbiomed.
I agree we have few coding rules, but exceptions is one of the few really specified and documented aspects: https://github.com/fedbiomed/fedbiomed/blob/develop/CODING_RULES.md
But it doesn't seem we apply these rules (eg I am the first one to use except Exceptions:
) ...
It probably means we need to agree on evolved rules.
from fedbiomed.
Related Issues (20)
- redesign optimizer import interface
- implement FB wrapper for using DecLearn optimizer with FB secagg for auxiliary variables
- Fedbiomed_run node -adff should create missing directories
- `NameError` when declaring Experiment HOT 2
- evolution of error messages and distant logging
- release and hotfix process broken by GitHub new "feature" HOT 1
- Implement POC for Federated Preprocessing Use Case 1 HOT 4
- Run all notebooks in end-to-end tests HOT 1
- provide connectivity testing and debugging tool
- use gRPC communication encryption (no party auth)
- add checks when tagging a new version through git
- improve use of conda packages HOT 1
- Re-design and implement `Requests()` class
- Roadmap for DecLearn/Fed-BioMed common next steps
- Node gui launch fails
- Provide error message if `configure_conda` fails
- Fix deprecated notebook import
- update coding rules and DoD
- Potentially dead code for secure aggregation in Aggregator class HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fedbiomed.