4.6 KiB
4.6 KiB
DannyDannyDanny/Methodology
Repo Roadmap
- 2021Q1:
Gitmoji -> (general) Methodology✅ - 2021Q2: Development Methodology
- Oneliner build / install / run / deploy
- Git (Branching, Merging and Pull Requests)
- OpenStack: Linting and Pre-commit Hooks
- 2021Q3: Decide on sections
- Resolve Joel's 12 Questions
- 2021Q4
- Add collaborators
This methodology repo is focused on Python Data Processing based projects with som external dependencies (APIs or DBs).
In your commit message use the format :gitmoji: <commit message>. Only propper nouns, CamelCase and class names should have uppercases letters. Avoid using multiple gitmojis.
gitmoji Lookup
| emoji | code | description |
|---|---|---|
| ✨ | :sparkles: |
add new feature / function |
| 🎨 | :art: |
refactor code / improve readibility / structure and lint flake8 |
| 🥅 | :goal_net: |
try/raise/handle errors or warnings |
| ⚡ | :zap: |
improve performance / coverage / profiling |
| 🐛 | :bug: |
fix this bug |
| 🚚 | :truck: |
moving / renaming |
| ♻️ | :recycle: |
work related to CI/CD, webhooks, automated tests |
| 🚧 / 💥 | :construction:/:boom: |
work in progress / breaking changes |
| 📝 | :memo: |
doc / logging / verbosity / code comments |
| 🔥 / ⚰️ | :fire:/:coffin: |
remove (dead) code / file |
| 👽 | :alien: |
changes related to APIs and Databases |
| 📊 | :bar_chart: |
clean / transform / validate data |
| 💄 | :lipstick: |
improve UI / UX, CLI or visualizations |
| 📌 | :pushpin: |
dependency and environment versioning |
| 🙈 | :see_no_evil: |
changes to .gitignore and exclusively local files |
| 🔍 | :mag: |
changes in connection with PR-review change-requests |
Missing a gitmoji? Get inspiration. Submit an issue (or Pull Request).
Oneliner install and run
The readme must contain a one-liner code that
git clone https://github.com/user/repo.git cool-repo && cd cool-repo
pipenv install
pipenv run python .
#cd .. && rm -rf cool-user-repo-online
Git Flows
In progress! 🚧
New Development Flow
# clone repo with local_name enables several clones
git clone <repo> <local_name>
# optional: checkout (i.e switch to) a branch to continue developing from there
git checkout <feature/featurename>
# optional if you switched branch on the last step
# switched branch: branch out from
git checkout <feature/newfeature>
git branch <feature/newfeature>
git push --set-upstream origin feature/sql-and-xml-validation
Repo Badges
Coming soon! 🚧
![Coverage badge][coverage-badge] [coverage-badge]: https://img.shields.io/badge/Coverage-100%25-brightgreen.svg
Other methdology
- Things you should do now
- Follow naming conventions
- Follow software engineering laws
- Use scrum methodology
- Understand, Ideate and Test, Implement UX.
- Do CodeReviews
- Use databases
- Consider SQL (but don't use
select *) - Be aware of feature casualties of large databases
- Consider SQL (but don't use
- Avoid dark patterns
- Security
- Audit security
- Understand SSH tunnels
- Use non-linear roadmaps
- Use solarized-theme
- Test and Production environments must be the same and very well defined: FreeBSD image or Ubunut Docker container