The Network File System (NFS) is a protocol that allows you to set up storage locations on your network. When you have NFS set up, your users can treat a remote hard drive as if it were attached to their computer, just...
As the web grows in popularity and power, so does the amount of data stored and transferred between systems, many of which know nothing about each other. From early on, the format that this data was transferred in mattered, and like the...
Installing Windows on an Intel-based Mac is primarily done using the built-in Boot Camp Assistant, which allows you to dual-boot between macOS and Windows. This process requires a Windows 10/11 ISO file, at least 64GB of free disk space (100GB+ recommended), and...
Fail2Ban scans log files like /var/log/auth.log and bans IP addresses conducting too many failed login attempts. It does this by updating system firewall rules to reject new connections from those IP addresses, for a configurable amount of time. Fail2Ban comes out-of-the-box ready...
In January 2026, I decided to enable the HTTP/3 protocol for NGINX. After a few config tweaks to nginx and modifications to firewall to allow UDP traffic, I was up and running. While reviewing the access and error logs to ensure things...
If you’re still using iptables in 2026, you’re missing out on the power and elegance of nftables. nftables replaces the successful iptables and its related frameworks built on Netfilter. With nftables come improvements to performance and usability, but also significant changes to...
Many sysadmins still manage and troubleshoot various network configurations by using a combination of ifconfig, route, arp and netstat command-line tools, collectively known as net-tools. Originally rooted in the BSD TCP/IP toolkit, the net-tools was developed to configure network functionality of older...
When you encounter a cross-domain problem, don’t immediately choose to copy it and try it. In this tutorial, we look at ways to control origin limitations in NGINX. First, we briefly refresh our knowledge about the concept of origins in the Web...
Effective NGINX practices involve hardening security (hiding version, strong TLS, HSTS), optimizing performance (caching, keepalive, disabling logs), using it as a reverse proxy for microservices, and implementing rate limiting to block bots and protect sensitive areas like login pages, all while maintaining...
To ensure optimal performance, security, and reliability when using Nginx as a reverse proxy to upstream servers, follow these best practices and tips. Enable Keepalive Connections, Use HTTP/1.1 for Upstream, Implement Caching, Define Upstream Groups, Load Balancing Method, etc. Pay attention to...
If you require a full-featured and highly compatible WebDAV server, Apache httpd Autoindex is generally the preferred choice due to its robust and complete implementation. Nginx’s built-in module is intended for simple file management automation and lacks advanced features like file locking....
Improving Nginx performance involves optimizing its configuration and leveraging its features to efficiently handle requests and deliver content. For most use cases, default NGINX and Linux settings work well, but achieving optimal performance sometimes requires a bit of tuning. NGINX is incredibly...
Nginx is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more. It started out as a web server designed for maximum performance and stability. In addition to its HTTP server capabilities, Nginx can also function as...
Warning! SSL is Deprecated in MinIO project. TLS is the successor to Secure Socket Layer (SSL) encryption. SSL is fully deprecated as of June 30th, 2018. MinIO supports Transport Layer Security (TLS) 1.2+ encryption of incoming and outgoing traffic. MinIO can automatically...
MinIO is a high-performance, S3-compatible object storage solution released under the GNU AGPL v3.0 license. Designed for speed and scalability, it powers AI/ML, analytics, and data-intensive workloads with industry-leading performance. As of October 2025, MinIO shifted its community edition to a "source-only"...
How Redis writes data to disk? Redis persistence refers to the writing of data to durable storage, such as a solid-state disk (SSD). Redis provides a range of persistence options. These include: RDB (Redis Database), RDB persistence performs point-in-time snapshots of your...
Horizontal scaling with Redis Cluster. Redis scales horizontally with a deployment topology called Redis Cluster. This topic will teach you how to set up, test, and operate Redis Cluster in production. You will learn about the availability and consistency characteristics of Redis...
How Redis supports high availability and failover with replication? At the base of Redis replication (excluding the high availability features provided as an additional layer by Redis Cluster or Redis Sentinel) there is a leader follower (master-replica) replication that is simple to...
Redis Sentinel is a free and open-source solution for high availability and scalability with non-clustered Redis. Redis Sentinel provides high availability for Redis when not using Redis Cluster. Redis Sentinel also provides other collateral tasks such as monitoring, notifications and acts as...
Redis has optional support for TLS on all communication channels, including client connections, replication links, and the Redis Cluster bus protocol. Enabling SSL/TLS support in Redis involves configuring the Redis server to use TLS for secure communication. Then requires generating and providing...
Improving Redis performance involves a combination of configuration, architectural, and application-level optimizations. In any database setup, performance is always a challenge and is most of the time database administrators and developers always deals with especially for a production and large environment. It’s...
Redis provides two ways to authenticate clients. The recommended authentication method, introduced in Redis 6, is via Access Control Lists, allowing named users to be created and assigned fine-grained permissions. The legacy authentication method is enabled by editing the redis.conf file, and...
Debian 13 Trixie was released on August 9, 2025. The release of Debian 13.0 marked the initial stable version of the Trixie release, with a subsequent update, 13.1, released on September 6, 2025. This page provides a step-by-step guide to updating Debian...
Redis (which means REmote DIctionary Server) is an open-source, well known and advanced in-memory data structure store, used as a database, cache and message broker. You can consider it as a store and a cache: it has a design where data is...
Upgrading MySQL is a common procedure, as you pick up bug fixes within the same MySQL release series or significant features between major MySQL releases. You perform this procedure first on some test systems to make sure everything works smoothly, and then...
MySQL InnoDB Cluster is a free and open-source solution for high availability and scalability, available under the GNU General Public License (GPL) as part of the MySQL Community Edition. This includes the necessary components like MySQL Server, MySQL Shell, and MySQL Router....
I see a lot of bad system design advice. One classic is the LinkedIn-optimized “bet you never heard of queues” style of post, presumably aimed at people who are new to the industry. Another is the Twitter-optimized “you’re a terrible engineer if...
The MySQL clone plugin permits cloning data locally or from a remote MySQL server instance. Cloned data is a physical snapshot of data stored in InnoDB that includes schemas, tables, tablespaces, and data dictionary metadata. The cloned data comprises a fully functional...
MySQL 8.4 supports different methods of replication. The traditional method is based on replicating events from the source’s binary log, and requires the log files and positions in them to be synchronized between source and replica. The newer method based on global...
MySQL backup and recovery are crucial processes for data protection and business continuity. It is important to back up your databases so that you can recover your data and be up and running again in case problems occur, such as system crashes,...
MySQL supports encrypted connections using the Transport Layer Security (TLS) protocol, which is sometimes referred to as SSL. This ensures secure data transmission between MySQL clients and servers, preventing unauthorized access or tampering. Several configuration parameters are available to indicate whether to...
Optimization of MySQL involves configuring, tuning, and measuring performance, at several levels. Depending on your job role (developer, DBA, or a combination of both), you might optimize at the level of individual SQL statements, entire applications, a single database server, or multiple...
Linux supports a number of different solutions for installing MySQL. And Oracle also provides a set of binary distributions of MySQL too. Oracle recommend that you use one of the distributions from Oracle, for which several methods for installation are available at...
A package manager is software that allows a user to install new software, upgrade the system, or update specific software, among other tasks. On Linux-based systems, where software often has many dependencies that must be present on the system for complete installation,...
If you don’t understand the motivation behind Git’s design, you’re in for a world of hurt. With enough flags you can force Git to act the way you think it should instead of the way it wants to. But that’s like using...
This model was conceived in 2010, now more than 10 years ago, and not very long after Git itself came into being. In those 10 years, git-flow (the branching model laid out in this article) has become hugely popular in many a...
IPv4 was introduced in the late 1970s and was first officially described in RFC 760 in January 1980, later replaced by RFC 791 in September 1981. In those early years for computer networks, there were less than a few thousand hosts on...
IPv6 provides enough addresses to allow the Internet to continue to expand and the industry to innovate. It is not, however, directly compatible with IPv4, meaning that a device connected via IPv4 cannot communicate directly with a device connected using IPv6. IPv6...
In this article, we will share deprecated Linux commands and their replacements. These commands include ifconfig, netstat, arp, nameif, and more. Importantly, you should keep in mind that unmaintained software is dangerous, it poses a great security risk to your Linux system....
The Phantun is a project that obfuscated UDP packets into TCP connections. It aims to achieve maximum performance with minimum processing and encapsulation overhead. It is commonly used in environments where UDP is blocked (throttled) but TCP is allowed through. The Phantun...
The UDP Reverse Tunnel project by the author of TorChat does the job. The udp-reverse-tunnel create an UDP-over-UDP reverse tunnel to make a VPN server behind (CG-)NAT accessible from the outside. Note that there is no encryption. Packets are forwarded as they...
The diff is a command-line utility that allows you to compare two files line by line. It can also compare the contents of directories. The diff is most commonly used to create a patch containing the differences between one or more files...
Like peanut butter and chocolate, cut and tr are two great commands that go great together. The cut provides an easy way to grab one or more fields from a line of text, and tr allows you to prepare the line first....
Text processing in Linux refers to manipulating, analyzing, and managing textual data using various command-line tools and utilities available in the Linux operating system. It involves performing a wide range of tasks on text data, such as searching, filtering, sorting, formatting, and...
Sometimes when I’m bored, I like to look at the list of macOS Bash commands. macOS comes with a lot of built-in utilities. Here’s a list of some that I find interesting. macOS is a Unix OS and its command line is...
There are multiple ways to configure the network in modern Linux systems. The most popular are using Network Manager and Systemd. However, sometimes we need to do it manually using the /etc/network/interfaces configuration file. In this tutorial, we’ll see how to configure...
An ISO file is a bit-by-bit copy of the contents of a CD, DVD, or Blu-ray disc. These files are commonly used for archival and distribution purposes, and we can burn them to optical discs or mount them in read-only mode. In...
The WAR (Web ARchive) files are a type of archive file used to package web applications into a single file. They are similar to the Java ARchive (JAR) files and are typically used to deploy web applications in a Java environment. In...
Systemd is a cutting-edge system and service manager for Linux systems: an init daemon replacement intended to start processes in parallel at system boot. It is now supported in a number of current mainstream distribution including Fedora, Debian, Ubuntu, OpenSuSE, Arch, RHEL,...
A virtual private network is a service that provides you with a secure and private internet connection wherever you are in the world. A VPN creates an encrypted tunnel to keep your data safe, hides your IP address to facilitate anonymous browsing...
In this example we are going to make a remote strongSwan Server (UDP Port 500 and 4500) available on our local computer on the same ports. Network Address Translation (NAT) is a method used to remap one IP address space into another...
Port forwarding also called “port mapping” commonly refers to the network address translator gateway changing the destination address and/or port of the packet to reach a host within a masqueraded, typically private, network. In the Linux kernel, port forwarding is achieved by...
Sharing the networking is important and setting up a gateway is a good solution to it. Building up the gateway on a Linux box is easy, cost efficient and reliable. With a Linux box, you can share the internet connection or the...
Experienced Linux administrators likely know the frustration and pain that comes with a system reboot completely wiping a system’s iptables rules. That is because iptables rules, by default, will not persist after a reboot. After configuring your system’s iptables rules, there is...
Any Java application from the system point-of-view is just an instance of the Java Virtual Machine. In this short tutorial, we’ll see how we can make our applications run as system services. We’ll use the facilities of the systemd software package. systemd...
Windows 98 has been running pretty well in VirtualBox, but with the latest motherboard and VirtualBox updates, it has not been possible. Decided to give Windows 98 and VirtualBox a new tryout and ended up with a Windows 98 version much better...
The top command is a Linux utility that is used to display real-time information about running processes on a system. It provides a summary of the current state of the system, including the CPU, memory, and swap usage, as well as a...
In this tutorial, we’ll discuss how to monitor system activity in the Linux. It’s an important task to perform while maintaining a system. We need to see if there’s a bottleneck and what causes it, as well as identify which process is...
The origins of cron date all the way back to 1975, in Version 7 Unix. Its dependability soon made it a favorite tool for scheduling tasks to run at specified dates and times. Admittedly, its syntax is pretty quirky. If you don’t...
OpenSSH is a free and open source, full implementation of the SSH protocol 2.0, which provides a number of tools for securely accessing and managing remote computer systems. Recently OpenSSH 9.7 was released and ships with many new features and bug fixes....
Shell scripting is the easiest form of programming you can learn/do in Linux. More so, it is a required skill for system administration for automating tasks, developing new simple utilities/tools just to mention but a few. In this article, I will share...
Bash supports a surprising number of string manipulation operations. Unfortunately, these tools lack a unified focus. Some are a subset of parameter substitution, and others fall under the functionality of the UNIX expr command. This results in inconsistent command syntax and overlap...
The “sslh” accepts connections on specified ports, and forwards them further based on tests performed on the first data packet sent by the remote client. Probes for http, tls/ssl (including SNI and ALPN), ssh, openvpn, tinc, xmpp, socks5, are implemented, and any...
Scripting languages have long been the linchpin of system administration, and amongst them, the Bourne-Again SHell (Bash) is one of the most renowned and widely used. Bash, an integral part of Unix and Linux systems, offers a robust environment for administrators and...
Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator. It runs on...
Some environments restrict access to the Internet by requiring traffic to pass through an HTTP, HTTPS or SOCKS 4/5 proxy server. You can use the Command Line Interface (CLI) to provide the proxy settings to all apps, including system apps and service....
RedHat (and thus CentOS) doesn’t have the latest version of every software, it has a consistent version. For CentOS 7 the current version is bash-4.2.46-33.el7. RedHat will backport security fixes but may not backport functionality enhancements because they can cause compatibility issues....
The Java 8 brought some groundbreaking changes including Lambdas, Functional Interfaces, Stream API and other useful features. While Java 11 offered some less noticeable performance improvements, the two versions both offer long term support (LTS). The vast majority of dev shops are...
When it comes to Java applications, to make sure they run at peak performance, it’s critical to close the resource gap between the code and the virtual machine it’s running on – if there is one. The way to do that is...
On Linux, Development tools are required to install on your system if you have planned to build software. Over time, the GCC team releases new versions with enhanced features, optimizations, and bug fixes. Upgrading to the latest GCC version can provide performance...
Notes: OpenSSL 3.0 has been released, and with it there are some notable changes to the popular library used almost everywhere for implementing SSL/TLS. As of now, the OpenSSL 1.1.1 branch is still under active development, so while it’s worth evaluating the...
By default, CentOS ships with a custom-built kernel to ensure its integrity and compatibility with supported hardware. The latest release of Kernel can be installed on CentOS 7 by building it or using an RPM repository with pre-built packages. In this guide,...
A development environment is the collection of processes and tools that are used to develop the source code for a program or software product. This involves the entire environment that supports the process end to end, including development, staging and production servers....
Windows is pretty easy to get started with, but for the best experience, there are some important things to do after installing Windows. Doing these takes a bit of time, but sets you up for a smoother time down the road. If...
If you’re using an Apple device for the first time, you’ll need to set up an Apple ID. Think of this as your key to Apple’s ecosystem - it essentially allows you to do everything from logging in to iCloud to making...
Here is a list of tweaks and things to do after installing Linux, to get a smoother and better Linux experience. This guide explains things that you should do after installing Linux. This focuses on the Debian but should work for those...
Linux gives full control over the system. The limits.conf file is a configuration that is used to limit the resources to the user, groups. Now let’s understand the file structure of limits.conf and how can we use the limits.conf to limit resources...
You can use Red Hat Linux for free. However, it requires a different process that what you are accustomed with SUSE or Debian. In January 2021, Red Hat announced a new free of cost subscription that was aimed at individuals wanting to...
Various installation guides in Linux involve running a shell script first, which we download and then execute separately using Bash. Not only installation guides but also custom shell scripts written for automating manual activities involve downloading and executing some scripts. In this...
This article explained how to add a static route and other vital parameters to a routing table using PowerShell. If you want to see the contents of your entries, use the Get-NetRoute command to view the routing table, and you’ll see all...
Linux is a free and open source operating system. There are many variants of Linux out there. They are typically called Linux distribution. Suse, OpenSUSE, Debian, Ubuntu, CentOS, Arch, Fedora, RHEL all are common Linux distribution names. Knowing your os version and...
Updated on June 23, 2022: IBM MQ, previously IBM WebSphere MQ and the IBM MQ Series, is an enterprise-oriented messaging middleware. According to the IBM website, “It works with a broad range of computing platforms, applications, web services and communications protocols for...
Which IBM MQ files should I clean up to maintain my system? IBM MQ queue managers automatically maintain the files which belong to the queue manager. IBM MQ also creates files to help diagnose unexpected conditions when it detects them, and these...
How to define an MQ Listener and how to change the port number? What if you have an MQ queue manager named QMGR1 and there is no Listener associated yet with that queue manager. You want to create a Listener that uses...
RDQM architecture page described the basic architecture of Replicated Data Queue Manager High Availability and Disaster Recovery (RDQM HA and RDQM DR) configurations to assist with troubleshooting. DRBD9 User’s Guide described that DRBD (Distributed Replicated Storage System) is a software-based, shared-nothing, replicated...
Pacemaker is a high-availability cluster resource manager. It achieves maximum availability for your cluster services (a.k.a. resources) by detecting and recovering from node and resource-level failures by making use of the messaging and membership capabilities provided by Corosync. It can do this...
You can install the IBM MQ Information Center to your local machine for personal use, or you can install it on an internal server and access it from the network with an internal URL. Installing it on your personal machine allows you...
Artificial Intelligence (AI) is a field that has a long history but is still constantly and actively growing and changing. In the era of digital transformation, Artificial Intelligence (AI) has emerged as a groundbreaking technology that’s reshaping the way we work, communicate,...
With every new subject, the sooner you start playing with the code, the faster you will learn the given concepts. Even if you blaze through an entire chapter of reading and a topic like for loops seems straightforward - so a monkey...
Are you a software engineer, developer, coder or maybe even a tech enthusiast who has been hearing of terms like Microservices and Docker but still clueless as to why there is so much hype around it? if yes, this is a must-read...
Github Pages is a static web hosting service offered by Github since 2008 to Github users for hosting user blogs, project documentation, or even whole books created as a page. All Github Pages content is stored in a Git repository, either as...
Vim (a contraction of Vi IMproved) is a free and open-source, screen-based text editor program. It is an improved clone of Bill Joy’s vi. Vim’s author, Bram Moolenaar (1961 - 3 August 2023), derived Vim from a port of the Stevie editor...
A repository mirror is an up-to-date archive of all files, packages that make up a particular open source operating system. These mirrors are used for patching, updating, installing the particular operating system from a location (mirror) closer to your internet connection location....
Advanced Package Tool (APT), the main command-line package manager for Debian and its derivatives. It provides command-line tools for searching, managing and querying information about packages, as well as low-level access to all features provided by the libapt-pkg and libapt-inst libraries which...
In simpler words, a package manager is a tool that allows users to install, remove, upgrade, configure and manage software packages on an operating system. The package manager can be a graphical application like a software center or a command line tool...
Scoop is a command-line installer for Windows. This software can manage installation and uninstallation of applications easily without polluting the environment, and the structure of management is simple. The package handled is less than Chocolatey, but it is especially focused on the...
Starting with macOS Catalina, Apple has dropped support for bash, which is widely used in Linux systems, due to licensing issues. Newer versions of Bash (version 4.0) are licensed with GPL v3.0 which is more restrictive, basically it doesn’t allow to be...
Secure shell (SSH) is one of the most ubiquitous Linux tools. It provides secure connectivity among workstations, servers, managed switches, routers, and any number of other devices. Linux and macOS include SSH, and it’s easy to add to Windows. This article provides...
This series has already covered a few basics about ~/.ssh/config in terms of how to simplify the usage of ssh tunnelling. In order to round this up a bit more, I will add some information you should be aware of about ~/.ssh/config....
SSH is the most popular and secure method for managing Linux servers remotely. One of the challenges with remote server management is connection speeds, especially when it comes to session creation between the remote and local machines. There are several bottlenecks to...
I can use my home computer CLIENT to connect by SSH to a server SRV where access to the external network is blocked. In other words, all requests to Internet from SRV throw an error: Network is unreachable. Can I redirect all...
Previously we described how SSH port forwarding can be used to securely access other servers in the remote network. This technique is useful for TCP packets. If you need to transmit UDP packets this is slightly more complicated. We will need to...
Say you have a Linux machine to which you want to ssh to but that machine is behind corporate or other firewalls etc which you have no control over, and thus you can not forward an external port for ssh etc. Let’s...
How make a SSH Tunnel persistent? By persistent I mean, that it is made sure the tunnel will always run. For example, once your ssh connection times out (By server-side timeout), your tunnel should be re-established automatically. I know there are plenty...
When it comes to the art of SSH tunnelling, there are basically two options where to relay a port to. You can relay a port from a remote server to your local machine with ssh -L, hence called Local port forwarding. A...
If you want to search files by a pattern and then apply something to the results you have at least two choices. You can use find. -exec or you can pipe the results to xargs. There are also two different choices for...
When working on Linux and Unix systems, copying files and directories is one of the most common tasks you’ll perform on a daily basis. cp is a command-line utility for copying files and directories on Unix and Linux systems. SCP (secure copy)...
Rsync (Remote Sync) is an useful command line utility for Unix like systems to synchronize files between two remote systems. A user can also use rsync command to sync files between two directory on same system. The rsync uses delta-transfer algorithm, which...
Update 18 February 2021: Go team plan to drop support for GOPATH mode in Go 1.17. In other words, Go 1.17 will ignore GO111MODULE. 18 February 2021: Go plan to make go get STOP installing binaries 18 February 2021: Go plan to...
The Excellent Projects Built Using Golang… HTTP Server Caddy Database InfluxDB TiDB Messaging Platform (MQ) NSQ Frameworks Beego Gorilla Cloud Native Architecture (Arch) Docker Kubernetes (K8S) ETCD Caching System GroupCache HTTP Server Caddy Caddy Repo on Github.com Caddy Home Page Host a...
Go.dev is a companion website to golang.org. golang.org is the home of the open source project and distribution, while go.dev is the hub for Go users providing centralized and curated resources from across the Go ecosystem. A List of Golang books GOPL.IO...
Very Important Notes: Starting in Go 1.13, Module mode will be the default for all development. A module is a collection of Go packages stored in a file tree with a go.mod file at its root. The go.mod file defines the module’s...
Update 18 February 2021: Go team plan to drop support for GOPATH mode in Go 1.17. In other words, Go 1.17 will ignore GO111MODULE. This is a big step toward using modules in all projects. If you have projects that do not...
Concurrent programming, the expression of a program as a composition of several autonomous activities, has never been more important than it is today. Web servers handle requests for thousands of clients at once. Tablet and phone apps render animations in the user...
Interface types express generalizations or abstractions about the behaviors of other types. By generalizing, interfaces let us write functions that are more flexible and adaptable because they are not tied to the details of one particular implementation. Many object-oriented languages have some...
Since the early 1990s, object-oriented programming (OOP) has been the dominant programming paradigm in industry and education, and nearly all widely used languages developed since then have included support for it. Go is no exception. Although there is no universally accepted definition...
A function lets us wrap up a sequence of statements as a unit that can be called from elsewhere in a program, perhaps multiple times. Functions make it possible to break a big job into smaller pieces that might well be written...
In Chapter 3 we discussed the basic types that serve as building blocks for data structures in a Go program; they are the atoms (原子) of our universe. In this chapter, we’ll take a look at composite types, the molecules (分子) created...
It’s all bits at the bottom, of course, but computers operate fundamentally on fixed-size numbers called words, which are interpreted as integers, floating-point numbers, bit sets, or memory addresses, then combined into larger aggregates that represent packets, pixels, portfolios, poetry, and everything...
In Go, as in any other programming language, one builds large programs from a small set of basic constructs. Variables store values. Simple expressions are combined into larger ones with operations like addition (+) and subtraction (-). Basic types are collected into...
This chapter is a tour of the basic components of Go. We hope to provide enough information and examples to get you off the ground and doing useful things as quickly as possible. The examples here, and indeed in the whole book,...
“Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.” ( From the Go web site at golang.org ) The Origins of Go The Go Project Organization of the Book Where to Find More...
Let’s Encrypt is a free, automated, and open certificate authority brought to you by the Internet Security Research Group (ISRG). ZeroSSL is the first real alternative to Let’s Encrypt, offering completely free SSL certificates through an easy-to-use UI and API. but one...
The Apache Tomcat software is an open source implementation of the Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Annotations and Jakarta Authentication specifications. These specifications are part of the Jakarta EE platform. There are many ways to compare...
There are many ways to compare Tomcat vs. the Apache HTTP Server, but the fundamental difference is that Apache Tomcat is a web container, It allows the users to run Servlet and JAVA Server Pages that are based on the web-applications. Tomcat...
Concurrent Versions System (CVS, also known as the Concurrent Versioning System) is a revision control system originally developed by Dick Grune in July 1986. CVS is an important component of Source Configuration Management (SCM). Using it, you can record the history of...
Although bash is a powerful scripting environment it is a bit deficient, compare to other scripting languages, when it comes to date/time calculations. There are no convenient, generally available, date functions such as datediff or overloaded operators for mathematically manipulating dates and...
Control flow is a fundamental concept in programming languages that dictates the order in which statements are executed within a program. It enables you to make decisions, iterate over data, and control the flow of execution based on conditions or other factors....
Pretty much everything is available on the internet, and Google is one of the main ways people search for information. And while you might think it’s obvious, many internet users don’t know how to use Google search efficiently and effectively. In truth,...
Even if you’re a top-tier developer, a solid understanding of the more practical side of English grammar can help you really stand out. In this article, we’ll outline how learning English for developers can help you get a leg up on the...
Syntax is the grammatical structure of sentences. The format in which words and phrases are arranged to create sentences is called syntax. 英语的二十种时态 汉语用词表达,英语用形式表达 什么是时态 时间的定义 状态的定义 动词的十二类时态 一般式 进行式 完成式 完成进行式 过去将来时 为什么第三人称单数时动词要加 S References 英语的二十种时态 汉语用词表达,英语用形式表达 过去完成时:我昨天吃了饭 过去进行时:我昨天在吃饭的时候看见了那只猫 现在完成时:我吃过饭了 现在进行时:我正在吃饭...
Overview Markdown is a text-to-HTML conversion tool for web writers. Markdown based on conventions for indicating formatting in email and usenet posts. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid HTML. Markdown...
Overview Markdown is created by Daring Fireball; the original guideline is here. Its syntax, however, varies between different parsers or editors. Typora try to follow GitHub Flavored Markdown, but may still have small incompatibilities. Overview Block Elements Paragraph and line breaks Headers...
Where are my documents stored? The most common cloud service is file storage, A branch of folders and files on your computer’s mass storage system, and, a lot of informations stored in Mail services, and more … Mac OS X WWW Apps...
Powered by www.netmask.dev