text:
Talk:Computer Programming/Hello world/Archive 1

Articles for Deletion debate
This article survived an Articles for Deletion debate. The discussion can be found here. -Splash talk 23:01, 3 March 2006 (UTC)

Hello World!
Should there be some consistancy with the use of commas in this Hello World program listing? It's about half and half currently. 208.20.220.76 21:49, 31 March 2006 (UTC)
 * Aye, it would be a little nicer if they were consistent. The hello world program article says it prints "Hello, world!" (note the comma and lowercase 'w') so I suppose that's the format that should be used. Unless anyone has any objections I'll make the examples consistent. I'll wait a few days or so to give anyone time to add their input to this talk topic. Icey 04:59, 10 June 2006 (UTC)
 * I agree, both on the need for persistency and the proposed format. Denis Kasak 09:32, 11 June 2006 (UTC)
 * Hello, world! I mean, err, I've finished updating lots of entries that were either obvious, I could find other examples or the web or I took an educated guess at. There's a few left, especially ones like calculators and ones where everything was in uppercase. I'll leave those to someone with more knowledge on the language. Icey 00:41, 17 June 2006 (UTC)
 * There are numerous languages from older systems or on calculators that don't have punction marks and/or only have one case (the program I contributed for the HP 33s is one such example). Nothing to be done for them.  Bfootdav 17:43, 7 August 2006 (UTC)

M# Fictional Programming Language
Was linked to the page (the letter) "M". Obviously unintended. I've skimmed Alphabetical list of programming languages and List of esoteric programming languages, with no sign of it. Does anyone else know anything about it? I'm presuming it is/would be known as M Sharp, right? samwaltz 11:57, 30 June 2006 (UTC)

 * Could it be a typo for  M4 ?         A   4   and a   #   are next to each other on a keyboard.   -- GerardSchildberger (discuss • contribs) 17:55, 15 October 2018 (UTC)

Practical, or comprehensive?
Should the intention of this page be practical, or comprehensive? I'm considering adding examples for two other languages, but one is limited in scope and the other is so obscure it's esoteric.

If practical, such languages don't need to be included on the page.

If comprehensive, then we should endeavor to add every known language to the page.

--71.156.105.38 17:21, 27 July 2006 (UTC)
 * Esoteric? Is it this esoteric? Otherwise I think it'll be fine. The practicality of this list not inversely proportional to the number of entries or anything. Shinobu 14:18, 3 August 2006 (UTC)

 * A-ha! At least one of them belongs there. Thanks for the pointer. --71.156.105.38 17:31, 3 August 2006 (UTC)

VB example
The following code will not work: Sub Main Print "Hello World!" End Sub is in VB a graphical method to draw text on a form. It can be used without object qualifier only from form code. This example will yield an error like "Method not valid without suitable object". Shinobu 14:05, 3 August 2006 (UTC)

VB console
I removed the VB version from the console section, since it's a GUI hello world. You can actually write a console app in VB, but it's a lot of work: and serves more as a demo of arcane console API functionality than as a demo of VB coding. Shinobu 13:48, 5 August 2006 (UTC)

Wouldn't a GUI example be OK? I think an example using MessageBox or a form would be just fine, considering that getting the GUI doesn't require any code.

However, VB has changed significantly with the release of .NET, so we might need to list code for two separate versions. --Brilliand 03:16, 26 March 2007 (UTC)

Compiled sizes?
Could anyone include the sizes of the compiled executables, please? :-) 84.164.87.169 15:27, 13 August 2006 (UTC)
 * I doubt that would be a useful statistic; it would depends heavily on the implementation (the compilers, librariers, etc.), the options used for compiling the program and even the architecture for which it was compiled. With all that considered, it would hardly have any encyclopaedic value. Denis Kasak 16:51, 13 August 2006 (UTC)

Family BASIC Help?
When I tried the general code, all I get are zeros. Anyone know why? -- Lzer 22:30, 17 September 2006 (UTC)

Thai
ใช้ ไทย.ท

เริ่ม แสดง("สวัสดี,ชาวโลก!"); จบ

Missing: Small-C
Anyone who can may enter a small-c version of hello world.

ASCII
Isnt the "ASCII" entry irrelevant to this page? It should be deleted

 * I agree that it is a bit out of context considering that the topic is hello word programs; however, it is under the section of Media Formats and I think information about how the same data is represented in various formats is interesting and informative.
 * Perhaps another "book" or seperate topic should be created for this and reference in the related topics section. Johnvms11 (talk) 17:38, 25 March 2008 (UTC)

hi,

can any one add example of silverlight xaml and wpf and other winfx3 technologies

SilverLight Is missing
can any one add example of silverlight

silverlight xaml and wpf
and other winfx3 technologies

sed part is incorrect

 * sed(note: requires at least one line of input)

sed -ne '1s/.*/Hello, world!/p'

in fact `sed` requires no code for print anything:

sh$ sed <<"" > hello world! > or $ echo 'Hello world!' | sed

Offsite adoption
I expect it isn't the norm, but before anyone decides to throw it out, I'd be open to accepting it into RosettaCode.org. (RC isn't a wikibook, but rather specifically a programming chrestomathy website.) This is the page that inspired me to create the site. --Short Circuit (talk) 04:36, 20 April 2010 (UTC)

C++ hello world
The first C++ statement:

is both undesirable (due to no tabulation) and wrong (as it does not include the header ), yes? It almost implies that putting the code all in one line means you don't have to include the header! I will remove this statement completely, unless anyone has any objections (which I don't expect).

And also, I think it is probably appropriate to have just this one version of the program:

as it contains the keywords "using" and "namespace" which are more likely to be used than "std::" and distinguish it more from C. Would anyone agree?

--Adamd1008 (talk) 22:26, 15 July 2010 (UTC)

C version doesn't need return 0
C89 requires the return 0, while C99 states that hitting the closing } of main is equivalent to return 0;. C99 has been around for over a decade now, and is the only current C language. I'm of the mind to keep the return 0;, since C89 is still probably used in places, and C99 has had slow adoption. 216.188.252.240 (talk) 02:07, 10 October 2010 (UTC)

Filename extensions?
60.241.153.201 (discuss) 15:00, 31 August 2011 (UTC)

Proposed split defeats the comparison purpose
The purpose of the Computer Programming/Hello world article is to be able, at a glance, to compare comprehensively the structure and syntax of every language capable of displaying/outputting the string "Hello, World!"

A wikibookian has proposed the article be split. If the article is split, that would defeat the purpose of the collection on this page. The other wikibook articles which reference this article all make reference to the comprehensive comparison. I propose the split tag be removed and the article left intact. IE: delete Disneywizard (discuss • contribs) 20:59, 16 April 2012 (UTC)

I propose that this article be deleted and merged into Wikipedia's list at http://en.wikipedia.org/wiki/Hello_world_program_examples which is a lot cleaner, though it has far less examples. And change all links pointing here to point there. Because this page at its current state is a mess. Waterfalls12 (discuss • contribs) 02:40, 24 April 2012 (UTC)

 * This is not an article but a page of a book. I agree that it is a mess and even that it may not be useful if not properly utilized but we should also consider that all content in Wikibooks is a work in progress. --Panic (discuss • contribs) 02:46, 24 April 2012 (UTC)
 * All Wikimedia projects are works in progress. I think that a subdivision of languages into groups like

 * curly-braces languages, functional languages, object-oriented languages, procedural languages etc., or
 * with a menu containing the letters of the alphabet, would make the page shorter and clearer.

In the first splitting suggestion, the examples should be in a separate place so that the example of a language that is both functional and object-oriented, like C++, should reference the same example to avoid repetitions. Sae1962 (discuss • contribs) 08:56, 30 August 2012 (UTC)

ANSI C and C are identical
What's the point in having both? They are literally identical, and the C example would of course be to the ANSI standard by default.. it seems ridiculous to have both. 2607:FEA8:8460:63B:5C54:6CDA:E95:4268 (discuss) 05:10, 24 February 2018 (UTC)

Added English Template Toolkit example
Hello, I added a English Template Toolkit example, check out!

[% GET "Hello world!"; %]

Thanks! MihaiBooks101 (discuss • contribs) 11:17, 26 December 2022 (UTC)

Added a "@" Batch example
Hello! I just added a "@" Batch example, check it out!

@echo Hello World! pause exit

Thanks! MihaiBooks101 (discuss • contribs) 11:30, 26 December 2022 (UTC)


text:
Neuroscience/Cellular Neurobiology/Synapses

Synapses refer to the cell-cell interaction usually found among neurons, immune cells, and epithelial cells. In order to function properly, some synapses require adhesive proteins such as the neurotransmitter receptors. There are two types of synapses and the difference is based on how the signal is transmitted from one cell to the next. In the electrical synapse, there is a connection between the cytosol of one cell and the next, where as in the chemical synapse, the action potential is converted to a chemical signal which is then converted to an electrical signal in the post synaptic cell.

Electrical Synapses
Electrical synapses are formed when two cells meet and form gap junctions in between their membranes. The gap junctions are formed from protein subunits called connexins, and six of these connexin subunits will form a trans-membrane protein named connexon. When two of these connexons join, one from the membrane of each of the two cells, a gap junction is formed, and there is a connection of the cytosol. An electrical synapse consists of many of these gap junctions. Because these gap junctions connect the cytosol of the two cells, there is an electrical continuity between the cells that facilitates instantaneous communication in both direction (although sometimes one direction is favored.) The connection of the cytosol makes the synapse fail-proof and also gives multiple neurons that signal each other via electrical synapses the ability to synchronize rapid activity. Also, cells that share cytosol, such as those connected by two electrical synapses, can share chemical signals as well, so a cell growth signal picked up by one cell might be found in a neighboring cell. Electrical synapses are found in the highest proportion in invertebrate nervous systems. They are also found throughout the mammalian central nervous system but in a lower ratio to chemical synapses.

Chemical Synapses
In contrast to the quick electrical cytosolic transmission of the electrical synapse, the chemical synapse distinctly separates the cytosol of the two cells. Action potentials that arrive in the axon terminal cause the release of chemical signals which then cause changes in membrane potential on the post synaptic membrane.

Axon Terminal
In the axon terminal, neurotransmitters are first stored in a large 'pool' called the endosome. As the demand for neurotransmitter goes up, the membrane of the endosome buds to form vesicles containing an amount (this amount doesn't vary much) of neurotransmitter. These vesicles will then move closer to the active zones, the places where the neurotransmitter is released, in a synapse, waiting to be used. Once a vesicle has been used, it will be taken back to the membrane of the endosome and used again.

Presynaptic Membrane
The presynaptic membrane has many vesicles bound to it, containing neurotransmitter ready to be released. When an action potential arrives at the presynaptic membrane, voltage-gated calcium channels open, allowing an influx of calcium. Calcium ions will bind to proteins on the membrane of the vesicles and cause it to move closely to and fuse with the presynaptic membrane. As this continues, the vesicle will open up, releasing its contents into the synaptic cleft. When this is finished, the proteins surrounding the vesicle in the presynaptic membrane will cause the membrane to bud inside the cell, essentially reforming the vesicle and allowing it to return to the endosome.

Synaptic Cleft
In between the presynaptic membrane and the postsynaptic membrane is a space 20-50nm wide filled with fluid and structural proteins that hold the two synaptic membranes together. This is the synaptic cleft, and it is the space that the neurotransmitters diffuse through to bind to receptors on the postsynaptic membrane after being released.

Postsynaptic Membrane
This refers to the area that receives the chemical signals from a presynaptic membrane. So, axons are found to synapse (that is, adhere and signal) on dendrites, but also the membrane on a cell body or other axon terminal. The postsynaptic membrane will have receptors which the neurotransmitter can bind to. Depending on the type of receptor, a channel will be opened quickly or further chemical messages will be generated, affecting the synapse over longer periods of time.

Neuronal Synapse
Neurons utilize synapses exclusively for cell-cell interaction. Whenever a stimulus triggers an action potential, a neuron transmits the signal to the next through their synapses. First, an action potential reaches at the presynaptic membrane (axon terminal), where it contains several neurotransmitters packed in synaptic vesicles. The action potential triggers the release of the neurotransmitters to the synapse as the synaptic vesicles diffuse into the cellular membrane. The neurotransmitters released to the synapses reach the neurotransmitter receptors located on the postsynaptic membrane (dendrite terminal). This triggers an action potential at the postsynaptic membrane which will be transmitted to the next neuron and so on. The following diagram displays the overall picture of a neuronal synapse.

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


text:
Wikijunior:The Elements/Magnesium

What does it look, feel, taste, or smell like?
Magnesium as a metal is silver-white and lightweight. It is pictured here in a stick, but it also comes in powder form. Surprisingly, it can be bought by the average person, usually for medical reasons. Magnesium is also softer than other metals. If you've ever tried to bend a metal spoon (these are usually made of steel, a very strong metal) you probably couldn't. If that same spoon was made of magnesium, you could easily bend it. It doesn't smell like anything on its own, because metals don't really smell like anything. The smell you think of when you think of metals is because of a reaction between the oil on your hands and the metal.

How was it discovered?
A French-Scottish physician and chemist named Joseph Black discovered magnesium in 1755 in England. Sir Humphry Davy electrolytically isolated pure magnesium metal in 1808.

Where did its name come from?
Magnesium gets its name from the Greek word for a district in the Greek region of Thessaly called Magnesia.  Did You Know?
 * Magnesium is the eighth most abundant element.
 * 1.3 kilograms of magnesium can be found in every cubic kilometer of sea water.
 * Magnesium is used in marine flares and fireworks to produce a brilliant white light.

Where is it found?
Magnesium as a pure metal is not found in nature, because it is very reactive and doesn't like to exist on its own, but it is very common as an ion in various compounds as it is more stable in this form.

Magnesium is very common on earth and in seawater.

Magnesium can be found in green vegetables, especially darker green ones. This is because chlorophyll, the green pigment in plants, contains magnesium.

What are its uses?
Magnesium is necessary for all living cells. It is used to help our body make molecules like DNA. Plants also use magnesium as a part of chlorophyll for photosynthesis.

Magnesium burns very bright white. In the old days, magnesium could be used as a light source and was used to create the flash for cameras. Now, it is used in some fireworks. It is also used to make incendiary bombs.

Since magnesium is one-third lighter than aluminum, it is combined with other metals to make missiles and aircraft. Many automakers use magnesium alloys in their vehicles. Some car batteries use magnesium.

Magnesium oxide (MgO), also called magnesia, is used in some stomach antacids. Magnesium is also used to make epsom salts, which is used to treat minor skin abrasions.

Magnesium is also used for construction. It is known as one of the lightest metals that can be used for construction.

Is it dangerous?
Magnesium is highly flammable, and the bright light it gives off can damage the eyes. Never place it in fire, as it burns at an EXTREMELY high temperature, and never throw it into an acid which might cause the release of flammable hydrogen gas. Keep away from children.

title: Wikijunior:The Elements/Magnesium


text:
Beginner's Guide to Interactive Fiction with Inform 7

The design and implementation of interactive fiction (i.e., text-based computer games) began in the 1970s. At that time, games were written in general-purpose programming languages by professional programmers and/or computer science majors in universities.

In more recent years, specialized languages have been developed for authoring interactive fiction (called "IF" for short). These languages, and the compiler software that they use, are available as free downloads. IF programming languages are widely used by hobbyist programmers, many of whom have little or no training in computer science. However, most IF languages closely resemble traditional programming languages such as C. As a result, they can be rather intimidating for those who have no experience in programming.

Inform 7 (website) presents an entirely new approach to IF authorship, one that has proven to have wide appeal to new authors. In Inform 7, the author can write in a manner that closely approximates normally written English. Certain special conventions have to be followed, and Inform 7's version of English is less tolerant of grammatical ambiguities than English itself. This is because, in the final analysis, Inform 7 is still a programming language. Computer programming requires precision after all.

Nonetheless, Inform 7 is an important development in IF. Inform 7 gives people who have never done any programming and are only marginally computer-literate a great set of tools with which to write their own text-based games. This guide is aimed at helping new users learn the language as well as the tools that come with the official app.

The Inform 7 app can be downloaded at its website – which holds multiple additional tools that can help to manage the content and flow of the adventure. Also, there are additional editors for using Inform 7 in that allows people to program via a web browser:

 * Playfic for Inform 7 (exclusively): a good introduction to learning the language without having to download anything, and with an online platform to share creations with other people.
 * Borogrove, another online editor with multiple other languages – another good place to experiment and create with the language, and decide if it's right for you.

Table of Contents

 * /Introduction to Interactive Fiction/
 * /Getting Started with Inform 7/
 * /Designing Objects/
 * /Designing NPCs/
 * /Designing Puzzles/


text:
User talk:Herbythyme

I should be considered inactive on this wiki now.

Meta request
I confirm my request on Meta - thanks -- Herby talk thyme 07:39, 6 May 2008 (UTC)
 * Sorry to see you go, but glad you're around elsewhere. – Mike.lifeguard  | talk 17:36, 6 May 2008 (UTC)

User:Autofinance
Blocked 2 weeks. Red4tribe (talk) 19:47, 13 August 2008 (UTC)
 * Re-blocked infinite, FYI. — Mike.lifeguard | talk 00:51, 14 August 2008 (UTC)

Hi. I'm new. Do you think you could give me hints on writing for this site?--God'sGirl94 (talk) 13:28, 25 February 2009 (UTC)

AbuseFilter
Thanks, I was just off to try and create a new one (I tried to do this last week, but it wasn't working) and saw you had done it already - excellent work! Thanks QU TalkQu 09:09, 15 January 2013 (UTC)

Hi
I'm wondering how can I know if which textbook is open content and which one is not?Trongphu (discuss • contribs) 05:45, 21 January 2013 (UTC)
 * They are all open content, licensed under the Creative Commons (CC-BY-SA 3.0) license and GFDL. Some images may not be licensed for all uses, but all text is. QU TalkQu 14:03, 21 January 2013 (UTC)

Your userpage has subpages
Do you want those deleted as well? QuiteUnusual (discuss • contribs) 09:01, 12 June 2013 (UTC)

title: User talk:Herbythyme


text:
Wikibooks:Guidelines for class projects

Wikibooks is a community for collaboratively writing textbooks and manuals. As such, it is uniquely suited for use in classroom collaborative projects. Several such projects have occurred on Wikibooks in the past, most with great success. Some of those projects are listed at List of class projects.

Starting a Class Project
Typically, when starting a class project, it is important to define the scope of that project: What will be the title of your book(s)? What kind of materials will your book(s) include? How much depth will your book cover? What is the target audience? All these questions should probably be answered before your class starts working, to help keep things orderly and organized down the road. If class members are working on different chapters simultaneously, it is important to define the layout of each chapter, and whether there are sections (such as a glossary) that you would like each chapter to include.

Also, there are legal aspects to consider. All text, images, and other materials on Wikibooks are released under the terms of the GNU Free Documentation License version 1.2 and the Creative Commons ShareAlike 3.0 license, and all participants in your project must agree to release their contributions under that license. Groups and individual students may wish to cross-license their contributions under the GFDL and another compatible license, and some users may wish to release their contributions into the public domain. These are all acceptable options as well.

If your group is not going to be writing a textbook, or if it is going to be incorporating additional types of learning materials in addition to a textbook, it might be a good idea to consider organizing your project on Wikiversity. Wikiversity is an online community, related to Wikibooks, that focuses on learning new ways to create materials for classrooms of all kinds.

Register your participants
All participants in the project, especially the instructor or the project leader, should register usernames here on Wikibooks. Username accounts provide each user with a user page where they can write personal profiles, a user talk page where the user can receive messages from other users, and a contribution history, where the contributions made by that user are recorded. Course instructors have found the contribution history pages to be of particular interest, because those pages lay out precisely how much work a particular student has done on the project. It is important to note that the user's contribution history will not indicate whether the material added was original work, or if it has been copied and pasted from another source. For this reason, the instructor may need to spend a significant amount of time testing student contributions for plagiarism. Other Wikibooks editors may check material that looks like it was copied and, if copyright violations are found, the students may be blocked from future editing.

List your project on List of class projects, so that the Wikibooks community can follow your project, and provide you with extra help. Be sure to include information about who your participants are (a class, a study group, etc), and what your goals are (to write a new book, to improve an old book, etc).

Grading
Wikibooks cannot tell you, as an instructor of a class, how to grade your own students. However, other class instructors have left feedback about their experiences, and we are going to share some of those tips with you:

 * 1) If everybody is working on a different page/topic, it can be hard to test and grade the class as one unit. However, if the entire class is working on only a single page/topic at once, there might not be enough work for everybody to contribute equally. It can also be difficult to teach the class from a textbook that the class is writing.
 * 2) Individual grading can be completed from the user contributions page. If students create login/usernames that use specific student information (use some standardization, for example last name and student number, the goal is for the instructor to easily know exactly what the student's login/username is) this is very useful in larger classes. The contributions page http://en.wikibooks.org/wiki/Special:Contributions/username page lists the time (may not be your time zone) and headings of each edit made while that student was logged in. Students can also use the minor edit check box to signify edits that are not substantial, and the edit summary box to add details on how the edit meets some assignment evaluation criteria. Suggest that students review their 'My Contributions' page while logged in to see what edits they will receive credit for.
 * 3) Students may focus their attention on their own work too much! Encourage students to review, edit, and revise the material written by other groups/students. Peer review can encourage students to learn subjects besides what they are themselves working on, and it can also produce positive feedback that will drive the creative process further.
 * 4) Set specific guidelines, deadlines, and grading criteria out for your class. If everybody stays on the same pace, it will be easier to measure all the students against the same measuring stick. Don't hesitate to list your timeline and grading criteria on the talk pages of your book, as a reference.
 * 5) Make sure that students are learning, as well as simply writing. While the two processes are related, they are certainly not synonymous. Contributing to Wikibooks can probably not take the place of traditional classroom tasks, such as tests, quizzes, and homework.
 * 6) Use the talk pages of your book, along with the user talk pages of your students, to communicate with each other, and to work to improve the content of your book. Ask students to add important pages (especially the user talk page of the class instructor) to their personal watchlist. This way, when people leave messages, everybody in the class can be alerted about it.

If you have additional comments that you feel are relevant and helpful, please list them on the discussion page.

Wikibooks Contributors
Wikibooks is run by a group of regular volunteers, authors, editors, and other contributors. These people would like to help your class project, and will likely be in contact with your members to give you a warm welcome and some friendly advice. Also, if you have any questions or problems the sysops (administrators) tend to hang out in the Reading Room. Sometimes, the community may even have a question for you or one of your students, and it's generally polite to answer them. Plus, if a student does something a little strange, a sysop or other editor might ask for an explanation before "fixing" it. If you don't want your edits "fixed" make sure to explain yourself when asked. And remember, as a contributor you are also part of our community!

Open-Content
Wikibooks is open-content, which means that any user is free to edit almost any page at any time. This means that if your class is working on a book, other users from around the world may come in to help edit your pages as well. Many times, such random edits are small fixes in spelling, grammar, or formatting, but sometimes a contribution may be large and will affect your entire project. Besides blatant vandalism, edits made by other users in good faith should not be deleted or restricted.

To distinguish between the edits made by your students, and the edits made by other Wikibookians, use the history pages. The history pages maintain a listing of every edit to a particular page, in addition to the user who made the edit, and the time it was made. You can access the edit history of any page by clicking the "history" tab at the top of the page.

You and your students should also feel free to edit other books here on Wikibooks, or to participate beyond the term of your class project.

Policies and Guidelines
Wikibooks also has a series of policies and guidelines in place to help govern the actions of its users. It is important, as an instructor of a class, to familiarize yourself with some of these policies, because they could affect your project in a profound way. Here are some important policies:

 * 1) Copyright infringement is taken very seriously. Materials that violate copyright could be deleted without warning. Make sure your group understands how to avoid such troubles. See Also: Copyrights.
 * 2) Vandalism (editing in a malicious way), profanity, and other childish behavior is not well tolerated here, and users who act in these ways could become blocked from editing at Wikibooks. If you would like to test the wiki software, you can make any edit you want to the Sandbox page.
 * 3) Content must maintain a neutral point of view. Wikibooks cannot be used as a soapbox for promoting a particular religious, political, or other viewpoint.
 * 4) Wikibooks is not the correct place to conduct Original research. All content on Wikibooks should be verifiable, and properly referenced (when possible).
 * 5) All Wikibookians are encouraged to be nice to each other. Treat this more like a rule than a suggestion.

If one of the students in your class violates these policies, it is possible that they could be blocked from editing Wikibooks, at least temporarily. This is unlikely, but it is not unheard of. Make sure to talk to your students about the importance of following the rules.

What is Wikibooks?
Wikibooks is a project where the community members (known as Wikibookians, colloquially) collaboratively write open-content textbooks on a variety of different subjects. Wikibooks has a number of sister projects, all of which operate under the banner of the Wikimedia Foundation (WMF). Some of our sister projects are:

 * Wikipedia, a free encyclopedia.
 * Wikiversity, a collaborative learning environment. See also: Wikiversity:School and university projects.
 * Wikisource, a repository for free source text.
 * Wiktionary, a free dictionary/thesaurus.

If your project doesn't fit on Wikibooks, perhaps it will fit on one of these other projects.

For further information about the kinds of materials that can be posted here at wikibooks, you can refer to What is Wikibooks.

Finding materials
One of the advantages of working on a Wikimedia project is the vast resources available for developing content.

 * If you would like to use content from Wikipedia, you can request an import of articles for use as the basis for a project. Keep in mind that a Wikibook should not just be a collection of Wikipedia articles, but instead should have a central narrative.
 * If you are looking for images (from photos to comic strips), try searching on Wikimedia Commons, which has free images on thousands of topics. Images located on Wikimedia Commons can be used on Wikibooks without any hassle. There is no need to download or upload the images to wikibooks.

Get help when you need it
Wikibooks is a big place, and there are plenty of questions about how to do this, or why things are done like that.

If you would like to browse some of the various tools and pages that we have to offer, you can visit the Community portal. That page has a number of resources available, including help resources, and spotlights for particular projects.

For a complete overview of all policies and guidelines in effect on Wikibooks, please see Policies and guidelines.

For help requiring an administrator, including dealing with vandalism, see:
 * Administrators' noticeboard

If you need help with the wiki text markup, you can read:
 * The help pages.
 * The Manual of Style.
 * meta:Help:Displaying a formula (for writing mathematical equations)

If you have any other problems, questions, comments, or suggestions, you can always leave a note at the Staff lounge. That page is well-monitored for edits by the users here, and you should get a response quickly.

Become Part of the Community
Just because you are working on a class project doesn't mean you can't explore all the other projects that Wikibooks has to offer. There are many books on many subjects here at Wikibooks, and all contributors are encouraged to get involved.

When your class project is over, your user accounts don't disappear either. After the conclusion of your project, you are more than welcome to continue editing your book, or even move on to other books or projects. If you find another book you or any of your group members would like to edit, feel free to dive right in and contribute to them as well. Wikibooks is an open community, and our success is dependent on the contributions of users like you.

title: Wikibooks:Guidelines for class projects


text:
Proteomics/Protein Separations- Electrophoresis/Techniques

Gel Electrophoresis

Gel electrophoresis is a group of techniques used by scientists to separate molecules based on physical characteristics such as size, shape, or isoelectric point. Gel electrophoresis is usually performed for analytical purposes, but may be used as a preparative technique to partially purify molecules prior to use of other methods such as mass spectrometry, PCR, cloning, DNA sequencing, or immuno-blotting for further characterization. (Wikipedia)

Separation
The Gel is created by the use of a matrix molecules stacked together to provide separation of molecules. Gel are normally crosslinked polymers normally made of either agarose gel or polyacrylamide. Dependent on the substance being run the composition, pourous nature, and percentage of gel will be varied to provide proper separation. This separation using acrylamide is normally done on proteins, DNA, RNA, oligonucleotides and other smaller molecules due to its less pourous nature. Using different concentration and compositions of aryclamide provide a thicker or thinner matrix which will separate based on size and charge. Separating larger nucleic acids (Large # of nucleic bases) is normally done with agarose gels, gels made from seaweed extract. Again cases of concentration and composition can vary the results of the distance a sunstance travels on a gel. Techniques such as use of stacking gels are employed where the top half of a gel may be more concentrated than a lower portion to provide further separations.

Electrophoresis refers to the electromotive force (EMF) that is used to push or pull the molecules through the gel matrix; by placing the molecules in wells in the gel and applying an electric current, the molecules will move through the matrix at different rates, towards the anode if negatively charged or towards the cathode if positively charged. (Wikipedia) The voltage as well as the time depend on the size of the gel and the type of sample. Caution must be taken to not run the samples too long or the samples may run off the gel. Caution must also be taken with the voltage, voltage too high may burn the gel or damage the samples.

Staining
When the gel electrophoresis has completed its run the gel is stained to allow for the bands of sample to be seen and analyzed. Stains that are normally used are Ethidium Bromide, silver, or coomassie blue dye depending on the sample. The gels are cafefully removed and placed directly into staining solution where it will sit overnight to allow for proper staining. Once fully stained bands should appear if samples were run correctly along with a molecular mass marker which should be placed on both ends of the gel to provide proper analysis. Visualization can be done by the naked eye as well as under a UV light to provide easier visualization.

Analysis
Bands are then compared to those of the known molecular mass marker on the sides of the gel to determine the approximate mass of the substance as well as separate out bands. A sample that has several bands coming from a single sample can indicate an impure sample. Further analysis can be done on proteins by removing the separted sample from the gel by cutting the band out and using In-gel digestion to remove the protein from the gel for further analysis.

Nucleic acids
In the case of nucleic acids, the direction of migration, from negative to positive electrodes, is due to the natural negative charge due to the sugar phosphate backbone of a DNA molecule. Double-stranded DNA fragments are normally long stranded molecules, therefore their migration through the gel is relative to their size of DNA molecules and amount of bases. Single-stranded DNA or RNA tend to fold into tertiary structure due to their wearer single backbone and travel through the gel in a complicated manner. DNA can be denatured by breaking hydrogen bonds and renatured to provide easier and more accurate results frm the gel.

Proteins
Proteins vary on many different levels in comparison to DNA. Protein can have different charges and complex shapes, primary, secondary, tertiary, and quaternary structure that make migration through the gel have extremelyt different rates when placing a negative to positive EMF on the sample. Due to these complex structures proteins are usually denatured, or broken down to simple primary structures in the presence of a detergent such as sodium dodecyl sulfate/sodium dodecyl phosphate SDS/SDP which coats the proteins with a negative charge. The amount of SDS bound and used is relative to the size of the protein, this allows the protein to have an overall negative charge and allow for proper migration.


text:
Beginner's Guide to Interactive Fiction with Inform 7/Getting Started with Inform 7

Your First Game
Interactive fiction games are written in a programming language, of which there are many. Inform is one of them. The documents written in the language that define the game are called source code. Unlike previous versions of Inform, version 7 uses English to describe IF games. Therefore, as a convention throughout this book, we will refer to source text or just source instead of source code.

When you first start Inform and create a new project, you are taken to a dual-pane interface, with each pane having multiple "tabs" at the top. One of these tabs is "Source." The Source tab is where you create the game.

First, we begin with the simplest possible game: a single room into which the player is dropped.

"Ruins Remixed" by Brandon Felger

When play begins:

say "[italic type]You are once again lost in a jungle far from home. You are ready to give up and go home, disappointed in yet another failed archaeological expedition. Just as you decide to turn back to camp, you suddenly stumble upon something...[roman type]".

The Forest is a room. "You stand in a clearing in the deep jungle. Obscured by centuries of overgrowth and dim sunlight is a ruined temple of some sort. Whatever details there may have been on the stone blocks have long since been worn away. There is a single, solitary entryway leading downward."

Click the "Run" button. The right-hand pane switches to the "Game" button. Try some various English-language commands:

''You are once again lost in a jungle far from home. You are ready to give up and go home, disappointed in yet another failed archaeological expedition. Just as you decide to turn back to camp, you suddenly stumble upon something...''

Ruins Remixed

An Interactive Fiction by Brandon Felger

Release 1 / Serial number 061016 / Inform 7 build 3Z95 (I6/v6.31 lib 6/11N) SD

Forest

You stand in a clearing in the deep jungle. Obscured by centuries of overgrowth and dim sunlight is a ruined temple of some sort. Whatever details there may have been on the stone blocks have long since been worn away. There is a single, solitary entryway leading downward.

>examine temple

You can't see any such thing.

>go north

You can't go that way.

>inventory

You are carrying nothing.

>say hello, sailor

(to yourself)

There is no reply.

Examine the source above, and the produced output. The “when play begins” paragraph is known as a rule. The text preceding the colon is the condition that triggers the rule. In this case, when the game is initially run. The text after the colon is the action triggered by the rule. Here, we display a bit of a prelude explaining the story, since interactive fiction is always, in a sense, in media res.

The first room defined is the one we start in. We define the room simply by stating it is so. The quoted text immediately after is the text displayed when the player is in the room. I call it the “LOOK description” since this is what is displayed when a player uses the LOOK command. This convention will also apply to objects, as we will see later.

Introduction to Objects
Currently, we are completely unable to interact with the game world in any meaningful way. Let's introduce an object the player can manipulate:

A mushroom is here.

This single line in the source introduces a host of new options for the player:

Forest

You stand in a clearing in the deep jungle. Obscured by centuries of overgrowth and dim sunlight is a ruined temple of some sort. Whatever details there may have been on the stone blocks have long since been worn away. There is a single, solitary entryway leading downward.

You can see a mushroom here.

>take mushroom

Taken.

>examine it

You see nothing special about the mushroom.

>eat it

That's plainly inedible.

>drop it

Dropped.

Not everything we can do with the object is meaningful at this point. For one thing, the mushroom can't be meaningfully examined, and it can't be eaten. Let's make it edible, and add a LOOK description (my own term for the text that is displayed when the player enters the LOOK command) and an EXAMINE description (text that is displayed when the players enters the EXAMINE or LOOK AT command on the object):

A mushroom is here. It is edible. "A polka-dotted mushroom pokes out of the moist soil. It is possibly scrumptious." The description is "Upon further examination, you decide that, while possibly scrumptious, it is also possibly a toadstool."

Inform 7's syntax with respect to what I'm calling LOOK and EXAMINE descriptions are somewhat ambiguous in the source itself. If you say “the description is...”, then you are specifying the EXAMINE description. Now let's run the game:

Forest

You stand in a clearing in the deep jungle. Obscured by centuries of overgrowth and dim sunlight is a ruined temple of some sort. Whatever details there may have been on the stone blocks have long since been worn away. There is a single, solitary entryway leading downward.

A polka-dotted mushroom pokes out of the moist soil. It is possibly scrumptious.

>take mushroom

Taken.

>examine it

Upon further examination, you decide that, while possibly scrumptious, it is also possibly a toadstool.

>eat it

You eat the mushroom. Not bad.

Rules for Doing Stuff
Notice that only one of the printed responses to our commands was dictated by our source: the response to the EXAMINE command. Any responses we do not define are “filled in” with default stock responses. We can change the response for taking the mushroom thusly:

After taking the mushroom:

say "You deftly snap the mushroom's stalk, and pluck the hapless fungus from its natural habitat."

After dropping the mushroom:

say "You discard the abused mushroom to the ground like a used facial tissue."

>take mushroom

You deftly snap the mushroom's stalk, and pluck the hapless fungus from its natural habitat.

>drop it

You discard the abused mushroom to the ground like a used facial tissue.

Notice that we create rules to override the default messages for these commands. Let create another, more complex rule for the mushroom:

After eating the mushroom:

say "You pop the scrumptulescent mushroom treat into your mouth. It tastes like fungal-flavored candy. The gastronomical delight turns out to be a toadstool, and you succumb to its choking, asphyxiating aftertaste.";

end the story saying "You have died".

>eat it

You pop the scrumptulescent mushroom treat into your mouth. It tastes like fungal-flavored candy. The gastronomical delight turns out to be a toadstool, and you succumb to its choking, asphyxiating aftertaste.

*** You have died ***

In that game you scored 0 out of a possible 0, in 2 turns.

Would you like to RESTART, RESTORE a saved game or QUIT?

>

Yes, I know “scrumptulescent” isn't a word, but it should be. Notice how our rule uses some different punctuation than the previous rules. We use a semicolon after each source command until we reach the last one, which we end in a period (.). The period means that we are finished with the rule. As a mnemonic device, it helps to call the period a “full stop” like non-Americans do. A full stop ends a rule.

Now, it's not really fair that we have such a plain, obviously edible item with only the scantest warning of its lethality. Everyone hates insta-kill plot devices. Let's give the player a sporting chance:

A mushroom is here. It is edible. "A polka-dotted mushroom pokes out of the moist soil. It is possibly scrumptious." The description is "[if we have not examined the mushroom]Upon further examination, you decide that, while possibly scrumptious, it is also possibly a toadstool. You might want to keep examining it[otherwise]Now that you look at it again, you can see clearly that it is a toadstool; a nasty looking one, at that[end if]."

>examine mushroom

Upon further examination, you decide that, while possibly scrumptious, it is also possibly a toadstool. You might want to keep examining it.

>examine mushroom

Now that you look at it again, you can see clearly that it is a toadstool; a nasty looking one, at that.

Now we have an EXAMINE description that is only used the first time we examine the object. Thereafter, we display a different one. The ability to embed conditional logic into our displayed text is a powerful tool, and one we will use often. Note the use of the square brackets ([,]) to delineate embedded conditionals, just like the font italicization in the “when play begins” rule. Also notice that I manipulated the text so that the “end if” tag comes before the period. That's so I don't have to put another period after the quote. Why? Because a full stop ends a description, too.

Exercise: Notice that if you pick up the mushroom multiple times it says that you have broken its stalk, etc. Use the method above so to give a different response (e.g., "You pick it up again.") after the first time it's picked up.

When I say This, I mean That
In the example above, we revealed to the player that the mushroom is really a toadstool. However, the rest of the text of the game still refers to it as a mushroom. We can fix this with a rule and a “understand” clause, like so:

Understand "toadstool" as the mushroom;

After examining the mushroom for the second time:

now the printed name of the mushroom is "toadstool".

The printed name is what is displayed when we, say, use the INVENTORY command:

>examine mushroom

Now that you look at it again, you can see clearly that it is a toadstool; a nasty looking one, at that.

>take toadstool

You deftly snap the mushroom's stalk, and pluck the hapless fungus from its natural habitat.

>inventory

You are carrying:

a toadstool

The “understands” command means this: “from now on, treat “this” as “that.” In this case, we tell Inform to read “toadstool” as referring to the mushroom; thus the ability to use the word “toadstool” to get the mushroom.

Now, we have a problem. We know that we are looking at a toadstool, right? But we say, when taking the toadstool, that we're “deftly” snapping the mushroom's stalk. That can't be right, can it? How can we tell it to switch to toadstool when we recognize the mushroom as such? We do so by changing all instances of “mushroom” in the display text with “[printed name]”. In the rule we wrote above, the “printed name” property of the object gets changed to “toadstool” after we examine it for the second time. This means that whatever text refers to the mushroom using “[printed name]” changes as well.

Scenery
We now have a very descriptive initial room. We dropped the player in a jungle, near a temple, with an entrance leading down into darkness. So, what can we reasonably expect the player to do? What if the player decides to examine the temple?

>examine temple

You can't see any such thing.

Well, of course we don't see any such thing. Just because we put it in our room description doesn't mean Inform is going to know about it. We have to create an object:

The temple is here. The description is "The stone blocks lie in a large pile, with some strewn about, worn and broken. Vines cover the upper half, while soil, leaves and grasses cover the bottom half. A set of steep stairs goes straight down into darkness."

This gives us one small problem: redundancy.

Forest

You stand in a clearing in the deep jungle. Obscured by centuries of overgrowth and dim sunlight is a ruined temple of some sort. Whatever details there may have been on the stone blocks have long since been worn away. There is a single, solitary entryway leading downward.

A polka-dotted mushroom pokes out of the moist soil. It is possibly scrumptious.

You can also see a temple here.

“You can also see a temple here” is completely superfluous in this case, because our room description already has everything we want to say about the temple at first glance. There is a way to tell Inform not to display an item with this message. We declare it as “scenery”:

The temple is here. It is scenery. The description is "The stone blocks lie tumbled about, as if they were strewn about. Vines cover the upper half, while soil, leaves and grasses cover the bottom half. A set of steep stairs goes straight down into darkness."

This fixes our previous problem with respect to displaying the temple unnecessarily when looking around. Of course, since we want people to see our snazzy new description for the temple, let's force them to examine it by hiding the secret passage until they do. We do this by changing our initial description of the room:

The Forest is a room. "You stand in a clearing in the deep jungle. Obscured by centuries of overgrowth and dim sunlight is a ruined temple of some sort. Whatever details there may have been on the stone blocks have long since been worn away[if we have examined the temple]. There is a single, solitary entryway leading downward[end if]."

If we wish, we can add more scenery for the passage, the trees, the ground, or whatever. Remember that the more you cater to a player's curiosity, the richer and more immersive your game will be.

Exploration
One room does not a game make (unless you are really good). We add a second room thusly:

The Dark Passage is a room. It is down from the Forest. "This passage is dark and cramped. This is obviously not the original entrance to the temple's underground chambers. It continues to the north. A dim shaft of light comes from the exit to the forest above."

We not only define the room, we define its relation to other rooms. In this case, the player would type DOWN or GO DOWN in the Forest to enter the Dark Passage. Inform is smart enough to make this a symmetric relationship, such that you can also go UP from the Dark Passage back to the forest. Notice that we put in our description that a room lies to the north. We're going to have to remember to put another room there.

Exercise: Try to make the rest of the temple!

Treasure: A Kind of Thing
Treasure is a kind of thing. It's true. In fact, treasure is a kind of thing with a value called “worth.” And unless someone gives it worth, it doesn't have any. A Spanish Doubloon is treasure, and is worth up to $1,500.

Hey, wait a sec... that looks like source text!

Treasure is a kind of thing. It has a number called worth. The worth of a treasure is usually 0.

A Spanish Doubloon is here. It is treasure with worth 1500. "A Spanish Doubloon lies glinting on the floor." The description is "This coin is marked as an eight escudo piece. That's a neat $1.5K in your wallet. [if we have not examined the Doubloon]Are there perhaps more pieces o' eight waiting for plundering?[end if]".

That was easy. Using this form, you can declare all kinds of things (I pun!). For instance, you can give objects weight, and give players strength, and compare the two any time a player tries to pick something up.

Exercise to the reader: Make sure that the player can refer to the Doubloon as a coin, gold, “bit,” or anything else you can think of.

Creating New Actions
Why is our archaeologist here? What is he or she here to accomplish? Let's say he's here to photograph the ruins, and all the objects therein. Let's say that, in the first room (the Jungle), he tries to photograph the temple:

>photograph temple

That's not a verb I recognise.

Apparently, Inform doesn't know what “photograph” means. We're going to have to teach it:

Photographing is an action applying to one thing. Understand "photograph [something]" as photographing.

Now we can write rules about photographing various objects in the game. For instance, using the temple in the first room:

Before photographing the temple:

say "*click*[line break]You get a great shot of the temple ruins.";

increase the score by 5.

(To make scoring work, you need to add "use scoring." since it is no longer on by default since 2011.)

Since this action is the objective of the game, we can award points from it.

What we have so far, though, is actually kind of lame. We have to write a rule for every object in the game we want to photograph? What happens if we don't have a rule for an object? Nothing. Let's set up a more generic rule, and have every object have a specific point value. Here's a much more robust system to replace the “before photographing the temple” rule:

Things have a number called point value. The point value of a thing is usually 0. The temple has point value 5.

Check photographing:

if the point value of the noun is 0, say "*click*[line break]You take a picture of a totally uninteresting [printed name]." instead;

if the point value of the noun is -1, say "You already got a picture of that." instead.

Carry out photographing:

say "*click*[line break]You get a great shot of the [printed name].";

increase the score by the point value of the noun;

now the point value of the noun is -1.

Whoah! That's a lot to take in. First, we gave everything in the game a property called “point value,” which is zero unless we specifically say otherwise. We then state that the temple (the scenery object) has a point value of 5. We actually could have put this in the temple declaration itself (“The temple is here. It is scenery having point value 5.”).

Next we “check” the action with the “check photographing” rule. A check rule is where we can stop the action or redirect it if certain prerequisites are not met. First, if the object being photographed has no point value, we do not award points, and inform the player that it was boring. Second, if the object is already photographed (a point value of -1 equating to “already photographed” is a relationship we will establish in the “carry out” rule), we tell the player that we already have a picture of the object.

Finally, the “carry out” rule defines what happens when we photograph an object with point value that has not been photographed before. We display a happy message, award a number of points equal to the object's point value, and set the object's point value to -1 (thus tripping the check rule for -1 point value if we try to photograph the same object again).

Note that in this rule, we are referring to the object as “noun.” We defined “photographing” as “an action applying to one thing.” This “thing” is represented by a noun the player has entered in the command line. In the case of photographing the temple, the “noun” is “temple.” The “[printed name]” embedded value, conveniently, always refers to the printed name property of the current “noun.”

'''Exercise to the reader: Give certain objects in the various game point values, which the player automatically accrues as points for taking pictures on them. Give out 30 points total. Add the line “Maximum score is 30.” near the top of the source. Now the player can track their progress in the game using the SCORE command.'''

Winning the Game
Winning the game is as easy (from the writer's perspective) as losing the game. Let's consider a possible ending:

An ancient trophy is here. It is treasure with worth 1000000 and point value 5. "An ancient trophy lies here, discarded." The description is "This ancient trophy is worth one million dollars!"

After taking the ancient trophy:

say "You take the trophy, an item of such worth that you can now return home, satisfied that you have properly plundered the temple!";

end the story.

In this case, we tie the winning ending to an “after taking” rule on a treasure object. In the game, this object would probably be accessible only through a series of puzzles or challenges.

It's just as simple to customize the end response, to say something such as "You return home a hero."

After taking the ancient trophy:

say "You take the trophy, an item of such worth that you can now return home, satisfied that you have properly plundered the temple!";

end the story saying "You return home a hero".

You can also tie victory to the player's score, if you so wished. Let's say we wanted the player to photograph all the artifacts, and then make it safely back to the forest:

Every turn when the location is the Forest:

if score is 30

begin;

say "You emerge from the ruined temple, having finally taken photos of all the wonderful artifacts therein.";

end the story saying "You return home safely";

end if.

The “if...begin...end if” block is a familiar convention to programmers. Normally we would say, “if this, then do this one thing.” In this case, we're saying, “if this, then do all of these things, starting here, and ending here.” Notice the semicolons at the end of each line up until the full-stop.


text:
XForms/Search flickr

Motivation
Many sites give you a simple way of using a URL to perform a search. REST (Representational State Transfer) is a structured way to access data on the web without having to use a web service. This example program uses an XForm submission using the Flickr REST service.

Warnings
This example does NOT work when you load the form locally from a file system. It must run from a webserver.

To run this application you MUST enable XForms to submit data to other domains. In FireFox this is done by adding the domains to your trusted list. This can be done by going to the FireFox "Tools" menu, selecting Preferences, selecting the "Content" tab, and adding the sites to your XForms white listed sites. In this case the trusted domain is "flickr.com"

Link to XForms Application
Load Form

Discussion
This example shows how to display a different status message based on the state of a submission using the switch/case/toggle elements.

More to Explore
The wikipedia page on REST has a list of public implementations of the REST standards. These should be acessible by most XForms (with the appropriate permissions).

REST API from Amazon S3

title: XForms/Search flickr


text:
User talk:Umeditor~enwikibooks

Yes, start the book :).

(If I can be of any assistance, please feel free to ask. I am an admin.) -- SB_Johnny | talk 15:40, 18 October 2006 (UTC)

Your account will be renamed
Hello,

The developer team at Wikimedia is making some changes to how accounts work, as part of our on-going efforts to provide new and better tools for our users like cross-wiki notifications. These changes will mean you have the same account name everywhere. This will let us give you new features that will help you edit and discuss better, and allow more flexible user permissions for tools. One of the side-effects of this is that user accounts will now have to be unique across all 900 Wikimedia wikis. See the announcement for more information.

Unfortunately, your account clashes with another account also called Umeditor. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Umeditor~enwikibooks that only you will have. If you like it, you don't have to do anything. If you do not like it, you can pick out a different name.

Your account will still work as before, and you will be credited for all your edits made so far, but you will have to use the new account name when you log in.

Sorry for the inconvenience.

Yours, Keegan Peterzell Community Liaison, Wikimedia Foundation 23:49, 17 March 2015 (UTC)

Renamed
 This account has been renamed as part of single-user login finalisation. If you own this account you can |log in using your previous username and password for more information. If you do not like this account's new name, you can choose your own using this form after logging in: . -- Keegan (WMF) (talk) 05:37, 19 April 2015 (UTC)

title: User talk:Umeditor~enwikibooks