Feature/add hacktoberfest 2023 debriefing blog post (#2599)
* Add blog post: Hacktoberfest 2023 Debriefing * Update changelog
This commit is contained in:
parent
1b7e3a1e47
commit
45510702d0
@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
- Added support to import activities by `isin` in the _Yahoo Finance_ service
|
- Added support to import activities by `isin` in the _Yahoo Finance_ service
|
||||||
- Added a new tag with the major version to the docker image on _Docker Hub_
|
- Added a new tag with the major version to the docker image on _Docker Hub_
|
||||||
|
- Added a blog post: _Hacktoberfest 2023 Debriefing_
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
|
@ -306,6 +306,10 @@
|
|||||||
<loc>https://ghostfol.io/en/blog/2023/09/hacktoberfest-2023</loc>
|
<loc>https://ghostfol.io/en/blog/2023/09/hacktoberfest-2023</loc>
|
||||||
<lastmod>${currentDate}T00:00:00+00:00</lastmod>
|
<lastmod>${currentDate}T00:00:00+00:00</lastmod>
|
||||||
</url>
|
</url>
|
||||||
|
<url>
|
||||||
|
<loc>https://ghostfol.io/en/blog/2023/11/hacktoberfest-2023-debriefing</loc>
|
||||||
|
<lastmod>${currentDate}T00:00:00+00:00</lastmod>
|
||||||
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://ghostfol.io/en/faq</loc>
|
<loc>https://ghostfol.io/en/faq</loc>
|
||||||
<lastmod>${currentDate}T00:00:00+00:00</lastmod>
|
<lastmod>${currentDate}T00:00:00+00:00</lastmod>
|
||||||
|
@ -75,6 +75,10 @@ const locales = {
|
|||||||
'/en/blog/2023/09/hacktoberfest-2023': {
|
'/en/blog/2023/09/hacktoberfest-2023': {
|
||||||
featureGraphicPath: 'assets/images/blog/hacktoberfest-2023.png',
|
featureGraphicPath: 'assets/images/blog/hacktoberfest-2023.png',
|
||||||
title: `Hacktoberfest 2023 - ${title}`
|
title: `Hacktoberfest 2023 - ${title}`
|
||||||
|
},
|
||||||
|
'/en/blog/2023/11/hacktoberfest-2023-debriefing': {
|
||||||
|
featureGraphicPath: 'assets/images/blog/hacktoberfest-2023.png',
|
||||||
|
title: `Hacktoberfest 2023 Debriefing - ${title}`
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { MatButtonModule } from '@angular/material/button';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
host: { class: 'page' },
|
||||||
|
imports: [MatButtonModule, RouterModule],
|
||||||
|
selector: 'gf-hacktoberfest-2023-debriefing-page',
|
||||||
|
standalone: true,
|
||||||
|
templateUrl: './hacktoberfest-2023-debriefing-page.html'
|
||||||
|
})
|
||||||
|
export class Hacktoberfest2023DebriefingPageComponent {
|
||||||
|
public routerLinkAbout = ['/' + $localize`about`];
|
||||||
|
public routerLinkFeatures = ['/' + $localize`features`];
|
||||||
|
}
|
@ -0,0 +1,283 @@
|
|||||||
|
<div class="blog container">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-8 offset-md-2">
|
||||||
|
<article>
|
||||||
|
<div class="mb-4 text-center">
|
||||||
|
<h1 class="mb-1">Hacktoberfest 2023 Debriefing</h1>
|
||||||
|
<div class="mb-3 text-muted"><small>2023-11-05</small></div>
|
||||||
|
<img
|
||||||
|
alt="Hacktoberfest 2023 with Ghostfolio Teaser"
|
||||||
|
class="rounded w-100"
|
||||||
|
src="../assets/images/blog/hacktoberfest-2023.png"
|
||||||
|
title="Hacktoberfest 2023 with Ghostfolio"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<section class="mb-4">
|
||||||
|
<p>
|
||||||
|
As <a href="https://hacktoberfest.com">Hacktoberfest</a> has come to
|
||||||
|
an end, it’s time to look back and share our learnings.
|
||||||
|
Hacktoberfest is a month-long celebration of open source software
|
||||||
|
(OSS) projects, their maintainers, and the entire community of
|
||||||
|
contributors. Each October, open source maintainers from all over
|
||||||
|
the world give extra attention to new contributors while guiding
|
||||||
|
them through their first pull requests on
|
||||||
|
<a href="https://github.com/ghostfolio/ghostfolio">GitHub</a>. This
|
||||||
|
year the event celebrated its 10th anniversary. At Ghostfolio, we
|
||||||
|
have participated in the event for the
|
||||||
|
<a href="../en/blog/2023/09/hacktoberfest-2023">second time</a> this
|
||||||
|
year.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
In this debrief, we’ll take a closer look at our journey during
|
||||||
|
Hacktoberfest, exploring the facts and figures, key takeaways, and
|
||||||
|
the impact on Ghostfolio.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
<section class="mb-4">
|
||||||
|
<h2 class="h4">Hacktoberfest with Ghostfolio</h2>
|
||||||
|
<p>
|
||||||
|
<a href="https://ghostfol.io">Ghostfolio</a> is a modern web
|
||||||
|
application for managing personal finances. The software aggregates
|
||||||
|
your assets and empowers informed decision-making to help you
|
||||||
|
balance your portfolio or plan for future investments.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Our experience at Ghostfolio during Hacktoberfest 2023 has been
|
||||||
|
truly remarkable. Despite the absence of T-shirt rewards this year,
|
||||||
|
our expectations were exceeded in every way.
|
||||||
|
<a [routerLink]="routerLinkAbout">We</a> had the privilege of
|
||||||
|
collaborating with
|
||||||
|
<a
|
||||||
|
href="https://github.com/ghostfolio/ghostfolio/graphs/contributors"
|
||||||
|
>20 talented developers</a
|
||||||
|
>
|
||||||
|
from around the world, each bringing their unique skills and
|
||||||
|
backgrounds to our fintech project.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<figure class="figure">
|
||||||
|
<a
|
||||||
|
href="https://github.com/ghostfolio/ghostfolio/graphs/contributors"
|
||||||
|
>
|
||||||
|
<img
|
||||||
|
alt="Screenshot of the Ghostfolio’s Hacktoberfest 2023 Insights"
|
||||||
|
class="figure-img img-fluid rounded"
|
||||||
|
src="../assets/images/blog/hacktoberfest-2023-insights.png"
|
||||||
|
title="Screenshot of the Ghostfolio’s Hacktoberfest 2023 Insights"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
<figcaption class="figure-caption text-center">
|
||||||
|
Screenshot of the Ghostfolio’s Hacktoberfest 2023 Insights
|
||||||
|
</figcaption>
|
||||||
|
</figure>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
All these contributions made during Hacktoberfest have a significant
|
||||||
|
impact on Ghostfolio. As many as 100 new
|
||||||
|
<a [routerLink]="routerLinkFeatures">features</a> and improvements
|
||||||
|
have been merged to enhance the user experience and software
|
||||||
|
platform management.
|
||||||
|
</p>
|
||||||
|
<p class="text-center">
|
||||||
|
<img
|
||||||
|
alt="Hacktoberfest 2023 Badges"
|
||||||
|
class="figure-img img-fluid rounded w-50"
|
||||||
|
src="../assets/images/blog/hacktoberfest-2023-badges.png"
|
||||||
|
title="Hacktoberfest 2023 Badges"
|
||||||
|
/>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The lessons learned through this global collaboration highlight the
|
||||||
|
collective spirit of the open source community, even without
|
||||||
|
traditional incentives. It serves as a driving force for Ghostfolio
|
||||||
|
to evolve into an exceptional piece of open source wealth management
|
||||||
|
software. Hacktoberfest 2023 has been an amazing and enlightening
|
||||||
|
journey for everyone involved.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
<section class="mb-4">
|
||||||
|
<h2 class="h4">Key Takeaways</h2>
|
||||||
|
<p>
|
||||||
|
We’ve gathered some valuable takeaways from our experience to
|
||||||
|
consider for upcoming years. These insights can help us and fellow
|
||||||
|
open source projects make the most of Hacktoberfest:
|
||||||
|
</p>
|
||||||
|
<ul class="list-unstyled">
|
||||||
|
<li>
|
||||||
|
<h3 class="h5">Prepare early</h3>
|
||||||
|
<p>
|
||||||
|
Prospective contributors often begin looking for tasks as early
|
||||||
|
as the end of September. Preparing your project, organizing
|
||||||
|
issues, and setting clear goals in advance can help you attract
|
||||||
|
and engage more participants.
|
||||||
|
</p>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<h3 class="h5">Meet formal requirements</h3>
|
||||||
|
<p>
|
||||||
|
Ensure that your project aligns with Hacktoberfest’s formal
|
||||||
|
requirements and rules. Properly tag issues, provide clear
|
||||||
|
guidelines for contributions, and make sure your project is
|
||||||
|
accessible to newcomers.
|
||||||
|
</p>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<h3 class="h5">Allocate sufficient time</h3>
|
||||||
|
<p>
|
||||||
|
Being responsive and providing support to participants is
|
||||||
|
crucial. Allocate enough time to answer questions, review and
|
||||||
|
merge pull requests, and offer guidance to first-time
|
||||||
|
contributors. This level of support can significantly enhance
|
||||||
|
the experience for both contributors and maintainers.
|
||||||
|
</p>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<h3 class="h5">Provide clarity in descriptions</h3>
|
||||||
|
<p>
|
||||||
|
When creating issues for Hacktoberfest, be as clear as possible
|
||||||
|
in your descriptions. Including screenshots, links to code
|
||||||
|
examples, and detailed instructions can make it easier for
|
||||||
|
contributors to understand and complete the task successfully.
|
||||||
|
</p>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<h3 class="h5">Isolate tasks</h3>
|
||||||
|
<p>
|
||||||
|
Ideally, focus on tasks that are approachable for beginners, as
|
||||||
|
the setup and frameworks used can already be quite challenging.
|
||||||
|
This way, you can attract a wider range of contributors.
|
||||||
|
</p>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<h3 class="h5">Embrace learning</h3>
|
||||||
|
<p>
|
||||||
|
Understand that not every attempt will result in a successful
|
||||||
|
contribution. It’s okay if a contributor’s pull request doesn’t
|
||||||
|
make it into the project. Encourage a learning mindset and
|
||||||
|
provide constructive feedback, helping contributors grow and
|
||||||
|
improve over time.
|
||||||
|
</p>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
By following these takeaways, we can ensure a rewarding experience
|
||||||
|
for everyone taking part in future Hacktoberfest events.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
<section class="mb-4">
|
||||||
|
<h2 class="h4">Thank you</h2>
|
||||||
|
<p>
|
||||||
|
Our experience with Hacktoberfest truly showcases the magic of open
|
||||||
|
source. The sense of community, mentorship, and our shared
|
||||||
|
dedication to software development is what motivates us at
|
||||||
|
Ghostfolio. As we look forward to future collaborations to make
|
||||||
|
personal finance and investing more accessible, we simply want to
|
||||||
|
thank everyone involved.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Keep coding and sharing your learnings!<br />
|
||||||
|
Thomas from Ghostfolio
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
<section class="mb-4">
|
||||||
|
<ul class="list-inline">
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Code</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Collaboration</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Community</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Development</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Feature</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Finance</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Fintech</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Ghostfolio</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">GitHub</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Hacktoberfest</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Investing</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Investment</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Learning</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Lessons learned</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Mindset</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">October</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Open Source</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">OSS</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Personal Finance</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Portfolio</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Programming</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Software</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Takeaways</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">User Experience</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">UX</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Wealth</span>
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<span class="badge badge-light">Wealth Management</span>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
<nav aria-label="breadcrumb">
|
||||||
|
<ol class="breadcrumb">
|
||||||
|
<li class="breadcrumb-item">
|
||||||
|
<a i18n [routerLink]="['/blog']">Blog</a>
|
||||||
|
</li>
|
||||||
|
<li
|
||||||
|
aria-current="page"
|
||||||
|
class="active breadcrumb-item text-truncate"
|
||||||
|
>
|
||||||
|
Hacktoberfest 2023 Debriefing
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
</nav>
|
||||||
|
</article>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -163,6 +163,15 @@ const routes: Routes = [
|
|||||||
'./2023/09/hacktoberfest-2023/hacktoberfest-2023-page.component'
|
'./2023/09/hacktoberfest-2023/hacktoberfest-2023-page.component'
|
||||||
).then((c) => c.Hacktoberfest2023PageComponent),
|
).then((c) => c.Hacktoberfest2023PageComponent),
|
||||||
title: 'Hacktoberfest 2023'
|
title: 'Hacktoberfest 2023'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
canActivate: [AuthGuard],
|
||||||
|
path: '2023/11/hacktoberfest-2023-debriefing',
|
||||||
|
loadComponent: () =>
|
||||||
|
import(
|
||||||
|
'./2023/11/hacktoberfest-2023/hacktoberfest-2023-debriefing-page.component'
|
||||||
|
).then((c) => c.Hacktoberfest2023DebriefingPageComponent),
|
||||||
|
title: 'Hacktoberfest 2023 Debriefing'
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -8,6 +8,32 @@
|
|||||||
finance</small
|
finance</small
|
||||||
>
|
>
|
||||||
</h1>
|
</h1>
|
||||||
|
<mat-card appearance="outlined" class="mb-3">
|
||||||
|
<mat-card-content>
|
||||||
|
<div class="container p-0">
|
||||||
|
<div class="flex-nowrap no-gutters row">
|
||||||
|
<a
|
||||||
|
class="d-flex overflow-hidden w-100"
|
||||||
|
href="../en/blog/2023/11/hacktoberfest-2023-debriefing"
|
||||||
|
>
|
||||||
|
<div class="flex-grow-1 overflow-hidden">
|
||||||
|
<div class="h6 m-0 text-truncate">
|
||||||
|
Hacktoberfest 2023 Debriefing
|
||||||
|
</div>
|
||||||
|
<div class="d-flex text-muted">2023-11-05</div>
|
||||||
|
</div>
|
||||||
|
<div class="align-items-center d-flex">
|
||||||
|
<ion-icon
|
||||||
|
class="chevron text-muted"
|
||||||
|
name="chevron-forward-outline"
|
||||||
|
size="small"
|
||||||
|
></ion-icon>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</mat-card-content>
|
||||||
|
</mat-card>
|
||||||
<mat-card appearance="outlined" class="mb-3">
|
<mat-card appearance="outlined" class="mb-3">
|
||||||
<mat-card-content>
|
<mat-card-content>
|
||||||
<div class="container p-0">
|
<div class="container p-0">
|
||||||
|
BIN
apps/client/src/assets/images/blog/hacktoberfest-2023-badges.png
Normal file
BIN
apps/client/src/assets/images/blog/hacktoberfest-2023-badges.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 263 KiB |
Binary file not shown.
After Width: | Height: | Size: 227 KiB |
Loading…
x
Reference in New Issue
Block a user