Plant a Seed Watch It Grow: The Journey of a Software Developer
Amazing software developers often approach tasks differently than I do and utilize different tools than I use. Some of the people that I have learned the most from are the people I have found that are the most different from me. Developers often integrate tools that make their coding experience comfortable and enjoyable. GitHub and GitLab are similar tools that accomplish many of the same jobs. When working in GitHub, I modify my study to take place in the browser over the desktop app. On my personal projects, I regularly utilize GitLab instead of GitHub because I prefer the user interface. These choices are my personal coding preference and another developer might completely disagree with me. A personal learning style or preference does not have to limit a developer from engaging in other tools and learning new things.
Like GitHub and Gitlab, CRON and Jenkins are similar tools that are used to accomplish many of the same purposes. A CRON or Jenkins job is a scheduled task. CRON tasks are often easier to manage with a management tool like Jenkins because Jenkins includes useful plugins that facilitate Continuous Integration and Delivery. Some software developers configure Jenkins jobs using different CRON options.
When utilizing GitHub to save my development code, instead of coding on my main branch, I can set up a GitHub branch system. Utilizing Github on my projects does not mean that I regularly utilize development and release branches. It does however mean I can quickly modify my programming experience to include development and release branches as I understand several aspects of the tool. Similarly, utilizing Jenkins does not automatically equate to properly implementing a CI/CD pipeline. If I am utilizing CRON and not using Jenkins, it does not mean I cannot set up a proper CI/CD pipeline. A developer with foundational knowledge can often swap, mix, and match tools when working for different companies. Some of the tools a developer might combine to create a CI/CD pipeline would be Windows PowerShell, Jenkins, Bash, CRON and the Windows task scheduler, among many other tools. For example, PowerShell scripts and CRON jobs can be utilized in Jenkins when creating a CI/CD pipeline.
Software developers are some of the smartest humans I have ever had the pleasure of working with. Their unique perspectives and communication styles enable a company to look outside of the box. Some people often raise arguments regarding which programming language makes a software developer a developer, which tool makes a project professional, and which degree is required to prove a developers intelligence and worth. However, a software developer utilizes tools, programming languages, and all forms of research to best perform a job. Many of the jobs we will face as software developers will not be reinventing the wheel. The truth is, there are a million ways to complete a task. Your future job will most likely be a similar variation, and not an exact replication, of the processes we learn in class. Learning different ways software development teams currently approach problems in the industry prepares a software developer to join a team that operates according to a predefined system. Software developers grow from designing programs and tools that other software developers have approached in the past. We move forward as a group by expanding our ideas over time to automate some aspects of project deployment to make room for other areas of study and expansion. To say that a software developer cannot create their own version of a project and add their own flair would be to destroy the learning path of a software developer. Software developers learn from modifying the wheel and creating new tools for other software developers to utilize. Jobs require different deployment options, different security levels, different functions and goals. Regardless of the tools a team uses, it’s the fundamentals that keep us on track.
While Jenkins expanded from CRON, many people love Jenkins and find it helpful. Many teams utilize it daily today. We must support software developers in traveling the wheel that explores and expands from projects that have been created by other software developers. Learn to look at other developers and say “Good Job” instead of you’re copying so and so. One of the greatest things about being a software developer is that we work in a field where we can learn and grow together, encouraging each other, and challenging each other to expand from our own ideas and goals.
https://medium.com/@hugohenley/jenkins-and-cron-jobs-b9781110b423 https://davedevelopment.co.uk/2015/06/04/scheduled-tasks-with-jenkins.html
Comments
Post a Comment