Open-source News

Microsoft + Canonical Announce Native .NET 6 For Ubuntu 22.04 LTS

Phoronix - Tue, 08/16/2022 - 21:30
The latest partnership between Microsoft and Canonical is an announcement today of native .NET availability for Ubuntu 22.04 LTS hosts as well as containers...

AMD CPU Microcode Loading On Linux Being Fixed Up To Be Per-Thread

Phoronix - Tue, 08/16/2022 - 19:00
Up to this point loading updated CPU microcode on AMD processors under Linux has checked just to ensure every physical CPU core was loaded with the new microcode but not sibling threads for SMT processors. While logically that makes sense, it turns out some AMD microcode updates do carry out per-thread modifications that means the microcode updating needs to be carried out on every thread. A Linux fix is on its way to the kernel to adjust that behavior...

NVIDIA Ampere GA103 Support For Nouveau Being Sent In For Linux 6.0

Phoronix - Tue, 08/16/2022 - 18:30
As part of today's "drm-misc-fixes" pull request, NVIDIA Ampere GA103 GPU support is set to be added to the Nouveau DRM driver with Linux 6.0...

Real-Time "PREEMPT_RT" Work Down To Just 50 Patches Atop Linux 6.0-rc1

Phoronix - Tue, 08/16/2022 - 18:16
Following Sunday's release of Linux 6.0-rc1, yesterday saw the release of 6.0-rc1-rt1 as the set of patches for providing real-time kernel support atop the upstream code-base. There is just roughly 50 patches to go until the PREEMPT_RT functionality is mainlined!..

OpenSUSE Developers Continue Discussing x86_64 Microarchitecture Feature Levels

Phoronix - Tue, 08/16/2022 - 17:50
Ahead of the upcoming openSUSE/SUSE Adaptable Linux Platform (ALP), whether to raise the x86_64 micro-architecture feature level required by the Linux OS continues to be evaluated and what options there are for making use of newer x86_64 instruction set extensions without necessarily forcing tightened CPU requirements / eliminating old hardware support...

Lenovo Yoga C630 Snapdragon Laptop Seeing Fresh Linux Improvements

Phoronix - Tue, 08/16/2022 - 17:23
When it comes to Linux on Arm laptops the recent excitement has been around the Asahi Linux porting work for the Apple M2 MacBooks and Linux 6.0 supporting the Qualcomm Snapdragon 8cx Gen3 and the flagship Lenovo ThinkPad X13s Arm laptop. Launched a few years ago though was the Lenovo Yoga C630 powered by a Qualcomm Snapdragon 850 and thanks now to the work of Linaro that older Arm laptop is seeing Linux support improvements...

My practical advice for new programmers

opensource.com - Tue, 08/16/2022 - 15:00
My practical advice for new programmers Sachin Samal Tue, 08/16/2022 - 03:00 1 reader likes this 1 reader likes this

Have you ever been stuck or gone blank trying to solve a problem related to something that you just learned from YouTube or Google tutorials? You seem to understand every line of the code, but without the tutorial, you find yourself in a difficult position. If you have looked at problem-solving in HackerRank or LeetCode, you can relate to how an aspiring programmer feels seeing those challenges for the first time. Everything seems out of the box! Being unable to apply what you learned from a tutorial might make you doubt your knowledge and abilities as you begin to understand the basics of the programming language you're learning.

Putting programming tutorials into practice

Should you start back at the beginning? If you do that, you may soon find that you've covered those topics more than enough times. Starting from scratch is not necessarily a waste, but how can you be more efficient?

Memorization is simply not the solution in programming. Having said that, you cannot neglect the importance of getting used to syntaxes. There is a significant difference between memorizing and making a habit. The latter is difficult to break. Make a habit of playing around with the programming language's regular syntaxes, functions, methods, patterns, paradigms, and constructs to ace it. Acing a programming language involves a lot of creativity and practice. It is essential to practice syntaxes until they flow as smoothly in your brain as the blood runs through your veins.

How problem-solving works

How you approach solutions depends on many factors. These factors could be anything from technical constraints to user needs. The world has innumerable problems and there are many ways of solving each. Deciding on the best way involves extensive problem-solving skills.

Here is a simple example. You need to achieve a result of 6 by adding two numbers. You can accomplish this several ways:

3+3=6 or 4+2=6 or 5+1=6

Similarly, say you need to achieve a result of 6 by using two numbers and either subtraction, division, or multiplication. You have many options, including:

8-2=6 or 12/2=6 or 3*2=6

Each solution may have a different constraint. You must consider all of these when developing effective real-world solutions. Is the solution feasible? Accessible? Interoperable? Scalable? Minimizing the constraint and developing an optimal solution depends on the business need and type of problem.

Programming and development Red Hat Developers Blog Programming cheat sheets Try for free: Red Hat Learning Subscription eBook: An introduction to programming with Bash Bash shell scripting cheat sheet eBook: Modernizing Enterprise Java Practice matters

The goal of programming is much more than problem-solving. Understanding how the code functions from an engineering perspective is always an advantage. That's where code reviews come into play at an enterprise level. The bare minimum requirement in programming is to have basic coding knowledge, including the language's syntaxes, functions, and methods. At the end of the day, coding is what you do, so practicing always helps improve your skills. Fluency in writing and developing complex solutions comes with consistent practice and learning.

Learning to code

My goal for writing and sharing this article is to encourage new programmers to seek the great problem solver in themselves. Please don't stop believing in yourself.

There are many habits to nurture for successful coding. Here are my ways of staying effective while learning to code:

  1. A cheat sheet of syntaxes, methods, and functions can come in handy.
  2. Break problems into smaller parts to make them easier to follow.
  3. Try to understand the core concept of how code functions.
  4. Try to improvise with your solutions but always stick to the basics in the beginning.
  5. Create as many applications and components as possible while practicing.
  6. Never copy/paste code from open platforms like stack overflow/exchange, especially without understanding the context.
  7. After following the tutorial, try to build everything from scratch. If you manage to accomplish half of it by yourself, that's still an achievement.

Good luck to all of us.

Being an efficient and curious problem-solver will help you succeed as a programmer.

Image by:

Opensource.com

Programming What to read next 5 ways to learn C programming on Linux Why I'm enjoying learning Rust as a Java programmer Learn JavaScript by writing a guessing game This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.

Pages