Home Blog Page 397

Lessons Learned from Growing an Open Source Project Too Fast

Are you managing an open source project or considering launching one? If so, it may come as a surprise that one of the challenges you can face is rapid growth. Matt Butcher, Principal Software Development Engineer at Microsoft, addressed this issue in a presentation at Open Source Summit North America. His talk covered everything from teamwork to the importance of knowing your goals and sticking to them.

Butcher described a case study involving Kubernetes Helm, a package system for Kubernetes. Helm arose from a company team-building hackathon, with an original team of three people giving birth to it. Within 18 months, the project had hundreds of contributors and thousands of active users.

Read more at The Linux Foundation

Developers Love Trendy New Languages but Earn More with Functional Programming

Developer Q&A site Stack Overflow performs an annual survey to find out more about the programmer community, and the latest set of results has just been published.

JavaScript remains the most widely used programming language among professional developers, making that six years at the top for the lingua franca of Web development. Other Web tech including HTML (#2 in the ranking), CSS (#3), and PHP (#9). Business-oriented languages were also in wide use, with SQL at #4, Java at #5, and C# at #8. Shell scripting made a surprising showing at #6 (having not shown up at all in past years, which suggests that the questions have changed year-to-year), Python appeared at #7, and systems programming stalwart C++ rounded out the top 10.

Read more at Ars Technica

Inside the Distros: A Year in Linux Development

Linux will turn 30 in three years. We look at how far the major Linux distributions – or distros – have come over the past year and what they might be able to bring in the future

If the collective roadmap progressions of the major open source distributions (distros) throughout 2017 show anything, it is the importance of applying automation intelligence and cloud network orchestration to the total stack of functions that go towards making up an enterprise-grade Linux operating system (OS).  

The big brands in enterprise Linux include Canonical with its Ubuntu OS, Red Hat with its Red Hat Enterprise Linux (RHEL), and SuSE with SuSE Linux Enterprise Server (SLES). Other growing names spanning the free and open source category include Linux Mint, CentOS, Fedora, Mandriva, ReactOS, Solus and Chrome OS from Google.

Read more at Computer Weekly

Top 10 Reasons to Attend Open Networking Summit NA

In just 2 weeks, you could be one of 2,000 architects, developers, and thought leaders from over 300 companies coming together to drive the future of networking integration, acceleration and deployment.

Top 10 Reasons to Attend

1. Visionary Keynotes Speakers: Thought leaders from Alibaba, Amazon Web Services, Amdocs, AT&T, Google, Huawei, Intel, Orange, Red Hat, Ticketmaster, Uber and more will deliver talks on the future of networking.

2. Networking Demos: LF Networking will showcase 8 community-driven demos (OPNFV, OpenDaylight, OpenvSwitch, ONAP, and DPDK) in the technology showcase. Additional demos will be featured at the Open Networking Foundation booth, the Acumos Project booth, the Cloud Native Computing Foundation booth, and across sponsor booths. Additional demos will be on-hand Tuesday and Wednesday as part of SOSR.

Read more at The Linux Foundation

CNCF to Host NATS

Today, the Cloud Native Computing Foundation (CNCF) Technical Oversight Committee (TOC) voted to accept NATS as an incubation-level hosted project, alongside Kubernetes, Prometheus, OpenTracing, Fluentd, Linkerd, gRPC, CoreDNS, containerd, rkt, CNI, Envoy, Jaeger, Notary, TUF, Rook and Vitess.

Built from the ground up to be cloud native, NATS is a mature, seven-year-old open source messaging technology that implements the publish/subscribe, request/reply and distributed queue patterns to help create a performant and secure method of InterProcess Communication (IPC). Simplicity, performance, scalability and security are the core tenets of NATS.

The project consists of a family of open source components that are tightly integrated but can be deployed independently. NATS is based on a client-server architecture with servers that can be clustered to operate as a single entity – clients connect to these clusters to exchange data encapsulated in messages.

Read more at CNCF

Defining the Spectrum of Cloud Deployment Technologies

We’ve come far from a simplistic separation between on-premises and cloud. Today, it’s about on-premises versus a range of different cloud options. Indeed, the cloud can be a confusing place for newcomers and veterans alike, with new options cropping up every few months, and the landscape always shifting towards the newer and better.

But how do you choose between good, better and best? Let’s compare the various cloud deployment technologies available today and find the common ground and what separates them from each other.

Bare Metal in the Cloud

A bare metal server in the cloud is the closest alternative to a hardware server. Bare metal cloud delivers the real hardware server experience, but instead of the server being hosted in your own datacenter, it’s in a vendor-provided cloud. 

Read more at The New Stack

38-Year-Old Code-Writing Tool Released for General Use

One of the world’s early computer software editors, developed by the University of Adelaide and still in use today, is being released by the University for free use by developers around the world. Under open source licence, beneficial features of “Ludwig” as a software development tool that are not found in other text and code  will be now open to all developers.

Ludwig, a “full screen” editor, was originally designed by Computer Science staff to enable software development on the University’s first VAX (Virtual Address eXtension) interactive computers, bought in 1979 to replace the previous  systems of punch cards, printed output, and batch processing.



Read more at PhysOrg

Development Versions of Oracle Linux UEK now available on GitHub

The Unbreakable Enterprise Kernel (UEK) is a Linux kernel built by Oracle and supported via Oracle Linux support. Its focus is performance, stability, and minimal backports by tracking the mainline source code as closely as is practical. UEK is welltested and used to run Oracle’s Engineered Systems, Oracle Cloud Infrastructure, and large enterprise deployments for Oracle customers.

We’re posting the source on GitHub for our weekly development builds. Building from this repository requires additional dependencies which are indicated on the GitHub README file. The source for production builds will continue to be available via git here.  

Read more at Oracle

An Introduction to Vim for Sysadmins

Why, you ask, should anyone care about Vim? It’s complex, it’s so old it’s a fossil, and you like Kate/Leafpad/Geany/Gedit/Nano/Jed/Lime/Emacs/what-have-you, and the Linux world is cram-full of great text editors, so why bother with Vim?

The main reason it is included in nearly all Linux distributions. Sure, it is rather a desert island scenario to worry about being trapped on an unfamiliar system and you only have Vim to rescue yourself. It does happen. You will especially appreciate it when you have to work over a slow SSH session with high latency because Vim is chock-a-block with powerful single-key commands.

The other reason is it is a customizable powerhouse that rewards a bit of study and tweaking with a nice productivity boost. For example, if you have to tag XML or HTML documents Vim can enter both opening and closing tags with a single keystroke. Or enter blocks of text, such as copyright notices or URLs, with a single keystroke. Vim is so flexible you can make it do just about anything with a minimum number of keystrokes.

Distro Quirks

The ancestral vi is long gone, replaced eons ago by Vim — vi IMproved. Vim includes extensive documentation, unless your distro installs only vim-tiny, which strips out the documentation and other fripperies, which is another reason to know the basics without having to look them up.

Most distros symlink vi to Vim, so you should be able to start it with either vi or vim. However, on some distros, notably Ubuntu, vi starts Vim in vi-compatible mode, and it will behave like the ancestral vi. It will even tell you on the home screen:

Running in Vi compatible mode                                        
type :set nocp for Vim defaults

The biggest hassle with vi-compatible mode is you can’t use the arrow, home, end, page up, or page down keys for navigating your document without entering command mode. We’ll get to Vim’s modes in a moment; the short story is Vim is more comfortable to use than vi. There are two ways to return to normal Vim mode. One is to do what the home screen tells you: press the Escape key and type :set nocp, then press Enter.

To change this permanently create ~/.vimrc and enter this line:

set nocp

A third way is to start Vim with vim instead of vi. On Ubuntu use vim.tiny.

Remembering Vim Commands

Vim’s commands are mnemonic, so it’s not that farfetched that you will remember them. d = delete, y = yank or cut, p = paste, w = write, q = quit. Your hands never leave the keyboard, so you are fast and efficient.

Starting Vim

The biggest hurdle for new Vim users is its dual-mode system. It has a command mode for entering commands, and an input mode for typing your text. Vim starts up in command mode. Let’s start with basic usage.

  • vi opens a new empty document
  • vi [newfilename] opens and names a new document
  • vi [filename] opens an existing document
  • Press the i or Insert key to enter input mode
  • Press the Escape key to leave insert mode and enter command mode

When you are in input mode you can type and edit your text just like any other text editor. Navigate through your document with the arrow keys. Home goes to the beginning of the paragraph, and End goes to the end. Ctrl+Home goes to the beginning of your document and Ctrl+End goes to the end.

Compact Keyboards

If you find yourself stuck with a keyboard that does not have Home, End, or arrow keys, enter command mode:

  • j moves the cursor down one line
  • i moves the cursor up one line
  • G goes to the end of the document
  • gg goes to the beginning of the document
  • h moves the cursor to the left, one character at a time
  • l moves the cursor to the right, one character at a time

Saving Changes and Exiting

Now we come to the fun part: saving your changes and closing Vim.

Save your changes as you go by pressing the Escape key to enter command mode, and then type :w Enter. You will see a confirmation that says something like “newfilename” 7 lines, 40 characters written”.

:sav [filename] names a new document, or saves the file under a new name

To quit and save your changes, enter command mode and type :x Enter or :wq Enter.

:q Enter quits if you have already saved your changes.

If you try to quit with unsaved changes, Vim won’t let you. Make it obey with :q! Enter. (Or save your changes.)

Common Editing Functions

Some common command mode editing functions:

  • u toggles undo/redo.
  • r replaces the character under the cursor
  • x deletes a single character
  • dw deletes a single word, starting from the cursor
  • D deletes to the end of the line, starting from the cursor
  • dd cuts one line
  • Ndd cuts N lines; e.g. 3dd deletes three lines starting with the current line
  • yy copies one line
  • p pastes whatever has been cut or copied
  • :set number displays line numbers
  • :set nonumber turns off line numbering

Advanced Vim

This should be adequate for simple editing tasks like configuration files. To learn advanced Vim functions type :help Enter to see all the built-in documentation. I recommend starting with the tutor, which takes 30-60 minutes to complete. You can launch the tutor outside of Vim by entering the vimtutor command in your shell.

Learn more about Linux through the free “Introduction to Linux” course from The Linux Foundation and edX.

Speak at Automotive Linux Summit & OS Summit Japan — 4 Days Left to Submit a Proposal

Automotive Linux Summit (ALS) connects the developers, vendors, and users driving innovation in Automotive Linux. Co-located with Open Source Summit Japan, ALS will gather over 1,000 attendees from global companies leading and accelerating the development and adoption of a fully open software stack for the connected vehicle.

Share your knowledge and expertise with industry-leading developers, architects and executives at Automotive Linux Summit and Open Source Summit Japan. Submit your proposal by March 18.

Read more at The Linux Foundation