text:
Ada Programming/Constants

Objects
Variables and constants both store data. The difference between them is that the data stored in a variable can be changed during program execution, whereas the data stored in a constant cannot. Both must be declared as a specific type, but only the constant requires a value (the data) to be assigned (initialized) when it is declared.

In Ada, variables and constants are actually called objects (Ada RM ). This has nothing to do with object oriented programming. A variable in Ada is an object that has been declared as a given type and with an optional initial value. A constant is the same, except the declaration now contains the reserved word constant and the initial value is no longer optional, but required.

Both variables and constants are declared in the declarative part of a block.

Variables and constants are declared like so:

X, Y: T := Some_Value; -- Initialization optional C: T := Some_Value;

The initialization value for X and Y is evaluated separately for each one – thus, if this is a function call, they may have different values.

It is good practice to declare local objects which do not change as constant.

Some general advice on how to name variables and constants is given here.

Constants
Constants are an important tool to help make your programs more reliable and maintainable. A constant is, just like a variable, a reference to a specific  of data, but where they differ from variables is in their constant nature. Variables vary, constants are constant. When declared and initialized, the data they reference is static and can no longer be altered. If you try to alter a constant, the compiler will complain, loudly.

Let's see how we declare and initialize a constant:

Or

The only differences from a variable are the reserved  keyword and the fact that a constant must be initialized when declared. Other than that, declaring and initializing constants is done exactly the same way as variables and it works for all :

If you try to alter a constant in your program, the compiler will complain with a message looking something like this:

constants.adb:15:04: left hand side of assignment must be a variable gnatmake: "/path/to/constants.adb" compilation error

You should use constants whenever data is supposed to be static. Do not underestimate the human capacity for making mistakes by declaring for example Pi like this:

Is Pi supposed to change during program execution? Probably not. So why allow for that? Why risk it happening by mistake? Instead do this:

There. Now you can feel safe in knowing that Pi will be Pi, no matter what.

By the way, for Pi specifically (and most notable constants), you needn't declare it yourself: It's already done for you in the package.

Named numbers
The attentive reader will have noticed that the  constant used above is declared without a. Such constants are called named numbers and their   is called an universal type. There are four kinds of :

 * universal_integer
 * universal_real
 * universal_fixed
 * universal_access

You cannot explicitly declare an object to be of type. But what you can do is declare an object to be a constant. These may take values of any size or precision, as opposed to the types derived from these, for example  and. The universal types are not bound by the same constraints as the types derived from them:

The  constant is of type , because the literal   is an integer. Had we instead written:

then  is of the type   because the literal   contains a point.

Advanced Topic: Are Constants Constant?
Silly question: What actually does "constant" mean?

Swap (X, Y: T)    Temp:  T := X;   X := Y;   Y := Temp; Swap;

In the Swap example, the temporary copy of X certainly is constant – we do not touch it. However (a triviality you’ll say), it is not constant during construction nor during destruction at the end of Swap.

Hold it!

In the following, you will learn some astonishing facts about “constants” (objects with the keyword constant).

First Doubts
Let us sow first doubts about the constancy.

Controlled types (RM 7.6) grant the programmer access to the process of construction, copy and destruction via the three operations Initialize, Adjust and Finalize.

Given a controlled type T.

X: T := F;

After construction of X and its initialization with a copy of F, the operation Adjust is called with parameter mode in out for the constant object X. (Initialize is not called here because an initial value is given.)

In Ada.*_IO (RM A.6-A.10), the file parameter of Create and Close has mode in out, of Read and Write (resp. Put and Get) it has in. But each of these operations does change the state of the file parameter.

This reflects a design where the (internal) File object's "state" represents the open-ness of the File object, rather than the content of the (external) file. Agreed that this choice is debatable, but it is consistent across the I/O packages.

The presumed implementation model implies a level of indirection, where the File parameter represents a reference, which is essentially "null" when the file is closed, and non-null when the file is open. Everything else is buried in some mysterious netherland whose state is not reflected in the mode of the File parameter.

This is a symptom of any language that has pointer parameters whose mode has no effect on the ability to update the pointed-to object.

So:

An object is not constant, at least during construction and destruction.

But as you have seen with Ada.*_IO, a constant object can indeed change its state also during its lifetime. (An in parameter is like a constant within a subprogram.)

“The constant keyword means that the value never changes” – this is a False statement for Ada (the details are painful); it's true for elementary types and some others, but not for most composite types.

You can find some interesting statements about this in Ada RM: RM 3.3(13/3, 25.1/3), 13.9.1(13/3). The corresponding terms are immutably limited and inherently mutable.

Example Pointers
Pointer: Rec I: Integer; ;  Ob:  Rec := (I =>  Integer'(42)); -- Ob.I is constant, but not Ob.I.all! Ob.I.all := 53; Pointer;

Here you will certainly agree with me that this is clear as daylight.

But what about the case of an internal pointer accessing the whole object itself?

Reflexive: Rec    -- immutably limited -- Rosen technique (only possible on immutably limited types); -- Ref is a variable view (Rec is aliased since it is limited). Ref: Rec := Rec'Unchecked_Access; I : Integer; ;  Ob:  Rec := (I => 42, Ref => <>); Ob.I := 53; -- illegal Ob.Ref.I := 53; -- erroneous until Ada 2005, legal for Ada 2012 Reflexive;

The object must be limited since copying would ruin the reference.

Ada 2012 AARM 13.9.1(14.e/3): The Rosen trick (named after Jean Pierre Rosen) is no longer erroneous when the actual object is constant, but good practice.

This applies to objects where there is necessarily a variable view at some point in the lifetime of the object which you can "squirrel away" for later use. This certainly does not happen "by mistake", the programmer does it on purpose.

Controlled Rec  Ada.Finalization.Controlled Ref: Rec;  -- variable view I : Integer; ;    Initialize (T:  Rec); Adjust    (T:  Rec); -- "in out" means they see a variable view of the object -- (even if it's a constant) Controlled;

You can use it like so:

Create Controlled.Rec  …  Create; Ob: Controlled.Rec := Create; -- here, Adjust works on a constant on an assignment operation Ob.Ref.I := 53; -- Ob.I := 53;  illegal ;

A copy of the return object Create is assigned to Ob, the object Create is finalized. Now the component Ref points to a no longer existing object. (Note the difference between assignment statement and assignment operation.) Adjust has to correct the wrong target.

Create might look like this:

Create Controlled.Rec X: Controlled.Rec; -- Initialize called X; Create;

The variable X is declared without an initial value, so Initialize is called. Create returns this self referencing object.

This is the package body:

Controlled Initialize (T: Rec) T := (Ada.Finalization.Controlled           Ref => T'Unchecked_Access,           I   => 42); Initialize; Adjust (T: Rec) T.Ref := T'Unchecked_Access; Adjust; Controlled;

Initiallize is only called if no initial value is given in the object declaration. T is regarded as aliased so that the component Ref is a variable view of the object itself.

Example Task and Protected Object
Tasks are active objects, i.e. each task has its own thread of control: All tasks run concurrently. A task communicates with other tasks via rendezvous by calling one of its entries (roughly corresponding to a subprogram call).

Since Ada is a block-oriented language, tasks may be defined as components of arrays and records, and these may be constants.

TT    Set (I: Integer); TT; TT      -- local objects are not I: Integer := 42; -- considered part of constant Set (I: Integer) TT.I := I;   Set; TT; Rec T: TT; -- active object that changes state (even if "constant") record; Ob: Rec := (T => <>);

Ob.T.Set (53); -- execution of an entry of a constant task

Protected objects are very similar to tasks.

Prot Set (I: Integer); I: Integer := 42; -- * Prot; Prot Set (I: Integer) Prot.I := I; -- Prot.I is * Set; Prot; Rec Ref: Rec := Rec'Unchecked_Access;  -- reflexive P : Prot; ; Ob: Rec := ( => <>);

Ob.P.Set (53);     -- illegal Ob.Ref.P.Set (53); -- variable view required

Constants Are Like This
If an object is declared “constant”, the meaning is just twofold: In no case at all does it mean that the logical state of the object is immutable. In fact, such a type should be private, which means the client has no influence at all on what happens in the object’s inside. The provider is responsible for the correct behavior. Immutably limited and controlled objects are inherently mutable.
 * The object cannot be used in an assignment (if it is not yet limited).
 * The object can only be used as an in parameter.

= See also =

Wikibook

 * Ada Programming/Keywords/constant

Ada Reference Manual

|Constants Programación en Ada/Objetos

title: Ada Programming/Constants


text:
Talk:Assyrian Neo-Aramaic

If I get any info wrong, please correct me if you can (like any errors with the languages, any spelling mistakes) it would help alot :)

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: Talk:Assyrian Neo-Aramaic


text:
Saluto, Jonathan!/Chapitre 2

Chapitres – Chapitre 1 – Chapitre 2 – Chapitre 3

Duesmi maye (= 2 maye)
Nun li viro es in li trene. Lo non es in München; lo es in trene. Lo voyaja. Lo pensa: "Nun me voyaja fro München a Wien. Es boni voyaje. Me ama voyajes."

Lo pensa pri München. Lo pensa: "Nun me es in li trene, ma yer me esed in München. E nun me skripte jurnale in li trene, ma yer me skripted jurnale in München. E nun me pensa in li trene, ma yer me pensad in München. Yer me pensad pri München in München, e nun me pensa pri Wien in li trene. Nun me es in li trene, non in Wien. Ma me pensa e skripte pri Wien."

Ob li viro nun pensa in München? No, lo nun non pensa in München. Lo pensa in li trene. Yer lo pensad in München. Lo dikte: "Saluto, trene!"

Li viro es in li trene, e lo voyaja a urbe. Li urbe non es München; München es li urbe de yer. Li urbe es Wien; Wien es li urbe de disdi.

Li viro pensa pri München e Wien. Lo pensa: "München esed li urbe de yer, e München esed boni. Nun lum es disdi, e me es in trene; li trene es boni. Ob Wien sal es boni?"

Li viro pensa pri München: München esed li urbe de yer. Lo pensa in li trene: lo es in li trene disdi. E lo pensa pri Wien: Wien sal es li urbe de morge.

E lo pensa: "München esed grandi. Li trene es grandi. Ob Wien sal es grandi?"

E lo pensa: "In München me skripted in jurnale. In li trene me skripte in jurnale. Ob in Wien me sal skripte in jurnale? Yes, morge in Wien me sal skripte in jurnale. Me ama jurnales." Li viro pensa multim (lo pensa multim = lo pensa e pensa e pensa), e lo skripte multim. Yes, lo es inteligenti viro. Inteligenti viros skripte multim, e pensa multim. Lo es Jonathan; Jonathan es inteligenti viro.

Lo skripte: "Me es Jonathan. Me es in trene. Yer me stead in München; morge me sal stea in Wien."

Lo pensa, e skripte: "Li trene…lum es boni, ma oldi. Lum non es novi; lum es oldi. Ob in München li trenes es oldi? Yes, li trenes de München es oldi. Ma li trenes de München es boni, e me ama li trenes de München. Yer me amad li trene in München, e disdi me ama li tren nun, e morge me sal ama li trene in Wien. Me ama trenes!"

Jonathan skripte: "München es boni urbe e oldi urbe, e Wien es boni urbe e oldi urbe. München e Wien non es novi, ma es boni. München e Wien es oldi, ma boni urbes. Li urbes non es novi, ma boni. Me ama urbes!"

Jonathan pensa, ke li duesmi die de voyaje es boni. Lo dikte: "Disdi esed boni duesmi die de voyaje. Me ama voyajes!"

yer, disdi, morge

 * yer = 1 maye
 * disdi = 2 maye
 * morge = 3 maye

-d

 * skripte: disdi me skripte, yer me skripted
 * pensa: disdi me pensa, yer me pensad
 * vida: disdi me vida, yer me vidad

sal

 * skripte: disdi me skripte, morge me sal skripte
 * pensa: disdi me pensa, morge me sal pensa
 * vida: disdi me vida, morge me sal vida

es

 * es, esed, sal es

fro, a

 * Fro München a Wien:
 * München → Wien
 * Fro Wien a München:
 * München ← Wien

Vordaro

 * a
 * ama ❤
 * -d
 * disdi (yer → disdi → morge)
 * fro
 * ma
 * morge (yer → disdi → morge)
 * multim
 * novi
 * oldi 👴
 * -s 🍎🍎🍎
 * sal
 * voyaja
 * voyaje
 * yer (yer → disdi → morge)

Dikte:

 * ésed (-d)
 * múltim (-m)
 * trénes (-s)
 * s = ss
 * disdi: díssdi
 * esed: éssed

title: Saluto, Jonathan!/Chapitre 2


text:
Saluto, Jonathan!/Chapitre 3

Chapitres – Chapitre 2 – Chapitre 3 – Chapitre 4

Duesmi maye (= 2 maye)
Jonathan stea in Wien: li urbe Wien. Jonathan pensa ke Wien es boni, e ke Wien es beli. Jonathan non pensa ke Wien es ledi; lo pensa ke Wien es beli. Lo dikte: "Wien es beli urbe! Me sal skripte pri lum!" E lo skripte in li jurnale pri Wien. In li jurnale lo skripte: "Men triesmi die es tre boni! In li duesmi die me stead in München. Ma nun me stea in Wien: Wien non es München. München e Wien es du urbes; München non es Wien e Wien non es München. Me stea in Wien e li urbe es tre beli. Me ama Wien; li urbe non es ledi. Quam beli Wien es! Ma me have probleme."

Quum? Jonathan have probleme? Qui probleme? Nun lo non vida li jurnale; lo vida li urbe e pensa. Lo pensa multim pri li probleme.

Li probleme de Jonathan es ke lo ama Wien, ma lo non have tempe.

Lo pensa: "Hm. Nun es klok set (7). Klok dek (10) li trene departa. Klok dek (10) minus klok set (7) es tri (3) hores. Tri hores non es multi tempe por beli urbe! Me non have tempe. Tu have tempe es boni, ma me non have lum! Skripte jurnale es boni, ma me non have tempe por skripte lum! Quum fa in Wien?"

Lo pensa: "Me non have multi tempe. Quum fa — skripte jurnale, o manja, o vida li urbe? Quum me sal fa?"

Lo pensa plu, e dikte: "Me have boni idee! Un momente…me pensa. Men trene departa klok dek (10). Ob es trene plu tardi, klok dekun (11), o klok dekdu (12), dektri (13), dekquar (14) o deksink (15)?"

Lo vida…yes! Es trene qui departa klok deksink. Nun Jonathan es felisi.

Jonathan dikte: "Deksink (15) minus set (7) es ot (8). Nun me have ot hores de tempe! Quum me sal fa?"

Lo dikte: "Me sava! Me sal manja bifsteke. E me sal drinka bire. Un momente…no, me sal drinka du bires, o tri bires. Boni idee!"

Nun Jonathan drinka bire in Wien, e manja bifsteke. Lo es felisi. Lo dikte: "Quam me es felisi! Me ama li urbe de Wien. Quam me ama voyajes!"

de

 * Jonathan pensa: men trene sal departa. = Li trene de Jonathan sal departa.
 * Jonathan skripte in jurnale. Lo skripte lum; lum es li jurnale de Jonathan.

plu tardi

 * Es klok 10. Plu tardi, sal es klok 11.
 * Jonathan esed in München. Plu tardi, lo esed in Wien.
 * Jonathan pensad: "Me sal manja." Plu tardi, lo manjad.

1) qui?

 * Jonathan ama trene. Qui trene Jonathan ama? Jonathan ama li oldi trene.
 * Jonathan vida urbe. Qui urbe Jonathan vida? Jonathan vida li urbe de Wien.

2) qui

 * Jonathan es in oldi trene. Jonathan ama li trene. Li trene qui Jonathan ama es oldi.
 * Jonathan vida Wien. Wien es urbe. Li urbe qui Jonathan vida es Wien.

quam

 * Li trene es tre, tre oldi. Jonathan dikte: "Quam li trene es oldi!"
 * Li bifsteke es tre, tre boni. Jonathan dikte: "Quam li bifsteke es boni!"
 * Jonathan have grandi, tre grandi probleme. Jonathan dikte: "Quam men probleme es grandi!"

klok, hore
klok

 * Es klok six: 6.00
 * Es klok du e dek: 2.10

hore = 60 minutes. Un hore = 60 minutes, du hores = 120 minutes. 6.00 es klok six e 2.00 es klok du. 6.00 minus 2.00 es quar hores.

quam
quam = !

 * Li trene es beli. Quam beli li trene es!
 * Jonathan es inteligenti. Quam inteligenti lo es!

Departa

 * Li tren departad de München. Plu tardi, li trene esed in Wien.
 * Tri hores plu tardi, Jonathan sal departa.

Un, du, tri…

 * un
 * du
 * 1) tri
 * 2) quar
 * 3) sink
 * 4) six
 * 5) set
 * ot
 * 1) nin
 * 2) dek
 * 3) dekun
 * 4) dekdu…

Vordaro

 * beli 🦋🌹 ↔ ledi
 * bifsteke 🥩
 * bire 🍺
 * de
 * departa 🚶💼
 * drinka 👄🥤
 * fa
 * felisi 😀
 * have
 * hore 🕐🕑
 * idee 😀💡
 * klok 🕑
 * ledi ↔ beli 🦋🌹
 * manja 👄🍎
 * minus ➖
 * momente 🕑
 * multi 🍎🍎🍎
 * -n
 * probleme
 * quam
 * qui
 * sava
 * tempe 🕑
 * tre

Dikte:

 * have = h ave
 * (have ≠ ave)
 * nk = ŋk
 * sink: siŋk

title: Saluto, Jonathan!/Chapitre 3


text:
FFMPEG An Intermediate Guide/Concatenation

With this script, multiple videos can be put together into one file. The process uses the  parameter, meaning the video file is built from the existing video streams, and no processor-intensive re-encoding is necessary.

ffmpeg_concat {

timestamp=$(date "+%Y%m%d%H%M%S") # Unlike in JavaScript, no spaces may surround the "=" equals sign to set a variable.

for path in $@; do echo "file '$path' " >>ffmpeg_concat.$timestamp.txt # ffmpeg only supports apostrophes, no quotation marks. done
 * 1) generate file list

printf "Output file extension: " read output_extension
 * 1) ask user for output file extension to specify which container format should be used by FFmpeg

ffmpeg -f concat -safe 0 -i ffmpeg_concat.$timestamp.txt -c copy ffmpeg_concat.$timestamp.$output_extension
 * 1) put it together
 * 1) -safe 0  allows concatinating files outside the current working directory
 * 2) -c copy  passes through the existing video and audio streams without re-encoding it and only multiplexes it, making the process take only a fraction of the time since disk reading/writing speeds are the only limitation.

}


text:
User talk:Erkinova Naziya

Learning language through Literature
Hello, friends! I started reading books in English. The first book I read was "Charlotte's Web" by E.B.White. If you have read it, I would like to know your opinion.

Erkinova Naziya (discuss • contribs) 09:06, 30 October 2022 (UTC)

title: User talk:Erkinova Naziya


text:
User:Erkinova Naziya

Learning language through Literature

title: User:Erkinova Naziya


text:
User talk:Erkinova Naziyaa

Hello, friends! I started reading books in English. The first book I read was "Charlotte's Web" by E.B.White. If you have read it, I would like to know your opinion.

title: User talk:Erkinova Naziyaa


text:
AI Art Generation Handbook/Archive/Artist Style

In this chapter, we will be seeing how the styles look different according to the styles of the painter

Note 1: We  will not  be taking examples from still living artist / recently dead (as recent as 2001) as this is touché subject for debate.

Note 2: If you have a list of notable artists from your countries, you can add them in the  Discussion  page of this book ~.


text: User talk:27.147.243.50

title: User talk:27.147.243.50


text:
Cookbook:Bourbon

Bourbon, or bourbon whiskey, is a variety of American whiskey made primarily from corn.

Production
Like other whiskeys, bourbon starts by grinding a mixture of grains and mixing with water. The grain content must be at least 51% corn, and the remainder is typically made up of any combination of rye, wheat, and/or barley. This mixture is then fermented with yeast to generate alcohol, and this product is then distilled to no more than 160 proof, or 80% alcohol by volume. The distillate is diluted to no higher than 125 proof (62.5% alcohol) before transfer to fresh charred oak barrels for aging. This aging process imparts color and flavor to the liquor. After aging, the finished product may be diluted to no less than 80 proof (40% alcohol) before bottling.

Characteristics
Bourbon is amber in color with a flavor profile incorporating tannins, caramelized sugars, and hints of vanilla. Bourbons that include wheat tend to have a sweeter flavor than those using rye. No flavorings or colorings may be added. It can range from 80–125 proof (40-62.5% alcohol content), and it must be aged in freshly-charred oak barrels. Although a common myth states that bourbon must be made in Kentucky, United States law states only that it must be made in the United States.

Straight bourbon is a specific type of bourbon that is aged for at least 2 years.

Uses
Bourbon can be drunk straight or used in a variety of cocktails such as the mint julep, old fashioned, whiskey sour, and more. It can also be used to contribute flavor when cooking and baking.

title: Cookbook:Bourbon


text:
Cookbook:Cognac

Cognac is a variety of brandy made from distilled white wine in the Cognac region of France.

Production
Grapes from Ugni Blanc, Folle Blanche, and Colombard grapes are pressed, and the juices are fermented with natural yeasts to make a dry white wine with about 8–10% alcohol content. No additional sugar may be added to the fermentation mixture. The wine is first distilled in copper pot stills to make what is called brouillis. The brouillis is then distilled a second time to make eau de vie with an alcohol content of about 68–72%. The eau de vie is transferred to French oak barrels, where it is left to age for at least 2–3 years or until the desired flavor profile is achieved. Each manufacturer will then create a custom blend of a variety of different eaux de vie to achieve their specific final cognac. Dilution may occur to achieve bottling proof. Unlike when making bourbon, for example, barrels can be reused as long as they have only been used to age a wine-based product.

Characteristics
Cognac has a rich flavor profile that depends on a variety of factors. These include the type and blend of grapes used, the char of the barrels, the humidity of the cellar, the climate and soil where the grapes were grown, and the specific blend used to make the final cognac. For example, the longer the aging, the more mellow the spirit. Most varieties of cognac are bottled at about 40% alcohol by volume, though higher concentrations do exist.

Types
Cognacs are labeled by age according to youngest eau de vie used in the blend. The following terms are used:

 * V.S. or Three Stars: minimum age of 2–4 years
 * V.S.O.P. or Reserve: minimum age of 4–6 years
 * Napoléon: minimum age of 6–10 years
 * X.O. or Extra Old: minimum age of 10 years
 * Hors d'age: minimum age of 30 years

Use
Cognac can be drunk straight or incorporated into a variety of cocktails. Notable cocktails using cognac include the Sidecar, Between the Sheets, French 75, Sazerac, and Vieux Carré. Older cognacs are typically served neat. Cognac may also be used in cooking and baking to add flavor.

title: Cookbook:Cognac


text: User talk:178.152.12.228

title: User talk:178.152.12.228


text:
Emerging Technologies in Transportation Casebook/Automated Ports

Introduction
A simple metal box measuring 20 feet long, 8 feet wide, and 8.5 feet tall is the heart of the global economy. The dimensions give rise to the term Twenty Foot Equivalent Units (TEUs), the basic unit of international trade flow statistics. A consolidated capacity of 25 million TEUs spread across 5,500 ships carries 80 percent of global trade goods. First introduced in the 1950s, containerization exploded in the 1990s, fundamentally altering the global economy. The barrier between exporter and importer shrank as shipping costs evaporated. Terminals grew rapidly at new facilities built at then-smaller ports, like Savannah, or formerly commodity driven ports, like Los Angeles. The endless desire for increased throughput in ever more congested ports put automation forward as an avenue to improved efficiency, longer working times, and reduced costs.

Automation in container terminals is not a new area of technological innovation. Here it is almost fully mature, widely deployed, and reaching the point of diminished areas of improvement. The ECT Delta Terminal at Rotterdam was heralded as the first fully automated container port in the world upon opening in 1993. There are almost 60 semi- or fully automated container terminals in the world with seven of them in the United States (US).

Automation technologies available for other types of port operations tend to fall into two categories: shipboard systems to stabilize a tanker during the loading process or automated loading and unloading of bulk commodities, for example, automated discharge systems for coal or iron ore. Automation in container handling is a growing deployment of a variety of new types of equipment in a largely labor-intensive process.

While these technologies are automatic, they fall into a different range than other emerging technologies. They do not operate among the general public - restricted to areas occupied only by authorized vehicles and professional, skilled operators. The US Maritime Administration has largely kept out of the regulatory arena and left matters up to cities and states that operate the ports.

Public Policy Issues
Labor relations are the primary policy focus in the US. Automation represents a serious reduction in the total workforce of a given container facility. These jobs are highly paid, backed by powerful unions with broad representation at multiple facilities up and down the East and West coasts.

Container Handling Process
Container handling is split into three phases: quayside, yard, and landside.

The following diagram is a generic outline of terminal layout.

Port Automation
Automation has been applied to most phases and types of operations in container ports.

Automated Guided Vehicles (AGVs) & Automated Lifting Vehicles (ALVs)
AGVs/ALVs resemble large diesel or battery powered wheeled platforms, designed to carry 2 20-foot containers or 1 40 or 45 foot container. An ALV combines a horizontal vehicle with lifting capabilities to stow containers in storage racks. Navigation systems for these automated vehicles vary and include embedded guide wires in the pavement, transponder-based reference grids, and satellite guidance.

Port of Long Beach (POLB) is the only American user, with 102 Konecranes Gottwald AGVs. These use a transponder-based navigation, with a supplemental GPS-based geofenced safety system.

Automated Straddle Carriers (Auto-SCs) & Automated Shuttle Carriers (AShC)
Auto-SCs and AShCs are rubber-tired gantry cranes. Like the ALVs, they are horizontal vehicles capable of lifting a container. Auto-SCs are limited to stacking containers two high, while AShCs can stack four high. Regardless of reach height, most of their work is moving singular containers around the port.

The POLB Container Terminal and the Port of Los Angeles (POLA)’s TraPac and APMT terminals use the Kalmar Autostrad. Navigation can be either magnetic or radar-based. The magnetic system registers positional data derived from magnets embedded in the pavement alongside an inertial measurement unit. Laser rangefinders assist with obstacle detection and avoidance.

Automated Stacking Cranes (ASC)
ASCs come in two variants: Automated Rubber Tired Gantries (ARTGs) and Automated Rail Mounted Gantries (ARMGs). An ASC may span as many as 12 rows stacked 5 containers high. ARTGs cannot turn and only move forward and backwards, much like rail-restricted ARMGs. These cranes receive containers from the horizontal vehicles to add to the storage blocks, sort containers in the blocks, and pull containers from storage blocks to transfer to horizontal vehicles.

All seven American automated terminals use ARMGs. For example, New York/New Jersey’s GCT Bayonne operates 20 Konecranes ARMGs to handle their truck terminal and the Port of Virginia has 116 ARMGs working at the Norfolk International and Virginia International Terminals.

Automated Gate Operations
Gate operations can be equipped with systems to automatically direct arriving trucks to the proper location for pick-up or drop-off. Optical character recognition or RFID systems identify an inbound truck or container. Drivers are directed to the appropriate spot without having to leave the truck or interact with any terminal personnel. Only mis-scanned trucks are directed by personnel for manual sorting. Positioning inside the loading bay is measured by lasers, indicating the exact position and orientation of the truck, allowing for accurate placement on or removal from road chassis by the ASC. This technology is ubiquitous, even at fully manual terminals.

Ship to Shore/Quayside Cranes
Ship to shore cranes are not automated. The operator sits in a glass enclosed control station attached to the lifting beam trolley, moves back and forth with the trolley and looks down at the lifting beam and container during the lift process. It is a highly skilled job paying far higher than average. For example, the average crane operator at Savannah’s Garden City Terminal is paid more than $100,000 a year in a city where the average wages are around $42,000.

With remote operations, the operator is moved inside the port’s offices. An operator at a desk can readily handle two cranes when operating remotely. While this does not impact efficiency, it does save labor costs. The current state of technology is not yet sophisticated enough to approach or plan for automating these cranes.

Rail Gantries
Rail gantries are used to load and unload railcars and are on parallel tracks running the full length of the railroad terminal. They are very wide, spanning numerous truck lanes, railroad tracks, and parking spots. Ports frequently deploy them in teams, with one crane unloading and another loading the same train. The gantries, due to their size and relatively small numbers, are custom built to the terminal’s layout.

Terminals have been reluctant to explore automating these cranes. The process requires hands-on intervention to lock and unlock the securing mechanisms between containers and railcars. Putting a human worker between a container and an automated crane is seen as a safety issue that is not present in other container handling procedures. Using a human crane operator, including remote operation, is viewed as a safer alternative.

Areas of Growth
The bulk of automated terminals are outside of the US. As the following table shows, a number of large, busy marine terminals present opportunities for automation deployments in the US.

Considering the top ten busiest container ports in the US, there are ample opportunities for automation growth. The Garden City Terminal in Savannah, for instance, is the busiest single terminal in the US and is entirely manual. Houston, Oakland, and Charleston are roughly as busy as Virginia and none are automated.

Smaller facilities may also be interested in automating operations. Portland (Maine) only sees approximately 7,000 container lifts a year at a compact facility called on infrequently by a single container line. This could replace highly paid, but lightly used, operators, with self-driving equipment. It could sidestep potential issues in attracting adequately skilled operators who may be more difficult to find and retain at small terminals.

Role in the Supply Chain
The global economy is entirely dependent on an elaborate supply chain and this dependence is rapidly growing. It is critical that the supply chain is efficient and has built-in slack capacity to accommodate future growth. The still on-going disruptions from the COVID-19 pandemic demonstrate that port congestion at just a handful of terminals has an outsized impact on trade and ultimately the economy.

Business Justification
Automation can reduce operating expenses by 25 to 55 percent, according to analytical models. Productivity can rise an additional 10 to 35 percent. Upfront costs for port automation are high, with a specific case being the 86 ARMGs Virginia purchased for $670 million in 2017. For some ports, these could be multi-billion dollar investments. A study by McKinsey & Company determined expected and actual productivity and operating costs for ports. Their data emphasized that not all ports are going to benefit from automation. The returns for some ports will simply not meet the initial costs of the automation.

Efficiency
The most efficient ports in the world are automated and, importantly, export more than they import. This creates a consistent flow of domestic production inbound to the port for export internationally. These ports, primarily in Asia, see more consistent schedules. For import destinations, such as the US, there are inconsistencies and challenges that make automation more difficult and slow down efficiency. These include the already semi-automatic terminals at POLA/POLB. These ports deal with large numbers of “exception cases,” which require personnel and decision-makers as the logistics are much more complex. Automation works most efficiently when a port is a collector and consolidator and less efficiently when a port is a manager and distributor.

Technological Constraints
The largest technical constraint for automation is the lack of progress in automating the quayside cranes. There are physical and procedural challenges that currently prevent automating these cranes.

In the physical, the ship simply moves too much during the two minute long cycle between lifting containers. Operating a crane is as much an art as it is science. Human operators outperform machines when it comes to the required analysis, deduction, and prediction of how to drop or raise the lifting beam and move the trolley forward and backwards relative to the target container sitting in a container cell onboard the ship.

Procedure-wise, there is reluctance on the part of the ports to put humans close to automated systems when it can be avoided. Part of the lift process requires a person called a lasher, onboard the ship, to be on hand to assist in directing the lifting beam and locking and unlocking containers from the lifting beam. This is viewed as a dangerous process. Some lashers even view remotely controlled quayside cranes, which still have a human in control, as more dangerous than ones with the operator directly overhead. Twistlocks, the device that latch containers to each other or to the lifting beam, do come in an automatic version. They turn under mechanical pressure, instead of a human moving a control lever. Replacing all of them on all of the containers in the world would be required before the role of the lasher could be eliminated.

Data Quality
Data quality influences the upfront costs of implementing automation through a lack of data standards. Every port is different, and while there might be some standardization, there is limited consistency. For example, the operational data for Abu Dhabi is structured differently than POLB. Every port has to be dealt with individually, based on their own data standards. These inconsistencies prevent the formation of a data pool that can optimize operations and respond to problems.

Lack of standards prevent good organization of data, limit inter-port communication, and lead to misinterpreted data. This puts a drag on efficiency and even poses a challenge for both manual and automated ports. There are opportunities for data infrastructure to reduce data silos and implement a set of standards to improve the efficiency of port operations.

Labor Relations
As recently as September 2022, contract negotiations between West Coast shipping companies and labor unions were being held up by the issue of automation. Over 70 shipping companies, who are represented by the Pacific Maritime Association, are in favor of automation to stay competitive and keep up with demand. The 22,000 dockworkers represented by the International Longshore and Warehouse Union (ILWU) are protective of their high-paying jobs. This issue has been an ongoing dispute dating back decades to the initial wave of job reductions that came out of containerization in the 1960s.

Heavily automated ports, like the gold standard in Rotterdam, still employ large numbers of people. Those jobs tend to pay less than the specialist crane operators and drivers in manual ports. Jobs in automated facilities are primarily technicians maintaining and managing the automated vehicles. Even with an automated port, there is still need for workers and with that a chance for job transition. These jobs often move people from a more dangerous task to a desk job. Even so, there are workers that resist this shift.

Currently, POLA/POLB is among the least efficient ports in the world. The Pacific Maritime Association claims automation is necessary to get POLA/POLB running round the clock at maximum capacity and thus keep up with the Asian export ports. While West Coast ports continue to expand and lean into automation, the belief is that more jobs will come with the same benefits for ILWU workers. However, if there are fewer jobs or the jobs move elsewhere, this could be a huge concern for local policymakers. Robots cannot contribute to the local economy as a worker does.

Environmental Impacts
Many of the horizontal vehicles employed at non-automated terminals are diesel or diesel-electric powered. In particular, the bulk of the fleet are hundreds of diesel-powered yard trucks, shuttling containers around on over-the-road chassis. One company does offer an electric version, but no container port has put it in service yet.

Should a port wish to replace its diesel-powered horizontal vehicles with electric vehicles, the best options for electric are also automated. The overwhelming majority of electric horizontal vehicles on the market are automated. One example is the internationally common Konecranes Gottwald AGV. They are battery-powered, with packs carrying enough of a charge for 12 hours of duty and are hot-swappable. The battery swap is a five-minute automated process, where the AGV proceeds to a battery swap station, and a robotic system pulls the dead batteries and inserts charged batteries.

If a port is considering large-scale replacement of equipment to achieve zero emission outcomes for their horizontal fleet, the cost opportunity is present to shift to automated vehicles.

Artificial Intelligence
Advanced Artificial Intelligence (AI) could supplant human decision-making, reduce human errors, and optimize operations. AI will need data built on a decision-making support system based on a predictive model of behavior. Ports at Hamburg, Rotterdam, and Singapore have begun using AI to improve their business process operations. The next step will be developing AI capable of managing the automated vehicles themselves to replace decision making roles of human operators.

Predictive AI may also be the key to automating quayside gantry cranes. Intelligent systems, combined with sensors monitoring ship motion, could be able to make the same types of decisions and reactions that human operators must make to safely engage containers with the target ship.

Dynamic Scheduling
Real-time berth planning, predictive maintenance for key assets, automated yard planning, and demand planning all benefit from dynamic scheduling. A dynamic optimization algorithm works in conjunction with these inputs to optimize scheduling and generate path schemes for automated guided vehicles. The output of these algorithms will reduce conflicts between vehicles on paths and arrivals at crane points, therefore reducing costs and slow downs.

Analysis and Conclusions
The difference between expected improvements and real improvements is seemingly counterintuitive. In most fields, replacing humans with machines allows increased productivity as processes occur at faster rates, with consistent process times, less lag between processes, and longer overall working periods. However, the actual driver of process time in container handling is the decision-making process and handling exception cases. This is a task better suited for humans, as machines currently lack the ability to reason and predict in such a way that human operators can. It also explains the difference between export and import facilities. Imports are far less regular processes and require far more exception cases that require impromptu decisions about routing and processing a container. If this cannot be automated, then there is no efficiency benefit. Barring massive improvements in AI, the exception case handling and the predictive role of humans in handling quayside cranes are firmly on the side of manual processes.

This appears to indicate that the “semi-automatic” facility is the port of the future. Human driven quayside cranes will feed the automatic horizontal vehicles, while the exceptions will need human intervention into the routing of automated vehicles. Environmental regulation may prove a larger influence. As older vehicles and diesel vehicles are phased out for electric, the available replacements are increasingly going to be automated vehicles. Automation may take over through attrition alone.

Automation is not exactly an emerging technology. It is already deployed at dozens of container terminals worldwide. In the US, deployment has lagged as legacy manual processes are defended by robust unions that are understandably protective of their jobs. The combination of labor protection and the efficiency challenges for importers will remain major impediments to further American implementation. As for the time being, the primary avenue that will drive automation may, in fact, be emissions controls, as automation and electrification are linked through vehicle availability.

Discussion Questions

 * Is increasing the deployments of automated technologies at marginal changes in efficiency, but at large labor reductions, a rational decision? What about emissions reductions?
 * Does it seem reasonable that AI improvements could complete the automation process?
 * Is the reasoning behind “exporters benefit from automation and importers benefit from manual” sound?

Additional Reading

 * Chu, Fox, et al. “The Future of Port Automation.” McKinsey & Company, McKinsey & Company, 4 Dec. 2018, https://www.mckinsey.com/industries/travel-logistics-and-infrastructure/our-insights/the-future-of-automated-ports.
 * Gardner, Nic. “A Brief Guide to Container Terminal Automation.” Thetius, 28 Oct. 2020, https://thetius.com/a-brief-guide-to-container-terminal-automation/.
 * Levinson, Marc. The Box. Princeton University Press, 2016.
 * Martín-Soberón, Ana María, et al. “Automation in Port Container Terminals.” Procedia - Social and Behavioral Sciences, Elsevier BV, Dec. 2014, pp. 195–204. Crossref, doi:10.1016/j.sbspro.2014.12.131.
 * Musser, Lori. “Not Your Father’s Cranes and Equipment – AAPA Seaports.” AAPA Seaports, 5 Nov. 2019, https://www.aapaseaports.com/index.php/2019/11/05/not-your-fathers-cranes-and-equipment/.
 * Morley, Hugh. “Longshoremen Labor Contract: Tentative ILA-USMX Master Contract Has Terminal Automation Ban.” Container Shipping and Trade News and Analysis, 4 Aug. 2018, https://www.joc.com/port-news/longshoreman-labor/international-longshoremen%E2%80%99s-association/tentative-ila-usmx-master-contract-has-terminal-automation-ban_20180814.html.
 * Swash, Rafiq. “Port Automation: The Route to the Future.” Port Technology International, 25 Mar. 2021, https://www.porttechnology.org/technical-papers/port-automation-the-route-to-the-future/
 * Wong, Sylvia, and Evan Crawford. “Case Study: Optimizing Trapac.” Port Technology International, 26 Apr. 2019, https://www.porttechnology.org/technical-papers/case_study_optimizing_trapac/.


text:
Cookbook:Crab Apple

Crab apples, sometimes called wild apples, are a large group of fruits closely related to regular apples.

Characteristics
As a general rule, crabapples look like small apples, though the size varies. They come in a variety of colors, ranging from yellow to green and red. The fruits tend to grow in clusters, and small varieties may be confused with cherries. They have a very tart flavor due to high levels of malic acid, and some are too tart to use even when cooked.

Types
There are many species of crabapples with a variety of characteristics. Technically they are all edible, though some varieties are more palatable than others. Crabapples known to be suitable for eating include, but are not limited to:

 * Dolgo
 * Whitney flowering crab
 * Centennial crabapple
 * Chestnut crabapple

Selection and storage
They should be firm and solid, without wrinkled skin, though some scabbing is normal for some varieties. Avoid those with soft spots. Ripe crabapples will have brown seeds, not green or white. Store crabapples in the coldest part of the refrigerator—they won't freeze until 28°F (-2°C).

Use
Because they are extremely tart when raw, crabapples are best when cooked and sweetened. Before cooking with crabapples, remove the stems, seeds, and core. Once prepared, they can be used to make pickles, jellies, jams, sauces, and ciders. Their high pectin content makes them especially good in preserves.

title: Cookbook:Crab Apple


text:
Minecraft: Bedrock Edition Creator Documentation

'''Learn how to mod Minecraft with Add-Ons. Create skins, design unique experiences, discover the latest features, and develop your skills as a Minecraft creator'''

Table Of Contents | Contributor Style Guide

= Getting Started = Start to create your own Add-On with our Guide on Add-On, Entity Wizard and Block Wizard.   Add-On Development Working with Add-Ons in Minecraft: Bedrock Edition is easy! Learn how to get started  Block Wizard Rapidly design, build and deploy a brand new Block with the new Minecraft Block Wizard Tool  Entity Wizard Rapidly design, build and deploy a brand new Entity with the new Minecraft Entity Wizard Tool

= Tutorial = Learn to create you very own Add-On with these Tutorials.   Add-On Pack Tutorials Learn how Add-Ons are used to bring custom content into Minecraft. Introduction to Resource Pack Introduction to Behavior Pack How to add a Custom Block  Build a "Complete the Monument" world with Commands Use Commands add logic into your experiences. Introduction to Commands Popular Commands Getting Started with Command Blocks How to make a Complete the Monument World  Adding new Minecraft Entities Learn how to create and implement your own custom entities. Introduction to Adding Entity Entity Modeling and Animation Entity Behavior Introduction Entity Events Entity Properties


text:
Salut, Jonathan!

Salut, Jonathan! (Hello, Jonathan!) is the story of a young Englishman who goes to visit his friend in another European country. This edition is written entirely in Idiom Neutral. It begins with very simple language. The words the reader knows are repeated and new words are added slowly and in context, so that no dictionary is required to read it. This is a method used also by other books such as English by the Nature Method, Le français par la méthode nature, and L’italiano secondo il metodo natura, as well as Hans Ørberg's Lingua Latina per se Illustrata.

The original Salute, Jonathan! is a book written in Occidental, and first published by Dave MacLeod on Wikibooks in 2019. The text is available under the CC BY-SA 3.0 licence. As such, the text of this translation into Idiom Neutral is also available under the same terms.

The original Salute, Jonathan! consists of 100 chapters. This translation into Idiom Neutral is ongoing and therefore at the moment consists only of a small portion of it. Nonetheless, the further you get into the book, the language becomes more and more complex and an actual story begins to form. Salute, Jonathan! is in fact a full translation of a classic book that you are likely very familiar with. Go read it, in Occidental, if you’d like to know more.

Kapitli
Kapitl 1 • Kapitl 2 • Kapitl 3 • Kapitl 4 • Kapitl 5 • Kapitl 6

title: Salut, Jonathan!


text:
Salut, Jonathan!/Kapitl 1

Kontenad - Kapitl 1 - Kapitl 2 - Kapitl 3

Unim mai (1 mai)
Vir stand in urb. Vir skrib diurnlibr. Vir vis urb.

Eske vir stand in urb? Si, il stand in urb.

Eske vir stand in... vir? No, il no stand in vir. Il stand in urb.

Eske vir stand in tren? No, il no stand in tren. Il stand in urb. Vir stand in urb.

Eske vir skrib diurnlibr? Si, il skrib diurnlibr.

Eske diurnlibr skrib vir? No, diurnlibr no skrib vir. Diurnlibr no skrib. Vir skrib. Vir skrib diurnlibr.

Eske urb vis vir? No, urb no vis vir. Urb no vis. Vir vis. Eske vir vis urb? Si, vir vis urb.

Keloke vir stand? Il stand in urb. Kekos man skrib? Il skrib diurnlibr. Kekos vir vis? Il vis urb. Il stand in urb, e il skrib diurnlibr, e il vis urb.

Eske vir stand in diurnlibr? No, il skrib in diurnlibr. Eske vir vis vir? No, il no vis vir; il vis urb.

Vir es grand. Vir es bon, e vir es intelektuos. Il pens. Il pens di urb. Il pens: “Kekos es urb? Eske urb es bon? Eske urb es grand?”

Eske vir skrib urb? No, il no skrib urb; urb es grand. Il skrib diurnlibr; diurnlibr no es grand.

Eske diurnlibr pens di vir? No, diurnlibr no pens. Vir pens. Il pens di diurnlibr, e il pens di urb.

E il skrib in diurnlibr. Il skrib di urb. Il skrib: “Urb es bon, e urb es grand.”

Il pens: “Urb es bon”; il pens, ke urb es bon. Il pens: “Urb es grand”; il pens, ke urb es grand. Il pens di urb, e il pens di diurnlibr.

Kekos es diurnlibr? Diurnlibr es kos, in kel li skrib; il skrib in diurnlibr. In diurnlibr, vir skrib di urb. In diurnlibr, vir no skrib di tren; vir stand in urb, no in tren. Il no pens di tren; il pens di urb, urb München.

Kekos es urb? It es München. Keloke es München? It es, keloke vir stand. Keloke es vir? Il es in München.

Si, München es urb grand, e urb bon. Vir pens, ke München es urb bon, e il pens, ke it es urb grand. Vir es intelektuos. Il dik: “Salut, München!” Il es vir bon!

Vir stand e pens: “Keloke es tren?” Il vis... il vis tren! Il pens: “Tren!” Il no pens sitempe di diurnibr e li no pens di urb; il pens di tren!

eske?

 * eske = ?
 * Vir stand in urb.
 * Eske vir stand in urb?

–im

 * un = 1
 * unim (= prim)
 * du = 2
 * duim (= sekund)
 * tri = 3
 * triim (= ters)

 * mai, 2019 es 05/2019.
 * Unim mai (= prim mai) es 01/05/2019 (dd/mm).
 * Duim mai (= sekund mai) es 02/05/2019.
 * Triim mai (= ters mai) es 03/05/2019.

di

 * Vir pens di München.
 * Vir skrib di München.
 * Vir skrib: “Mi vis tren!” Il skrib di tren.

Paroli

 * bon: 👍
 * di
 * dik 🗣
 * diurnlibr 📝
 * es
 * eske
 * grand
 * in
 * intelektuos 🧠
 * it
 * ke
 * kekos
 * kel
 * keloke 🗺 🤷♂
 * kos
 * li
 * no ↔ si
 * pens: 💭
 * salut 👋
 * skrib 🖋
 * si ↔ no
 * stand 🧍
 * tren 🚂
 * un = 1
 * urb 🏙
 * vir 👨🏻
 * vis 👀

title: Salut, Jonathan!/Kapitl 1


text: Category:Book:Salut, Jonathan!

title: Category:Book:Salut, Jonathan!


text:
Talk:Computer network technologies and services/Migration to IPv6

Migration to book6?
A lot of the material here is hopelessly out of date and therefore misleading. 6over4? Nobody ever implemented it (I should know, I co-authored the RFC). ISATAP - ancient history. 6to4 - deprecated years ago (I co-authored the original RFC and the deprecating RFC). Etc. Lots of recent techniques are not mentioned.

So - how about contributing here instead: https://github.com/becarpenter/book6? The idea is to share authorship and be very up to date. We're using github markdown to start (we certainly don't exclude moving to Wikibooks at some point, but people seem to like the git pull request approach for shared authorship). Becarpenter (discuss • contribs) 02:09, 1 November 2022 (UTC)


text:
Salut, Jonathan!/Kapitl 2

Duim mai (2 mai)
Vir es sitempe in tren. Il no es in München; il es in tren. Il voyaj. Il pens: “Mi voyaj sitempe da München a Wien. It es voyaj bon. Mi am voyaji.” Il pens di München. Il pens: “Mi es sitempe in tren, ma mi esav presidiurne in München. E mi skrib sitempe diurnlibr in tren, ma mi skribav presidiurne diurnlibr in München. E mi pens sitempe in tren, ma mi pensav presidiurne in München. Mi pensav presidiurne di München in München, e mi pens sitempe di Wien in tren. Mi es sitempe in tren, no in Wien. Ma mi pens e skrib di Wien.”

Eske vir pens sitempe in München? No, il no pens sitempe in München. Il pens in tren. Il pensav presidiurne in München. Il dik: “Salut, tren!”

Vir es in tren, e il voyaj a urb. Urb no es München; presidiurne urb esav München. Sidiurne urb es Wien.

Vir pens di München e Wien. Il pens: “Presidiurne urb esav München, e München esav bon. It es sitempe sidiurne, e mi es in tren; tren es bon. Eske Wien esero bon?”

Vir pens di München: “Presidiurne urb esav München.” Il pens in tren; il es sidiurne in tren. E il pens di Wien: “Posidiurne urb esero Wien.”

E il pens: “München esav grand. Tren es grand. Eske Wien esero grand?”

E il pens: “In München mi skribav in diurnlibr. In tren mi skrib in diurnlibr. Eske in Wien mi skribero in diurnlibr? SI, posidiurne in Wien mi skribero in diurnlibr. Mi am diurnlibri!” Vir pens multe (il pens e pens e pens), e il skrib multe. Si, il es vir intelektuos. Viri intelektuos skrib multe e pens multe. Il es Jonathan; Jonathan es vir intelektuos.

Il skrib: “Mi es Jonathan. Mi es in tren. Mi standav presidiurne in München; mi standero posidiurne in Wien.”

Il pens e il skrib: “Tren... it es bon, ma ansian. It no es nov; it es ansian. Eske treni in München es ansian? Si, treni de München es ansian. Ma treni de München es bon, e mi am treni de München. Presidiurne mi amav tren in München, e sidiurne mi am sitempe tren, e posidiurne mi amero tren in Wien. Mi am treni!”

Jonathan skrib: “München es urb bon e urb ansian, e Wien es urb bon e urb ansian. München e Wien no es nov, ma es bon. München e Wien es urbi ansian, ma bon. Urbi no es nov, ma bon. Mi am urbi!”

Jonathan pens, ke diurn duim de voyaj es bon. Il dik: “Sidiurne it esav diurn duim bon de voyaj. Mi am voyaji!”

presidiurne, sidiurne, posidiurne

 * presidiurne = unim mai (1 mai)
 * sidiurne = duim mai (2 mai)
 * posidiurne = triim mai (3 mai)

-av

 * skrib: sidiurne mi skrib, presidiurne mi skribav
 * pens: sidiurne mi pens, presidiurne mi pensav
 * vis: sidiurne mi vis, presidiurne mi visav

-ero

 * skrib: sidiurne mi skrib, posidiurne mi skribero
 * pens: sidiurne mi pens, posidiurne mi pensero
 * vis: sidiurne mi vis, posidiurne mi visero

da, a

 * Da München a Wien:
 * München → Wien
 * Da Wien a München:
 * München ← Wien

Paroli

 * am
 * ansian
 * da
 * multe
 * nov
 * posidiurne (presidiurne → sidiurne → posidiurne)
 * presidiurne (presidiurne → sidiurne → posidiurne)
 * sidiurne (presidiurne → sidiurne → posidiurne)
 * sitempe
 * voyaj

Pronunsiasion

 * j = zh
 * voyaj: voyazh

title: Salut, Jonathan!/Kapitl 2


text:
No Man's Sky/Glitched Planets

 * Note: Glitched planets are not bugs, but features

A "glitched" planet is a rare occurrence. The planet's fauna is all turned into a strange form, while all flora and minerals take a specific shape. Possible forms include:
 * Dark pillars with orange-ish lines running up them. Fauna are transferred into flying yellow crystals.
 * Small, dark hexagonal pillars, with creatures being quite similar to everything else.
 * Round spherical objects with hexagonal shapes all over it. Fauna share the same shape as everything else and roll around.
 * Large pillars with orange stripes running up them. Fauna are in the shape of flying blue circles, a lot like plasma.

If you continue to explore the planet, you will eventually find a collectible decoration for your base that closely matches the planet's flora and minerals.

You may also come across a boundary failure, a large ring structure, with a terminal at the base of it, allowing you to unlock some game lore on the downfall of other universes.

title: No Man's Sky/Glitched Planets


text:
Minecraft/Redstone

A powerful substance used to make many mechanized contraptions.

Obtaining
Redstone dust can be found in woodland mansions, dungeons, strongholds, and most other naturally generated structures. They also drop from witches, and can be found below y=16.

Use
They can be used for so many things, it would be impossible to list it all here. See the redstone guide for more on that.

title: Minecraft/Redstone


text:
Minecraft/A Guide to Redstone

There are many things you can do with redstone. You could make traps, contraptions, clocks, a computer, games, elivators, farms, lag machines, and the list goes on and on.

Redstone dust
When placed, it lies flat on the ground. When unpowered, it is dark red in color. When it is powered, the redstone will glow bright red and emit the redstone charge to adjacent blocks, including other redstone dust. Redstone power can travel a maximum of 15 blocks by deafult, but this can be increased or decreased in several ways. The strength of redstone depends on the distance to the original power source. 0 is unpowered, 15 is the strongest.

Redstone ticks
Redstone ticks are the name of every time redstone is processed. There are ten per second, which is half of normal ticks.

Power sources
There are many ways to power redstone, anything from shooting at a target block, to standing on a pressure plate.

Manual activators
These are best suited for the opening of iron doors, redstone doors, farm switches, ect. They require you to forcefully activate them yourself.

 * ../Button/ - can be pressed for a temporary redstone charge
 * ../Lever/ - can be pressed for a toggleable redstone charge
 * ../Target Block/ - can be shot at for a temporary redstone charge, with power level based on how close you were to hiting the bullseye

Trap activators
These are used for traps that can deter or even kill other players or mobs, great for protecting your base. Although that is not their only use.

 * ../Pressure Plate/ - activated when stepped on
 * ../Weighted Pressure Plate/ - activated when a certain amount of items or mobs are on top
 * ../Tripwire/ - can be placed on walls and connected with string. When someone or something steps on the string, a redstone charge is emitted
 * ../Trapped Chest/ - when opened, emits a redstone charge based on how many people have opened it at once

title: Minecraft/A Guide to Redstone


text:
Infrastructure Past, Present, and Future Casebook/Central Park

= Central Park =

- This casebook is a case study on New York City's Central Park by Audrey Hayes, Hunter Hill, Eryn Undan, and Wilfredo Villatoro and as part of the Infrastructure Past, Present and Future: GOVT 490-004 (Synthesis Seminar for Policy & Government) / CEIE 499-003 (Special Topics in Civil Engineering) Fall 2022 course at George Mason University's Schar School of Policy and Government and the Volgenau School of Engineering Sid and Reva Dewberry Department of Civil, Environmental, and Infrastructure Engineering. Modeled after the Transportation Systems Casebook. Under the instruction of Prof. Jonathan Gifford.

= What is Central Park? = Central Park is a public park located in the center of Manhattan, New York City. It was the first landscaped public park ever built in the United States, as well as the most frequently visited one with over 40 million guests annually. It is owned by NYC Parks, and operated by the Central Park Conservancy. Central Park spans 843 acres and is home to a plethora of natural landscapes, attractions, and events. Today, Central Park holds events such as concerts and weddings. In addition to this, Central Park is home to several visitor centers and restaurants, along with the Central Park Zoo. As for recreational activities, visitors enjoy taking yoga classes, utilizing bike rentals, as well as picnics and horse and carriage tours within the park. Considering its many points of interest and rich history, Central Park is widely regarded as one of the most famous public parks. In fact, over 200 featured movies include Central Park in their setting, making it the most filmed public park in the world. Building Central Park cost about $14 million dollars in original construction and approximately $1 billion in restoration and maintenance costs up-to-date.

Central Park’s construction began in 1858 with the goal of fulfilling the recreational needs of residents in the growing New York City. Government officials held a competition to determine how the park would be built; a total of 33 entries were taken into account, and the winning design “Greensward Plan” came forward as a product of Frederick Law Olmsted and his partner Calvert Vaux. Their design featured rural landscapes that would give New York City residents a way to experience more naturesque environments– without the troubles of having to travel far from the city. Olmsted believed that it was important to mold Central Park into a universal space where men, women, and children of all backgrounds were welcome.

= History = Central Park is located in an area previously known as Seneca Village, which was a predominately African-American neighborhood. Seneca Village's residents were some of the only Black property owners of the early to late 1850s. This is important because of laws at the time that only allowed property owners to be able to vote. It was a safe haven for immigrants and people of color from more built up areas southern of Seneca Village. The demographics of this area were mostly Black, Irish, and some German immigrants. The land was obtained through eminent domain.

Timeline of Events
Pre-Construction Construction and Opening Influence of the Central Park Conservancy to Present = Institutions and Involved Actors = The initiative to build Central Park was carried out in 1951 by the New York City government under Mayor Ambrose Kingsland. Kingsland proposed to the New York City Common Council to acquire a 750-acre (300 ha) between the 59th and 106th streets and Fifth and Eighth avenues. To ensure the completion of the park, the state legislature passed a bill to authorize the appointment of four Democratic and seven Republican commissioners who had exclusive control over the planning and construction of Central Park. There was a design contest that received 33 entries. The commission selected the Greensward Plan, submitted by Frederick Law Olmsted, a writer and farmer from Connecticut, and Calvert Vaux, a young English architect.
 * 1825:Seneca Village is founded when John and Elizabeth Whitehead sell 200 lots of their land between what is now West 82nd to 89th Street of Central Park
 * 1853:New York State Legislature passes a law that said the United States’ first major public park would be built in Manhattan between 5th and 6th Avenues
 * 1857:Remaining residents are forced to vacate Seneca Village; site clearing begins
 * 1858:Design competition is held to determine how Central Park should be constructed
 * 1862:The Central Park design plans by Frederick Law Olmsted and Calvert Vaux are finalized
 * 1863:The city purchases 64 lots from Courtlandt Palmer, a hardware business owner, as part of a plan for park extension
 * 1858:Construction begins and the first section of Central Park, “The Lake”, opens to the public after only a few months
 * 1876:Central Park is officially completed
 * 1881:The Obelisk (Cleopatra’s Needle), which was created in Egypt about 3,500 years ago, is first displayed in Central Park
 * 1934:Central Park gets a “revival” when Robert Moses is appointed NYC Parks Commissioner
 * 1960:Robert Moses resigns from his position as Commissioner, without leaving any plans on how to proceed with further maintaining the park
 * 1963:Central Park is officially named a National Historic Landmark
 * 1979:The park’s infrastructure has been suffering for some time now; volunteer groups have been attempting to deal with these issues. Elizabeth Barlow, the director of the Central Park Task Force, is the first to hold the position of Central Park Administrator
 * 1980:Several advocacy groups including the Central Park Task Force come together to form the Central Park Conservancy, a private non-profit group that works under contract with New York City and NYC Parks. From this point on, the Conservancy is in charge of operating and maintaining Central Park
 * 1990:The Central Park Conservancy has now contributed over 50% of Central Park’s budget
 * 2017:Restoration of the Ravine in North Woods was completed, which included the reconstruction of older bridges, paths, and drainage infrastructure
 * 2019: Renovations of the Safari Playground (originally built in 1936) have been completed, with new creative and safe playground elements along with wheelchair accessibility ramps that lead into the space
 * 2022:Construction for the restoration of the Conservatory Garden is currently ongoing; it has not been significantly restored since 1983

The construction required workers to move nearly 5 million cubic yards of stone, earth, and topsoil, build 36 bridges and arches, and construct 11 overpasses over transverse roads. The park also required the plantation of 500,000 trees, shrubs, and vines. Over 20,000 workers were needed to build Central Park, most of them Irish and German immigrants who were underpaid, overworked, and uninsured. Upon the park's completion, there was no board to oversee the park's maintenance, which led to contamination and deterioration of the park in the upcoming decades. In the early 1900s, advocacy groups were formed, such as the Parks and Playground Association, the Parks Conservation Association, and the Central Park Association. These associations were merged into the Park Association of New York City in 1928. Despite the presence of the Park Association of New York City, the lack of funding and expansion led to a decaying state of Central Park as New Yorkers shifted their attention to other sites such as Coney Island and Broadway Theaters. Central Park experienced a revival in 1934 when Mayor Fiorello La Guardia appointed Robert Moses as NYC Parks Commissioner. Moses received federal funding to develop massive planning projects citywide, including 19 playgrounds, ballfields, handball courts, and Wollman Rink in Central Park. The estimated funding received from the federal government was 2 million dollars ($43 million today). Moses would remain as NYC Parks Commissioner until 1960.

As usual, the park again started to face contamination, deterioration, and pollution, which was neglected due to the lack of budget to sustain a significant renovation of Central Park. In 1975, the Central Park Task Force was founded to raise capital for the revival of Central Park. In 1980, a 200-million-dollar endowment was given to Central Park under the efforts of the Central Park Conservancy. The Central Park Conservancy continued to fundraise money for renovations which have averaged between 50 to 100 million every decade in addition to the yearly budget. In 1993, the Conservancy and the City signed a Memorandum of Understanding (MOU) recognizing the Conservancy as the entity responsible for the day-to-day maintenance and operation of the park. The agreement was renewed in 2006 and again in 2013, reiterating the City's continued trust in the Conservancy. The current contract will expire in 2013, when a new deal may be settled.

= Funding and Financing =
 * 1851 to 1965: Total cost of park was 14 million U.S Dollars which was 7 million more than the estimated 5 million. The land itself was 7.1 million dollars which was almost the same amount Alaska was purchased from Russia in 1867.
 * 1928: The Park Association of New York City is created which allocates a yearly budget to the maintenance of the park.
 * 1934: The federal program New Deal granted Robert Moses with 2 million dollars to renovate the park.
 * 1975: The Central Park Task Force is founded, which led to the creation of the Central Park Conservancy.
 * 1980: A 200-million-dollar endowment was given to Central Park.
 * 1986: The Conservancy’s first capital campaign raised $50 million over a five-year period.
 * 1993: Through overwhelming support of thousands of New Yorkers and many corporations and foundations, the Conservancy raised a total of nearly $77.2 million, which is used to restore the Park’s remaining major landscapes—Summit Rock, Merchant’s Gate, Naturalist’s Walk, Turtle Pond, the Great Lawn, and North Meadow.
 * 2006: The Conservancy launches the Campaign for Central Park, $100 million including $50 million capital for major landscapes remaining to be restored (Lake and Met to Meer), and $50 million for long-term operating support. Campaign is expanded to include additional capital projects, increasing the total campaign to $126 million.
 * 2013: The Conservancy secured a $100 million gift towards restoration and management of the Park. Roughly half is directed toward a 10-year capital program for the park. 60 million dollars are given from the city towards the estimated $170 million capital program.
 * 2022: Negotiations have begun between the Conservancy and New York City, which might reach an unprecedented 300-million-dollar donation from the City.

= Economic Benefits and Consequences = The current value of the land in Central Park is estimated to be about $528.8 billion. A 2009 study found that the park increased the city’s annual tax revenue by more than $656 million, visitors spent more than $395 million due to the park, in-park businesses such as concessions generated $135.5 million, and the 4,000 hours of annual film shoots and other photography generated $135.6 millions of economic output. In 2013, about 550,000 people lived within a ten-minute walk (about 0.5 miles or 0.80 kilometers) of the park's boundaries, and 1.15 million more people could get to the park within a half-hour subway ride. In 2014 the Central Park Conservancy directly employed 453 people, with a payroll of nearly $21.4 million; and spent approximately $15 million on purchases of goods and services (including construction) from New York City businesses. Visits to Central Park in 2014 are estimated to have totaled 41.8 million, an average of nearly 115,000 visits per day. Using data obtained from the New York City Department of Finance, we estimate that in fiscal year 2014, proximity to Central Park added more than $26.0 billion to the market value of properties on the blocks closest to the park – from Lexington Avenue on the east to Amsterdam Avenue on the west, and from 53rd Street on the south to 116th Street on the north. = Maps =

= Takeaways =

 * 1) Central Park’s initial price seems steep but has ultimately worth it
 * 2) Parks within cities are one of  the few non-rival non-excludable aspects
 * 3) Equal accessibility was a key goal by Olmsted “The larger a town becomes simply because of its advantages for commercial purposes, the greater will be the convenience available to those who live in and near”[12]
 * 4) Central Park not only provides a lot for the community but also increases the value in the property around it significantly.
 * 5) Thanks to good planning, the park is accessible via the 1,2,3,4,5,6,A,B,C,D,N,E,Q, and M trains either directly on at, or within a short walking distance, not to mention being the heart of Manhattan

= Discussion Questions = = References =
 * The maintenance of Central Park is above 50+ million per year, which only directly supports less than 1,000 jobs. Is this expensive budget line item justifiable?
 * The presence of Central Park directly increases the cost of land, making it a highly commercial area. Should Central Park be replicated in other cities, given the risk of displacing communities?
 * Is the success of Central Park directly related to its massive 840 acres of land, or would multiple smaller parks have had the same effect?
 * The response time of public safety officials to Central Park is increased significantly due to its size. Should scenery be sacrificed to increase public safety?


text:
Talk:65c02 Assembly

Zero Page Indexed
What happens when the sum is larger than 255? Does it loop back to the beginning (address mod 255) or does it go into the next page? 2001:9B1:26FD:8D00:F2E2:8CFF:FE35:5907 (discuss) 01:13, 2 November 2022 (UTC)

title: Talk:65c02 Assembly


text:
User:AresUII/common.css

@media { body { color: #ffe; background: #110; } }	color: #d71; background: #110; }
 * 1) content{

h1 { color: #ffe; }

h2,h3,h4,h5,h6,p { color: #d71; }

title: User:AresUII/common.css


text:
Salut, Jonathan!/Kapitl 3

Duim mai (2 mai)
Jonathan stand in Wien: urb de Wien. Jonathan pens, ke Wien es bon, e ke, Wien es bel. Jonathan no pens, ke Wien es deformik; il pens, ke Wien es bel. Il dik: “Wien es urb bel! Mi skribero di it!” E il skrib in diurnlibr di Wien. Il skrib in diurnlibr: “Mie diurn triim es multe bon! In diurn duim mi standav in München. Ma mi stand sitempe in Wien: Wien no es München. München e Wien es du urbi; München no es Wien e Wien no es München. Mi stand in Wien e urb es multe bon. Mi am Wien; urb no es deformik. Kuale bel es Wien! Ma mi av problem.”

Kekos? Jonathan av problem? Kel problem? Il no vis sitempe diurnlibr; il vis urb e il pens. Il pens multe di problem.

Problem de Jonathan es, ke il am Wien, ma il no av temp.

Il pens: “A! It es sitempe hor sept (7). Tren partero in hor des (10). Hor des es tri hori plu tarde ka hor sept (7). Tri hori no es temp mult pro urb bel! Mi no av temp. It es bon avar temp, ma mi no av it! It es bon skribar diurnlibr, ma mi no av temp skribar it! Kekos fasiar in Wien?”

Il pens: “Mi no av temp mult. Kekos fasiar – skribar diurnlibr, edar, u visar urb? Kekos mi fasiero?”

Il pens plu, e il dik: “Mi av idé bon! Moment... mi pens. Mie tren partero in hor des (10). Eske esero plu tarde tren, in hor desun (11), desdu (12), destri (13), deskuatr (14), u deskuink (15)?”

Il vis... si! Es tren, kel partero in hor deskuink. Jonathan sitempe es felis.

Jonathan dik: “Deskuink (15) es okt (8) plu ka sept (7). Mi av sitempe okt hori de temp! Kekos mi fasiero?”

Il dik: “Mi konos! Mi edero bifstek. E mi bibero bir. Moment... no, mi bibero du biri u tri biri. Idé bon!”

Jonathan bib sitempe bir in Wien, e il ed bifstek. Il es felis. Il dik: “Kuale felis mi es! Mi am urb de Wien. Kuale mi am voyaji!”

verbi

 * Infinitiv de verb es -ar. Pens = pensar, skrib = skribar, ed = edar, av = avar.
 * Jonathan pens: “kekos edar?” e il ed bifstek.
 * Jonathan pens: “It es bon avar temp!” Il no av temp.

de

 * Jonathan pens: mie tren partero. = tren de Jonathan partero.
 * Jonathan skrib in diurnlibr. Il skrib it; it es diurnlibr de Jonathan.

es

 * Eske es vir in tren? Si, es vir; it es Jonathan.
 * Eske es diurnlibr in bifstek? No, no es diurnlibr in bifstek.

plu tarde

 * It es hor 10. Plu tarde, it esero hor 11.
 * Jonathan esav in München. Plu tarde, il esav in Wien.
 * Jonathan pens: “Mi edero.” Plu tarde, il edav.

ka

 * Urb es grand e Jonathan es grand, ma urb es plu grand ka Jonathan.
 * Des (10) es plu ka seks (6); 10 > 6.

1) kel?

 * Jonathan am tren. Kel tren Jonathan am? Jonathan am tren ansian.
 * Jonathan vis urb. Kel urb Jonathan vis? Jonathan vis urb de Wien.

2) kel

 * Jonathan es in tren ansian. Jonathan am tren. Tren, kel Jonathan am, es ansian.
 * Jonathan vis Wien. Wien es urb. Urb, kel Jonathan vis, es Wien.

kuale
kuale = !

 * Tren es bel: “Kuale bel es tren!”
 * Jonathan es intelektuos: “Kuale intelektuos il es!”
 * Jonathan av problem grand, multe grand. Jonathan dik: “Kuale grand es mie problem!”

hor

 * It es hor seks: 6:00
 * It es hor du e des (minuti): 2:10

Un hor = 60 minuti, du hori = 120 minuti. 6:00 es hor seks e 2:00 es hor du.

partar

 * Tren part da Munich. Plu tarde, tren esav in Wien.
 * Tri hori plu tarde, Jonathan partero.

Un, du, tri...

 * 1: un
 * 2: du
 * 3: tri
 * 4: kuatr
 * 5: kuink
 * 6: seks
 * 7: sept
 * 8: okt
 * 9: nov
 * 10: des
 * 11: desun
 * 12: desdu...

Paroli

 * avar
 * bel ↔ deformik
 * bibar
 * bifstek 🥩
 * bir 🍺
 * de
 * deformik: ne bel (deformik ↔ bel)
 * diurn = 24 hori
 * edar
 * fasiar
 * felis 😃
 * hor
 * idé 💡
 * ka
 * kel
 * konos
 * kuale
 * mie
 * moment: temp nemult
 * partar
 * plu tarde
 * problem
 * temp

title: Salut, Jonathan!/Kapitl 3


text:
Wikijunior:Raspberry Pi

About the book
Welcome to Wikijunior Raspberry Pi.

The target age of this title is 8–12 years old. Section titles are the Raspberry Pi tutorials. There will be an introduction explaining what a Raspberry Pi is, what the relevant electronic components are and how the Python programming language works.

When working on this project, remember that it is aimed at children. Being understood is just as important as being accurate. Authors should concentrate on the most important concepts rather than getting wrapped up in every detail. Use technical vocabulary when you need to, but don't use big words where simpler language would work. Or in other words, write as you would when you were a child.

If you have made contributions to this Wikibook and would like to have formal credit for being an author, please add your name to the list of authors.

{| style="width:100%;"

 * style="width:50%; background-color:#ffffec; border:1px solid #faf9b2; padding:1em; padding-top:0.5em;" |

Special Pages

 * /Introduction to the Raspberry Pi/
 * /Introduction to Python/
 * /Raspberry Pi Zero Traybake Cakes recipe/

Electronics tutorials

 * /Introduction to Electronics/

 * /Raspberry Pi Python GPIO Zero Simple LED Tutorial/
 * /Raspberry Pi Screaming Jelly Babies Tutorial/
 * /Raspberry Pi Light Sensor Nightlight/
 * /Raspberry Pi LED Birthday Candle/
 * /Raspberry Pi LEGO® Christmas Tree LED Lights/
 * /Raspberry Pi LEGO® Traffic Lights/
 * /Raspberry Pi GPIO Zero Reaction Timer/
 * /Raspberry Pi Python GPIO Zero Buzz Wire Game/
 * /Raspberry Pi LEGO® Burglar Alarm/
 * /Raspberry Pi Star Wars Lightsaber/
 * /Raspberry Pi Build A Raspberry Pi Space Invaders Controller/
 * /Raspberry Pi Temperature Sensor/
 * /Raspberry Pi Python GPIO Zero Distance Sensor/
 * /Raspberry Pi Motor Control/
 * /Raspberry Pi Python Individually Controllable LEDs (ws2811)/
 * /Raspberry Pi Simon Says Game/

Minecraft: Pi Edition tutorials

 * /Introduction to Minecraft: Pi Edition/
 * /Minecraft Dungeon Maze/
 * /Minecraft Christmas Tree Decorations/

Stratch tutorials

 * /Introduction to Scratch/
 * /Scratch Game – Simple Maze/
 * /Scratch Game – Maze/
 * /Scratch Game – Math Quiz/

Raspberry Pi OS tutorials

 * /Introduction to Raspberry Pi OS/
 * /Raspberry Pi Turtle Stars/
 * /Raspberry Pi Make a Graphical User Interface (GUI)/
 * /Raspberry Pi Enigma Machine/
 * /Raspberry Pi Voice Control/
 * /Raspberry Pi Updates & Backups Tutorial/
 * /Raspberry Pi Web Server & HTML Tutorial/

 * style="width:50%; background-color:#eeffee; border:1px solid #99ff99; padding:1em; padding-top:0.5em; vertical-align:top;" |

Contributing

 * /Authors/
 * /Contributing/
 * /Manual of Style/

Create or Request a Page
You are encouraged to create a page on an interesting or useful element. If you would like to do so, please read the /Contributing/ page.

Stub Template
Please use the Stub Template when creating a new article.
 * }

title: Wikijunior:Raspberry Pi


text:
Wikijunior:Raspberry Pi/Raspberry Pi Python GPIO Zero Simple LED Tutorial

Tutorial by Andrew Oakley Public Domain 24 Sept 2016 www.cotswoldjam.org

Light-emitting diode (LED)
The light-emitting diode (LED) has a short leg and a long leg. If you feel around the rim, you'll also find a flat edge.

The short leg and flat edge always connect to the negative (ground).

Resistor
The resistor can be connected any way around. Any resistor between 220 and 470 Ohms will work fine.

Jumper wires
Jumper wires (also called DuPont wires) connect electronic components to the GPIO pins.

You should also have two short and one long jumper wire (all "female to female" – holes at both ends).

Putting it together
Step 1: Connect one short wire to pin 7 (GPIO 4). This is the 4th pin from the left of the bottom row.

Step 2: Place the resistor at the end of the short wire.

Step 3: Connect another short wire to the resistor.

Step 4: Connect the end of this short wire to the long leg of the LED. This is a positive connection.

Step 5: Next, connect the long jumper wire to the ground (negative). There are several ground pins on the Raspberry Pi, for example, the 5th pin from the left of the bottom row which is pin 9 (GND).

The program
Power up your Raspberry Pi. From the desktop menu, select Programming – Python 3 (IDLE). Then use File, New Window to create a new program.

Type in the following program, or alternatively you can use File, Open to open the  program in the   folder.

Use File, Save to save this program as led.py and then run it by selecting Run menu, Run Module. You should see the LED light up for one second, and then turn off.

Not working? Check that you have:

 * The correct GPIO pins.
 * That the LED is the correct way round; short leg to ground (GND).
 * There are no spelling mistakes, no missing brackets, and you've used round brackets instead of pointy, curly or square ones.

What is this program doing?
The first two lines tell the computer to learn about a new thing. Computers can learn from programs that other people have written, and we call these other programs "libraries". Our instructions tell the computer to learn about LEDs from the GPIOZero library and learn about sleeping from the time library.

We then create an LED object. We say that the LED is connected to GPIO 4.

Turn the LED on, wait for 2 seconds, then turn it off.

See if you can flash SOS in Morse code. Have a look at the  program and learn about the   command.

Cjam-led-gpiozero-tutorial.pdf
The original PDF for this tutorial is available on Wikimedia Commons:


text:
Wikijunior:Raspberry Pi/Raspberry Pi Web Server & HTML Tutorial

Tutorial by Andrew Oakley Public Domain 28 Jan 2017 www.cotswoldjam.org

The Terminal
Start the terminal with the Raspberry Pi menu – Accessories – Terminal.

We’re going to install a web server. A server is a program that other people can connect to.

The ordinary user pi doesn’t have the ability to install software, so we use the  command to temporarily switch to the superuser (also known as the root user). Enter:

The  command gets an up-to-date list of software. The  command installs new versions of any out-of-date software you have. If you are on a slow internet connection,  might take a long time. You might be asked to confirm by pressing Y and Enter. Now let's install the Apache web server, the most commonly used Linux web server.

You’ll see that this asks to install apache2 and a few other programs too. These are called "dependencies" – they are programs which apache2 needs in order to work.

Once Apache is installed, start your web browser. On a Raspberry Pi 2 or 3, you can use the Pi menu – Internet – Chromium web browser.

If you are on an older Pi 1 or Pi Zero, select Pi menu - Run – and then type  and press Enter. Epiphany is a simpler browser for slower computers.

In the web browser's address bar, type  and press Enter.

You should see the Apache2 Default Page. localhost always refers to the computer you're using. So if someone types it into their Raspberry Pi, it'll refer to their Raspberry Pi and not yours.

Go back to the terminal and enter:

It will tell you the name of your computer. This might be  or someone might have customised it for you, such as. Now go back to your web browser, and type:

… where hostname is the name of your computer. You must put .local afterwards on Linux computers. On Microsoft Windows, you'd use .lan instead: hostname.lan

Provided you don't have the same hostname as someone else on the same network (usually "your network" means "your building") then this should find only your computer. This is called Zeroconf and is also known as Avahi or Bonjour. Some computers don't support Zeroconf so you can find your IP address instead:

(note capital i) Your IP address will look like four sets of numbers, such as 192.168.0.42. Now try browsing to your IP address in the web browser.

Creating your own web page in HTML5
Back in the terminal, enter:

is where web pages are kept. You should see index.html. We're going to rename it to -old (to keep a copy, just in case) and create a new index.html of our own.

A text editor program should pop up, with a blank page. Start typing:

Change Andrew to whatever your name is, and save the page with File menu, Save.

Reload the web browser using the reload button near the address bar or by pressing the F5 key.

What did this code do?
  tells the browser this is the start of a web page; is the end   says this is the start of the header, where the title goes; is the end   is the start of the text of a web page; is the end    is the start of a new paragraph; the closing tag   is optional in HTML5

is a special file name that gets loaded if you don't specify a particular web page inside a folder. So http://localhost is the same as http://localhost/index.html

Under "My name is Andrew" now type:

Don’t forget to File, Save, then reload browser.

   is a link to another web page (or any file on a web browser). The href (hypertext reference) can be "relative" such as pets.html - this will become http://hostname.local/pets.html because pets.html is in the same folder as index.html.

To link to web pages in other folders on other computers, you can use an "absolute" address such as: http://www.bbc.co.uk/news/technology-37305200

Close Leafpad with the X at top right. We're going to add a photo. Let's list the photos (if you’re not using the Cotswold Jam preinstalled SD card, you'll need to find your own photos):

Pick a pet (cat, dog, guinea pig, hamster) and copy the picture to the web server directory:

Create a new web page with:

Reload browser and click on the "My favourite pet link". You can use the Back button to go back to the index page.

Now try browsing other classmates' websites. You will need to know their hostname or IP address. For example http://rpi-12ab.local or http://192.168.0.123

If your hostname is raspberrypi (the default) then that might clash with other similarly named computers. You can change it by going to Pi menu - Preferences - Raspberry Pi Configuration and changing the Hostname. You'll be prompted to reboot your machine when done.

If you want to uninstall Apache:

Create a CSS file for your webpage
Cascading style sheets (CSS) are files used by websites to change the appearance of the content on each webpage.

Create the  file just like the corresponding   file.

Type this CSS to alter the  tags.

Now to add the CSS file to the HTML file so that web browser knows to use it.

By just using the name of the tag on its own that will alter all uses of the tag. CSS uses classes which can be used on specific tags. Type the following into the  file to add a class:

Then declare the class to the  tags.

You can try other CSS attributes to style your webpage such as:

 * makes the font italic.
 * adds a margin to separate the tag from other elements on the page. Using  on its own will add a margin to all four sides of the tag.
 * changes the colour of the text to red.
 * changes the background colour of the webpage to black.

You can refer to the colour table below or do a Google search to find your preferred colour. CSS supports RGB, HSL and hexadecimal colour standards, though hexadecimal is preferred because it's the most concise.

What is hexadecimal?
A numerical base is the amount of single-digit numbers that can be used for counting. In everyday maths, we use decimal (base 10) which are the numbers 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9.

Computers are based on binary (base 2) which uses the single-digit numbers 0 and 1. This means they don't count or perform calculations in the same way we do.

Hexadecimal (base 16) is a simplified way to write binary which prevents us from writing out a lot of zeros! Much like binary being the numbers 0 and 1, hexadecimal are the numbers 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E and F.

For example: Decimal 255 = Binary 11111111 = Hexadecimal FF

Each binary digit is doubled for each column. So 1+2+4+8+16+32+64+128 = 255

For further information: https://www.mathsisfun.com/numbers/bases.html

Public IP Addresses
To make your website visible to people outside your network (for example, in other buildings or other towns or countries), you will need a Public IP address. Read the manual for your router to find out how to set up Port Forwarding for port 80. You can find your public IP address by searching Google for "what is my ip".

Your public IP address can change; ask your internet service provider for a Static Public IP address. You can then buy a domain name and associate it with your static public IP address. For some UK ISPs, you might already have a subdomain, for example Plusnet gives every customer accountname.plus.com.

Stopping and starting server programs
From the terminal:

Reload localhost in the browser. Note the error message - the web server has been stopped.

Shows "Active: inactive (dead)" – it’s not running.

Reload the browser. It works again.

Shows "Active: active (running)"

Shows "Loaded: not-found". This means bing-bong-pop doesn't exist, isn't installed, or you spelt it wrong. Of course it doesn’t exist, I made it up as an example.

Controlling automatic starts
Reboot the machine with Pi menu - Shutdown... – Reboot.

Once the machine has restarted, browse to localhost. Note how the web server is started automatically on boot. From the terminal:

Reboot again and, once restarted, try browsing to localhost. You get an error message – the web server didn’t automatically start when you rebooted.

You can start it manually with:

or you can reenable it to start automatically every reboot with:

Removing installed programs
Remember those "dependencies", extra programs which Apache needed to install so that it would work? We use the autoremove directive to uninstall them after we’ve uninstalled Apache.

Updating and installing other programs
…to get the latest versions of the software you already have.

You can find names and descriptions of other packages to install on this website: http://www.raspberryconnect.com/raspbian-packages-list

Once you’ve done an, you can install new software with:

…where packagename is the name of the software you want to install.

Be wary of anything that asks to install lots and lots of other packages. Learn how to make a backup of your SD card, for example with Win32DiskImager on a Windows laptop.

Files
The original PDFs for this tutorial are available on Wikimedia Commons:


text:
Wikijunior:Raspberry Pi/Raspberry Pi Updates & Backups Tutorial

by Andrew Oakley - Public Domain Jan 2018 www.cotswoldjam.org

Updating your system
You will need a working internet connection. Select the Raspberry menu – Accessories – Terminal. A black box should appear.

These commands will get the list of updated software and then upgrade. You may be asked to type Y to confirm. This can take a very long time, especially on a Pi 1 or Zero!

will uninstall any software which has been superseded by new software. removes any temporary installation files, to free up space on your SD card.

Restart your system with the Raspberry Pi menu – Shutdown – Reboot.

Connect a USB memory stick and find out what it's called on the system
Insert the USB memory stick into a USB port. We need to find out what the USB stick is called, and where it is on the system.

The memory stick may open automatically in File Manager. In this case, you can read the name from the address bar. In this example it is BLUE64GB.

Alternatively, you can find the name by clicking the "Eject" symbol in the top right of the desktop.

In this example, the name is BLUE64GB. It also shows the brand name (SanDisk Ultra Fit) but we don't care about that.

Don't actually eject the USB stick yet! We're going to put some backups on it. There's another way to find the name and location of your USB stick; find out about the  command.

Back up all your files to a USB stick
These commands back up all files in the  directory. This includes all documents, images, Scratch and Python source code files and Minecraft worlds that you have made, but it doesn't include programs that have been installed on the system.

Note how we used  to move from the   directory to the   directory.

This allows us to treat the entire pi directory as a subfolder that we can back up.

We also use the  option to ignore the   subfolder, as this can contain a lot of large temporary web browser files.

It's a good idea to use the date in the name of your backups, so you can quickly find a backup from a particular day. We used 2018 01 27 for 27th January 2018. Putting the year and month first will make it easier to find in a list that's sorted in file name order.

Once we've finished, we use the  command on its own, to return to our   directory. We could have done  which would have done the same thing.

Restore all your files from a USB stick
Insert the USB memory stick into a USB port. Find the .zip file you want to restore using File Manager.

Using the Terminal, restore the files. Note this will overwrite existing files with the older versions.

Back up just one folder
Note that folders beginning with a full stop are sometimes hidden from file listings, but you can still back them up. For example, the Minecraft folder with all your Minecraft worlds:

Restore just one folder
We didn't use, so it will ask before overwriting any existing files.

List all the files in a large .zip backup archive and pick just one file or folder to restore
Although you can use the  command to extract specific individual files, it's easier to use the Xarchiver program. Use File Manager (Raspberry menu – Accessories – File Manager) to open the USB stick and find your .zip file.

Double-click on your .zip file and the Xarchiver program will start.

You can now double-click to open any folder inside the .zip file. Right-click any file or folder and select Extract to recover it.

Click the folder icon beneath "Extract to" to pick a folder to copy the recovered file to. You probably want  which you can either type in, or click the   folder from the list of folders.

If you're just recovering one file, untick "Extract files with full path".

Click the Extract button to recover the file.

Use File Manager (Raspberry menu – Accessories – File Manager) to find the files you've extracted.

Safely remove the USB memory stick

Click the "Eject" symbol at the top-right of the desktop, then click the smaller eject symbol to the right of your listed USB memory stick.

You should see the message "It is now safe to remove your device". You can remove the USB memory stick from the Raspberry Pi now. You can also eject it from the command line – learn about the  command.

Don't keep your backups near your Pi. If your Pi gets lost, stolen, destroyed by fire or eaten by zombies, you don't want your backups to go missing too!

Grandparents, Aunties and Uncles' houses are a really, really good place to keep your backups. Consider having two memory sticks – one to keep at a relative's house, and one to keep in your house. Swap them over every time you visit!

Migrating to a new release of Raspbian
Every two or three years, a completely new release of Raspbian happens. For example, in 2017 we moved from Raspbian Jessie to Raspbian Stretch.

Raspbian is the operating system that runs on most Raspberry Pis. It handles the desktop, most of the programs, the command line and much more. Raspbian is based on Debian GNU/Linux, which names releases after characters from the Toy Story films. Debian is short for "Debra and Ian"; Ian Murdoch created it, and Debra was his girlfriend.

Whilst it is technically possible to upgrade an existing SD card to a new release, it's prone to mistakes, so our advice is to:

 * Back up all your files to a USB stick, as we showed previously in this tutorial
 * Download the new release image, and burn it to a new SD card, as per the instructions here: https://www.raspberrypi.org/documentation/installation/installing-images/README.md
 * Restore your files from your USB stick backup, as per this tutorial.

Other top tips
If you have both a Pi Zero or Pi 1, and a Pi 2 or a Pi 3, do all your updates on the Pi 2 or Pi 3. It will be much, much faster. You can usually swap the memory cards between them (unless your Pi 1 has a really, really old version of Raspian – in that case, it won't work on the Pi 2/3 but it won't cause any harm, just put it back).

Using an Ethernet network cable directly plugged into your broadband router can often make downloading updates much faster than WiFi. You can buy a simple CAT5e Ethernet cable from Poundland and other bargain shops, just don't pay more than £5.

Files
The original PDF for this tutorial is available on Wikicommons: