NOTE: The tutorials are in active development. Email email@example.com if you encounter any issues.
|Things you must know
|Before you do anything, you must read this page!
|Setting up your environment
|This tutorial explains how you obtain a learning environment (FreeBSD jail), connect to it, and generally set it up.
|Creating your homepage
|One of the first things you should put up is a web page, so that the internet is aware of your presence. This tutorial explains how to set up the Nginx webserver and create a simple HTML page.
|Command Line Tips
|This tutorial gets you started on using the command line.
|pkg is the package management tool. It is used to manage local packages installed from ports(7) and install/upgrade packages from remote repositories. (Source: pkg(7))
|Sudo allows a permitted user to execute a command as the superuser or another user, as specified in the sudoers file. (Source: sudo(8))
|Ee is a simple screen-oriented text editor. (Source: ee(1))
|Vi is a screen-oriented text editor. (Source: vi(1))
|Emacs is a screen-oriented text editor.
|Atom is a free and open-source text and source code editor for OS X, Linux, and Windows with support for plug-ins written in Node.js, and embedded Git Control, developed by GitHub. (Source: Wikipedia)
|VS Code is a text editor created by Microsoft.
|MySQL is a relational database management system (RDBMS); in July 2013, it was the world’s second most widely used RDBMS, and the most widely used open-source RDBMS. (Source: Wikipedia)
|MySQL Workbench is a visual database design tool that integrates SQL development, administration, database design, creation and maintenance into a single integrated development environment for the MySQL database system. (Source: Wikipedia)
|phpMyAdmin is a free and open source tool written in PHP intended to handle the administration of MySQL with the use of a web browser. It can perform various tasks such as creating, modifying or deleting databases, tables, fields or rows; executing SQL statements; or managing users and permissions. (Source: Wikipedia)
|PostgreSQL, often simply Postgres, is an object-relational database management system (ORDBMS) with an emphasis on extensibility and on standards-compliance. (Source: Wikipedia)
|Nginx (pronounced “engine x”) is a web server with a strong focus on high concurrency, performance and low memory usage. (Source: Wikipedia)
|PHP is a server-side scripting language designed for web development but also used as a general-purpose programming language. (Source: Wikipedia)
|PHP-FPM (FastCGI Process Manager) is an alternative FastCGI implementation for PHP, bundled with the official PHP distribution since version 5.3.3. (Source: Wikipedia)
|WordPress is a free and open-source content management system (CMS) based on PHP and MySQL. (Source: Wikipedia)
|The combination of Nginx+PHP+MySQL+ODBC can be used to create a website in PHP served by Nginx with a database in MySQL that can be connected to using ODBC.
|Let’s Encrypt provides free and automated HTTPS certificates.
|Arrays vs Objects
|No Prototype vs Prototype
|Implementation vs Interface
|In programming one can make a difference between writing an implementation and using an existing implementation through an interface. Most tasks require both, but the differences are discussed here.
|Oracle VM VirtualBox is a hypervisor for x86 computers from Oracle Corporation. It supports the creation and management of guest virtual machines running versions and derivations of Windows, Linux, BSD, OS/2, Solaris, Haiku, OSx86 and others – and limited virtualization of OS X guests on Apple hardware. (Source: Wikipedia)
|Installing A Virtual Machine Manager
|This document contains some instructions for installing VirtualBox, along with a brief discussion of other alternatives to VirtualBox.
|GitHub is a web-based Git repository hosting service. It offers all of the distributed version control and source code management (SCM) functionality of Git as well as adding its own features. It provides access control and several collaboration features such as bug tracking, feature requests, task management, and wikis for every project. (Source: Wikipedia)
|Git is a version control system (VCS) for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for software development, but it can be used to keep track of changes in any files. As a distributed revision control system it is aimed at speed, data integrity, and support for distributed, non-linear workflows. (Source: Wikipedia)
|Slack is a cloud-based team collaboration tool co-founded by Stewart Butterfield, Eric Costello, Cal Henderson, and Serguei Mourachov. Slack began as an internal tool used by their company, Tiny Speck, in the development of Glitch, a now defunct online game. The name is actually an acronym, which means, “Searchable Log of All Conversation and Knowledge”. (Source: Wikipedia)
|Python is a widely used high-level programming language used for general-purpose programming, created by Guido van Rossum and first released in 1991. An interpreted language, Python has a design philosophy which emphasizes code readability (notably using whitespace indentation to delimit code blocks rather than curly braces or keywords), and a syntax which allows programmers to express concepts in fewer lines of code than possible in languages such as C++ or Java. The language provides constructs intended to enable writing clear programs on both a small and large scale. (Source: Wikipedia)
|Poudriere is a BSD-licensed utility for creating and testing FreeBSD packages. It uses FreeBSD jails to set up isolated compilation environments. These jails can be used to build packages for versions of FreeBSD that are different from the system on which it is installed, and also to build packages for i386 if the host is an amd64 system. (Source: FreeBSD)
|FileZilla is a free software, cross-platform FTP application. (Source: Wikipedia)
|dos2unix/unix2dox converts line breaks between the respective systems.
|tmux is a software application that can be used to multiplex several virtual consoles, allowing a user to access multiple separate terminal sessions inside a single terminal window or remote terminal session. (Source: Wikipedia)
|Database Tutorials is a list of tutorial videos that will help guide you through your Database course.
|Introduction to Programming
|Mobile Development is a list of tutorial videos that will help guide you through your Mobile Development Course.