How to Modify Open Source Code

The modern age of technology is amazing. New software and devices are being created every day and made available to the public using open source code, which means the creation was crowdfunded by a community who shares knowledge and creations with each other freely. But how can you apply open source code to your own projects? This book takes a hands-on approach to all the basic concepts of modifying computer programs.

If you want to modify open source code, but don’t know where to begin, then this book is for you. You’ll learn about the open source community, their expectations and how to modify and distribute your modifications. You will learn about some of the licenses used in open source software, why they are important and the pros and cons of choosing a license before you start to develop. The book also provides some guidance on how to find and choose an open source project to contribute to. This book was originally developed as slide presentations. They have been converted into ebook format using lots of tables, figures and links between chapters. The format ensures that it will be easy for you to find information on a particular topic when you need it.

Create an Account

Before you get started with using GitHub, it’s best to create an account with them. Creating an account is free and will allow you to take advantage of numerous features such as forking. GitHub also has different membership levels besides the free one, but a free account should be more than enough for personal use.

Notepad ++

Notepad ++ is an open source replacement version of the original notepad that comes with Windows and supports a wide range of different languages. Though it was originally build for Microsoft windows, Notepad ++ is capable of running on Unix, Linux and Mac OS X. Notepad++ comes with a lot of additional features including tabbed editing, plugin support, split screen editing, spell checker, drag and drop, and synchronized scrolling. It  also supports syntax folding and highlighting for 48 different scripting, programming and markup languages.

  • Quick and lightweight
  • Tabbed interface for editing
  • Plugin macros and support
  • Full screen mode
  • Auto indentation
  • Compiler integration
  • Spell checker and collaborative editing


  • No SSH, HTTP or WebDay for remote file editing
  • Need additional work to run on OS X
  • No support for large files

Checking Out a Project

how to view open source code

Once you have an account you can dive straight into an open source application found on GitHub. Here you can see the application’s project page, including folders and files pertaining to the application, a network graph, a list of pull requests, open issues, a wiki, and other graphs. Obviously, if you want to see the code within the files, you should click on them and you’ll be presented with the full source code. As far as interpreting the code goes, you’ll need to have some background in the programming language that the application is written in, whether it be Java, C++, Python, or something else. For those wondering, the screenshot shows Caleb Evan’s jcanvas project.


ATPad is another rendition of notepad with a couple of upgrades thrown in. Although it is available in English, you can also get ATPad in eleven other languages. With ATPad, you get customization options, tabbed editing, word wrapping, line numbering, customizable snippets, bookmarks, sending through e-mail and more. Because ATPad does not require installation, it can be opened from just about any drive without installing the software and doesn’t leave any traces. In order to remove it, the ATPad directory simply needs to be deleted.

  • Tabbed interface editing
  • Text snippets and line numbering
  • Tilting and cascading for windows
  • Documents can be sent through email
  • Bookmarks can be added
  • No installation is required
  • Unlimited opportunities to undo and redo, or find and replace


  • Does not include a spell checker

Forking a Project

view open source

Editing the code requires some additional steps. If you wish to copy the code without officially forking it on GitHub, you’ll need to download the project’s files and then edit them locally on your computer. However, if you’re truly looking at using the currently available source and creating your own project with it and going in your own direction, you’ll want to fork it. Forking can be accomplished with an account, and by clicking on “Fork” on the project’s page as shown in the screenshot. The next few instructions are for Linux users who should install the G


package for their respective distribution.

view open source

If you wish to retrieve the repository’s files to your computer, you’ll need to run the command

git clone

, replacing username with your GitHub username and project_name with the name of the application project that you just forked. Run this command within a folder that should contain all of your GitHub projects, as each git clone command will create a new folder within the one you’re currently residing. This is another way of downloading a project’s file as it doesn’t require login credentials. Now you can change the files as you please using any text editor or IDE. For Linux users, I’d recommend Eclipse or Geany as they’re great programming editors — Eclipse being more full-featured and Geany being leaner. Windows users can also use the native GitHub client.


JEdit is a program that can be installed on Linux, Unix, BSD, OS/2, Mac OS X and Windows. Written using Java, JEdit is an open source option for editing that supports hundreds of different macros and plugins. The main window can be vertically or horizontally split, and also comes with an option for syntax highlighting and auto indent for over 130 languages. There are also a number of customization options for this program that allow you to make the status bar, tool bar, dock and everything else, look exactly how you want it to. It is even possible to copy and paste on an unlimited number of clipboards.

  • Customization options and Syntax highlighting
  • Auto completion and auto indentation
  • Power-packed search engine
  • Text and code folding
  • Compiler integration
  • Tabbed editing interface
  • Plugin and macros support
  • FTP browser integrated
  • FTP support
  • Spell checker
  • WebDay and HTTP support for remote editing


  • Quite heavy in weight and slow to start up
  • Can be quite buggy when used on Macs
  • Inconsistent spell checking
  • No support for large files, and no collaborative editing options
  • No SSH support for editing on a remote basis


Modifying open source code can be great fun, but sometimes it is difficult to figure out how to do it. This article helps you modify open source code.


No Comment.