Contributing to free and open source projects is one of the best things a budding software engineer can do to oneself. Like with internships, you get to learn a lot and meet brilliant people. You populate your CV with the names of important projects, and they appear on your public GitHub profile in case someone is trying to cross-check, even though your contribution was just a typo fix. Finally, you feel worthy because you improved something that others clearly benefit from, and feel proud that you acted instead of merely complaining.
It is partly due to my involvement with free software that I was able to solve some peculiar problems at work and excel in some tests at school easily while my peers were trying hard. If a person like me–whose contributions to others’ projects have always been very minimal–feels like this, imagine how it’d change the life of someone who contributes seriously.
Just before getting into the how-to part, let me remind you that you shouldn’t be hyper-focused on external contributions to the point that you don’t have any projects of your own. It’s not about control. If you have any disagreements with the owners of a project, you can easily fork the project because it is free software. You cannot revoke your contributions, but you might be able to reuse them. The real problem is that, if you are a mere contributor, chances are you’ll end up being an expert in some narrow area. On the other hand, if you start and grow projects on your own, you can learn everything — from programming to packaging and branding to marketing.
Please don’t be discouraged by this tip. I want you to keep it in mind because contributing to free software can be addictive!
What does contribution mean?
Esta historia es de la edición September 2024 de Open Source For You.
Comience su prueba gratuita de Magzter GOLD de 7 días para acceder a miles de historias premium seleccionadas y a más de 9,000 revistas y periódicos.
Ya eres suscriptor ? Conectar
Esta historia es de la edición September 2024 de Open Source For You.
Comience su prueba gratuita de Magzter GOLD de 7 días para acceder a miles de historias premium seleccionadas y a más de 9,000 revistas y periódicos.
Ya eres suscriptor? Conectar
Helgrind: Detecting Synchronisation Issues in Multithreaded Programs
Let's explore how Helgrind can be used to detect and debug multithreading issues with the help of a multithreaded C program.
The Perfect Process of Booting a PC
Booting a PC seems as simple as eating a cake. But are you aware of all that goes on behind-the-scenes to bake a delicious cake or seamlessly boot a PC?
Exploring eBPF and its Integration with Kubernetes
eBPF, a game-changing technology that extends the capabilities of the Linux kernel, offers significant advantages for Kubernetes networking. It also greatly improves Kubernetes observability by capturing detailed telemetry data directly from the kernel. Read on to find out how its integration with Kubernetes has immense benefits.
Deploying Generative AI LLMs on Docker
Built on massive datasets, large language models or LLMS are closely associated with generative Al. Integrating these models with Docker has quite a few advantages.
Containerisation: The Cornerstone of Multi-Cloud and Hybrid Cloud Success
Open source containerisation software provides the flexibility, cost-effectiveness, and community support needed to build and manage complex multi-cloud and hybrid cloud environments. By leveraging this software, businesses can unlock the full potential of multicloud and hybrid cloud architectures while minimising vendor lock-in risks.
From Virtual Machines to Docker Containers: The Evolution of Software Development
Containerisation and Kubernetes have eased software development, making it faster and better. Let's see where these are headed, looking at trends that are making life easier for developers.
India's Leap in Supercomputing: Innovating for Tomorrow
As India strides towards self-sufficiency in supercomputing, embracing this evolution isn't just an option-it is pivotal for global competitiveness and technological leadership.
SageMath: A Quick Introduction to Cybersecurity
In the previous articles in this SageMath series, we delved into graph theory and explored its applications using SageMath. In this seventh article in the series, it is time to shift our focus to another crucial subfield of computer science: cybersecurity and cryptography.
Efficient Prompt Engineering: Getting the Right Answers
OpenAl's GPT-3 and GPT-4 are powerful tools that can generate human-like text, answer questions, and provide insights. However, the quality of these outputs depends heavily on how you frame the input, or prompt. Efficient prompt engineering ensures you get the right answers by designing inputs that guide the AI towards relevant, clear, and useful responses. Let's find out how to craft effective prompts with examples.
Analysing Linus Torvald's Critique of Docker
This article looks at Docker's security flaws, particularly its shared-kernel model, and contrasts it with traditional VMs for better isolation. It discusses Linus Torvalds' concerns, explores mitigation techniques, and proposes a roadmap for building a more secure containerisation platform using hardware-assisted virtualisation, true isolation, and a robust orchestration layer.