Deeded versus assigned: Is parking created equal?
May 12, 2002|By Mark Pearlstein. Special to the Tribune.
Q. What is the significance of a deeded parking space versus an assigned parking space? Why is one better than the other?
In our condominium, we have assigned spaces. Some of the owners who do not drive would like to sell their parking spaces to others who would like to buy them. Because they are assigned, however, these owners cannot sell their spaces.
The board is wondering if there is any sense, value or detriment to going through the trouble to amend the declaration to make the spaces deeded.
A. A deeded parking space is preferable to the individual unit owner, but assigned spaces maximize the chances for all owners to obtain parking.
The term "deeded parking spaces" has two forms: The space is classified as an individual unit with a separate percentage of ownership, or the space is assigned to a particular unit as a limited common element. Developers can maximize their return for the space by selling it separately or including the limited common element space in the unit price.
An assigned parking space generally means that the parking area is part of the common elements, and spaces are assigned by the board through some form of waiting list.
If parking spaces are assigned, residents do not own their space, nor do they have any exclusive right to those areas with their unit. Thus, users of assigned spaces cannot transfer this portion of the property. An amendment to the declaration that will convert the parking area from common elements to limited common element spaces will require approval by a super majority of the owners. Given the fact that only some owners may benefit from an assigned space, this amendment may be difficult to pass.
Q. I recently moved into a condominium unit. Because it is my first experience with this form of ownership, I am a little confused. After reading our declaration and by-laws and rules before buying, it appears that the board doesn't adhere to these documents in some respects.
Non-emergency decisions are being made over the phone, e-mail and later in an open meeting by putting these decisions into the minutes. Shouldn't the final decision be voted by the board at an open meeting when owners are present?
A unit owner sustained damage to his unit caused by a water leak arising from the shut-off valve of his residence. In this case, however, the board used association money to repair his unit damage. Wasn't this the responsibility of the owner?
Recently, we received a budget for the current fiscal year. If our documents state that the budget should consist of estimated common expenses, shouldn't it have listed estimated income from interest, clubhouse rental, late payments, etc.? Under expenses in the budget, there is a line item called "contingencies." Shouldn't this money be placed in certain particular categories such as administrative, operations or maintenance?
A. Generally, all decisions of the board must be made at an open meeting when owners are present. Under the Illinois General Not-For-Profit Corporation Act, condominium boards can also make decisions by unanimous written consent.
Telephone polls are not authorized by the corporate statute or the Illinois Condominium Property Act. While the board members may discuss an issue by telephone, formal written consent of all the directors is required to validate action not taken at a meeting. E-mail is a popular means of communication by boards, but under current law, is not a substitute for decisions at an open meeting.
Owners are generally responsible for all damage to furnishings within their unit. Most declarations provide that units are also responsible for repair and maintenance to any pipes or appliances located solely within and affecting only a particular unit.
Income from sources other than assessments, including interest, clubhouse rental and other miscellaneous items, should be referenced in the budget. The board may create a contingency line item, which generally covers any expense classification that may exceed budget levels.
Q. Help. My condominium association recently changed our cable subscriber. I am not satisfied with the level of programs from the new cable provider and want to return my service to the original company.
However, my association president advised me that all association members must subscribe to the new provider.
This requirement does not seem fair or constitutional. Do I have any recourse?
A. The board of directors has a right to obtain cable television service from a single subscriber as a common expense. Section 18.4(o) of the Illinois Condominium Property Act specifically authorizes a condo board to obtain cable television service for all units and assess owners for this cost.
Board members have the authority to administer the property and determine the services and contractors that will serve the best interests of the association.


text:
Information Brief 2012-40
Promoting a Clear Focus on Academics
A Look at Higher Performing High Schools
A fall 2011 study surveyed teachers and administrators from higher performing high schools and assessed what school qualities educators see as contributing most to student achievement.
Educators at high performing high schools believe the key factors contributing to college and career readiness at their schools include having high expectations of both students and teachers, making academics a number one priority, and maximizing instructional time in core academic subjects. The chart shows that ratings were clearly higher for these school qualities than were typically reported across all 46 qualities surveyed.
School Qualities Promoting a Clear Focus on Academics
|School Quality||In Agreement||Responding Contributes "a Great Deal"|
|Averages across 46 school qualities surveyed||75%||44%|
|This school has an established climate of high expectations for students.||89%||74%|
|This school has an established climate of high expectations for teachers.||92%||68%|
|School administrators make academics the number one priority at our school.||84%||60%|
|Instructional time is maximized in core academic subjects.||88%||71%|
Note: Data come from 272 educators from 63 high performing high schools across 25 states. Schools were selected based on students' growth towards college and career readiness or based on improvement in average ACT scores over time.
_EMAIL_ for more information or to suggest ideas for future ACT Information Briefs.

source: HuggingFaceFW/fineweb-edu


Figure 1.
Schematic representation of a SL band structure used in this study. Minibands for heavy hole levels, εhh,1, minigaps, subbands, and Fermi level, EF, are shown. The zero of energy was considered at the top of the Coulomb potential at the barrier. Horizontal dashed lines indicate the bottom of the first miniband and the top of the second miniband, respectively.
dos Santos et al. Nanoscale Research Letters 2011 6:175 doi:10.1186/1556-276X-6-175
Download authors' original image


text: Upper extremity disorders (UEDs) account for a significant number of work-related illnesses in the US workforce. Little information exists on the distribution of UEDs, their associated health care and indemnity costs, or patterns of work disability. The study presented is an analysis of upper extremity claims within the federal workforce. In this study, the universe consisted of all claims accepted by the US Department of Labor, Office of Workers' Compensation Programs (OWCP), from October 1, 1993, through September 30, 1994. A total of 185,927 claims of notices of injury were processed during the study period, and of these, 8,147 or 4.4% had an UED diagnosis coded according to the International Classification of Diseases, Clinical Modification (ICD-9-CM). 5,844 claims involved a single UED diagnosis and were the only claims filed by these employees between October 1, 1990, and September 30, 1994. These single claims with single diagnoses comprised the sample for further analysis. Mononeuritis and enthesopathies of the upper limb were the most common diagnoses, accounting for 43% and 31% of the claims, respectively. Women had a higher proportion of carpal tunnel syndrome, "unspecified" mononeuritis, and "unspecified" enthesopathies. The majority of claimants for both the mononeuritisand enthesopathy-related diagnoses were between 31 and 50 years of age, received only health care benefits, and did not incur wage loss. Health care costs for mononeuritis and enthesopathy claims were $12,228,755 (M = $2,849). Carpal tunnel syndrome(CTS) and enthesopathy of the elbow were the most costly diagnoses, accounting for 57% and 16% of the total, respectively. Surgical services represented the highest expenditures in CTS claims. Physical therapy accounted for the majority of health care costs for enthesopathy cases. The mean number of workdays lost for CTS and enthesopathy claims were 84 and 79, and the average indemnity costs were $4,941 and $4,477, respectively. These findings indicate that while UEDs represent a relatively small percentage of all workers' compensation cases, the health care and indemnity costs are considerable. Also mean duration and pattern of work disability revealed that these disorders can result in chronic work disability similar to that observed in low back pain. The results highlight the need to determine whether interventions that account for the majority of costs significantly impact long-term outcomes. There is also a need to identify risk factors for prolonged disability in those who experience problems with delayed recovery.

source: openbmb/Ultra-FineWeb


text:
Over time, a residential driveway can become an eyesore from leaked motor oil, tire marks and other stains. Muriatic acid, also referred to as a form of hydrochloric acid, is an extremely effective concrete cleaner -- with emphasis on "extreme." Muriatic acid, typically diluted with water, reacts with the alkalinity of the cement and "etches" the surface, dissolving surface stains and foreign material. The basic safe procedure to clean with muriatic acid is easy to follow and will help restore the appearance of your driveway's surface.
Put on all protective gear, including boots, gloves and glasses.
Mix muriatic acid with water for the desired solution, based on the manufacturer's recommendations.
Pour a small amount of the acid-water mixture carefully onto the concrete surface, beginning with a concentration on specific stained areas of the driveway. Allow the mixture to saturate the stained area for approximately 10 minutes to dissolve the material.
Scrub and spread the acid solution over the concrete surface using a floor brush. Use a wire brush on difficult stains or built-up material. Add more acid mix as needed.
Rinse the driveway thoroughly with clean water.
Repeat Steps 2 through 4 for stubborn stains or problem areas.
Things You Will Need
- Plastic bucket
- Muriatic acid
- Stiff-bristled floor brush
- Wire brush
- Rubber gloves
- Rubber boots
- Safety glasses
- Avoid rinsing the muriatic acid solution into planters or grassy areas adjacent to the driveway to prevent poisoning the plants.
- Muriatic acid is a dangerous and corrosive liquid that should be used with extreme care and only as a last resort after milder cleansers or power washing has proven ineffective. Even diluted muriatic acid will dissolve cloth or leather and presents a burn hazard for exposed skin or eyes.
- Use only a plastic bucket and dilute the acid in clean water. To prevent splashing or spillage when mixing the acid solution, add the acid liquid to the water; do not add water to the acid.
- Remove Lichen
- Naturally Color Concrete
- The Best Grass Seed for Patches
- Using Sand in Gardening
- Remove Calcium Deposits From a Red Brick Driveway
- What Is the Ideal Temperature for Staining Concrete?
- The Best Grass Seed for Shady Areas
- Ant Control
- How Much Sun Do Knockout Roses Need?
- Put Sand in a Crawl Space
- Clean Driveway Mold
- Fix a Crumbling Concrete Walkway


text:
John Stuart Third Earl of Bute died - On this day in history
John Stuart, 3rd Earl of Bute and the first Prime Minister from Scotland following the Act of Union, died on 10 March 1792. Bute was an Edinburgh man who became prime minister in 1761, thanks in large part to his friendship with King George III, whom Bute had tutored as a boy.
Bute proved an unpopular prime minister, receiving widespread criticism after introducing a cider tax which penalised cider producing areas heavily. After retiring from politics in 1780, he devoted himself to horticultural matters on his estate in Hampshire and published Botanical Tables Containing the Families of British Plants.
He died at Grosvenor Square in London and is buried on the Isle of Bute.


text:
Note: While I show common macros and markup in the examples below, Thomas Michael Edwards has done a great job documenting the full set of macros and functionality available to SugarCube users.
Table of Contents
- Text Elements
- Bulleted and numbered items
- Using <> macro
- Combining <> and <> macros
- Using either() and random() functions
- Using a dataset (object literal)
- Using a datamap (object literal with properties)
- Using <>
Just like in the underlining HTML, Twine also supports all five different levels of headers. To create a header, you include the exclamation point ("!") in front of some selection of text and match the number with the level wanted. For example, a single hash is for element, but five would be for a element.
To mark some selection of text to be emphasis (italicized), bolded, or otherwise set apart requires some special markup symbols in Twine.
Bulleted and Numbered items
To have Twine produce bulleted or numbered items, some selection of text needs to have a single asterisk ("*") before them for top-level and two or more asterisks for indented items. For numbered items, use a hash ("#") for top-level and two or more hashes for indented items.
Using the <> macro
The Set Macro is one of the most powerful and common macros found in Twine. In order to save ("set") some value, the Set Macro is used.
Combining the < and < macros
In most cases of using variables in Twine, you will want to first "set" some value and then, at some later point, conditionally act from testing the value. In Twine, you can combine the Set Macro with an If Macro to test is some condition is "true." For example, if a value "is" strictly the same as another or if some other comparison results in a "true" statement. (See the extended list of SugarCube comparison keywords for greater detail of what can be used in conditional statements.)
Using either() and random() functions
In some cases, you will want Twine to choose some value for you. If you want Twine to pick a single value between some fixed, existing set, the Either Macro will work. For those times when you want Twine to pick a random value between two positive numbers, the Random Macro will work.
Using a dataset (object literal)
In the following example, we can replicate the "is in" functionality from Harlowe through adding properties to an object and setting their value to "true". When adding items to the bag, we set them to "true"; if we need to remove them, we could set their value to "false" (or "undefined").
Using a datamap (object literal with properties)
In the following example, we set an object literal to have the properties of "strength", "wisdom", and "will" to initial values. Then, we test one of those values and, finally, increase one using a secondary Set Macro statement.


text:
Simply begin typing or use the editing tools above to add to this article.
Once you are finished and click submit, your modifications will be sent to our editors for review.
...each day of the church year); and the psaltikon and asmatikon (solo and choral parts, respectively, for kontakion and some other solo choral chants). In the Akolouthiai, or Anthologion, were ordinary chants for Vespers, Matins, funerals, and the three liturgies (of St. John Chrysostom, St. Basil, and the Preconsecrated Offerings), as well as optional chants, some of...
use in Eastern church
The Eastern church has never adopted one book to be used by the celebrant of the liturgy. The Anthologion, an Eastern book similar to the Western missal, was used by some beginning in the 13th century, and an edition was published in Athens as late as 1882. Small hand missals are commonly used by the worshipers in the Eastern church.
What made you want to look up "Anthologion"? Please share what surprised you most...


text:
Cabinetmaking is a specialty area within the field of carpentry and building trades. This field of study includes basic woodworking as well as more advanced cabinetmaking and furniture-making techniques. Cabinetmaking can be done within a production, manufacturing environment, or as an individual artisan specializing in custom design and building.
SUNY Delhi offers a one-year Cabinetmaking certificate as part of the Carpentry and Building Trades curriculum. This certificate program can be taken by itself, or it can be combined with further instruction in Carpentry to yield an associate's degree. This program's objective is to educate students in both the theory and practice of woodworking and cabinetmaking. The program includes extensive laboratory hours during which students develop and practice the skills of the cabinetmaker.
Students who enroll in the Carpentry and Building Trades associate's degree programs have the option of including one or two semesters of woodworking/cabinetmaking in the second year of their program.
The job titles associated with graduates of the Cabinetmaking certificate program are:
There are career opportunities in residential construction, in sub-contracting, and in sole ownership of a cabinetmaking shop. Students who continue on for the associate's degree increase their options for employment in the carpentry and construction fields.
Graduates of the associate's degree programs also have options for further study at the bachelor's degree level. For example, the College of Environmental Science and Forestry (ESF) at Syracuse offers a B.S. degree in Wood Products Technology.
A related career option would be to transfer to a school with a Technology Education or a Vocational Education bachelor's degree, which would lead to a teaching career at the high school level. In New York State, two schools that offer this degree are SUNY Oswego and SUNY Buffalo.
SUNY Curriculum Code: 0923


text:
Definitions of gentle:
- verb: stroke soothingly
- verb: give a title to someone; make someone a member of the nobility
- verb: cause to be more favorably inclined; gain the good will of
- adjective: having or showing a kindly or tender nature
Example: "The gentle touch of her hand"
- adjective: quiet and soothing
Example: "A gentle voice"
- adjective: soft and mild; not harsh or stern or severe
Example: "A gentle reprimand"
- adjective: having little impact
Example: "Gentle rain"
- adjective: easily handled or managed
Example: "A gentle old horse, docile and obedient"
- adjective: marked by moderate steepness
Example: "A gentle slope"
- adjective: belonging to or characteristic of the nobility or aristocracy
Example: "Of gentle blood"
- name: A surname (rare: 1 in 100000 families; popularity rank in the U.S.: #10354)
Search for gentle at other dictionaries: OneLook, Answers.com, Merriam-Webster
"Works flawlessly!": RhymeZone apps for iPhone/iPad and Android!
Help, Feedback, Customize, Android app, iPhone/iPad app
Copyright © 2013 Datamuse


text:
Reptiles and Amphibians
The common five-lined skink is Missouri's most common skink. Adults are olive or tan with lengthwise stripes. It is often called the blue-tailed skink for the coloration of juveniles.
About Reptiles and Amphibians in Missouri
Missouri's herptiles comprise 43 amphibians and 75 reptiles. Amphibians, including salamanders, toads, and frogs, are vertebrate animals that spend at least part of their life cycle in water. They usually have moist skin, lack scales or claws, and are ectothermal (cold-blooded), so they do not produce their own body heat the way birds and mammals do. Reptiles, including turtles, lizards, and snakes, are also vertebrates, and most are ectothermal, but unlike amphibians, reptiles have dry skin with scales, the ones with legs have claws, and they do not have to live part of their lives in water.


text:
Vibration Response Imaging
Vibration response imaging or VRI, is nominally a medical VR visualisation technology, although it has obvious uses in other fields. It was developed to image patient lungs, and works via detecting vibrations within the target body, via sensors deployed to either side, pressed against the surface.
Below, we offer a selection of links from our resource databases which may match this term.
Related Dictionary Entries for Vibration Response Imaging:
Resources in our database matching the Term Vibration Response Imaging:
As the demands for precise imaging in fields such as medicine, astronomy, and real-time machine vision in hostile environments continue to increase, so the demands placed on imaging equipment become ever more stringent. An imaging method based on Single Photon Avalanche Photodiodes (SPAD) offers the potential to ease this bottleneck greatly.
Technology Review's long, and in depth look at the rise of diffusion spectrum imaging, and how this new neural interface imaging technique is rapidly accelerating the study of both human and animal brains to an extent unparalleled by any previous imaging technique, even fMRI.
Diffusion spectrum imaging is a new technique at time of writing, which allows magnetic resonance brain imaging, at a much higher level of fidelity than fMRI permits.
In mid 2012, Swiss researchers turned the world of alzheimers plaque imaging on its head: by combining a phased imaging source and an integral VR model generator, for the first time ever we can now track the formation of Alzheimers plaques in real-time in living patients.
AR based Medical imaging technologies really began to take off in the early 2000s. There are a growing range of holographic, projective, interactive gesture recognition tools available, which can really make training and diagnosis so much easier.
VRIxp is a medical diagnosis device using what is perhaps a novel form of 3D visualisation. It uses audio analysis of vibration deep inside the body to assemble precise structural detail.
fMRI or functional magnetic resonance imaging, is one of the newest brain imaging technologies for the first decade of the 21st century. It is a basic form of Brain-Computer Interaction.
These are the proceedings of the fourth international medical imaging and augmented reality conference, held in Tokyo, Japan, August 1-2, 2008.
These are the proceedings of the third international medical imaging and augmented reality conference, held in Shanghai, China, August 17-18, 2006.
These are the proceedings of the first international medical imaging and augmented reality conference, held in Hong Kong, 10-12 June 2001.
Industry News containing the Term Vibration Response Imaging:
Results by page
Currently, to keep track of a game, soccer fans have the option of reading textual information of the game?s key events in near-real-time, or listening to audio of the text transferred to voice. However, these options require a user?s full...
Magnetic resonance imaging (MRI) can serve as a very sensitive technique for detecting small tumors in the body, but it is not as good at identifying the edges of a tumor. Photoacoustic imaging tomography (PAT) is not as sensitive as MRI, b...
A new 3D view of the body's response to infection -- and the ability to identify proteins involved in the response -- could point to novel biomarkers and therapeutic agents for infectious diseases.
Vanderbilt University scie...
This week, researchers from Philips Electronics plan to describe a jacket they have lined with vibration motors to study the effects of touch on a movie viewer?s emotional response to what the characters are experiencing.
New functional and imaging-based diagnostic tests that measure communication and signaling between different brain regions may provide valuable information about consciousness in patients unable to communicate.
The new tests,...


text: Eighteen cases of alloimmune neonatal neutropenia (ANN) were analysed for their clinical and serological properties. Pregnancy was normal in all cases, but a 50% incidence of abortion is recorded. With the exception of two premature babies, all newborns were delivered at term. Omphalitis and mild infections of the skin were predominantly present. None of the new-borns died by overwhelming sepsis. The average duration of neutropenia was 11 weeks (range 3-28 weeks). Intravenous IgG therapy was followed by transient remission in 2 of 4 affected newborns. Antibody differentiation revealed in five sera NA1-, in four sera NA2- and in two sera NB1-specific antibodies. In two sera only HLA antibodies were detectable. Complement activating antibodies were determined in 72% of the sera. Screening for granulocyte-specific antibodies in 1016 postpartum sera of unselected women revealed a total of 11 sera (1.1%) reacting selectively with granulocytes, but only four (0.4%) were directed against a known granulocyte-specific antigen. None of the new-born of mothers alloimmunized to granulocyte antigens developed neutropenia, which suggests an incidence of ANN below 0.1%.


text:
Ping and Trace Route
This feature can be found under Tools – Ping/Trace in the main menu.
Ping sends out an echo request to a specific computer on the network. It can be used to check communication links or to check whether the specific host exists or is running:
Trace route allows you to determine the path a packet is taking across the Internet. It looks up each machine along the path to a destination host and displays the corresponding name and IP address for that hop. Next to the host name is the number of milliseconds to get to that host.


text:
In this tutorial we use a PIR motion sensor to detect human presence. With a Python script on your Raspberry Pi, we monitor if motion is detected. When you have completed this tutorial, you will be able to connect the HC-SR501 sensor to your Pi via the GPIO pins. You'll also have the basic code to convert the output signal of the sensor to useable information in your Python script.
What you'll need for this tutorial
First, you need to have a Raspberry Pi 3 running on the latest version of Raspbian. This version includes "Thonny". We'll use this user-friendly IDE to write our Python code. If you're not familiar with Python or with Thonny or GPIO-pins, I suggest to have a look at our tutorials "First Python program on the Raspberry Pi" and/or "Raspberry Pi first program using GPIO" to have a quick introduction.
Next you'll need some extra hardware:
- a breadboard (we are using a 400 points breadboard)
- an HC-SR501 PIR motion sensor
- Dupont jumper wires
- a T-cobbler (optional)
- a 40 pin GPIO cable (optional)
If you miss any equipment, don't hesitate to visit our shop. We have a nice kit which contains all the things you need tot start.
The HC-SR501 PIR motion sensor
PIR stand for Passive Infrared Detection. The sensor measures variations of infrared light. As we all emits infrared light, the infrared variations will be detected by the sensor when we move in front of the sensor. When this happens, the sensor will set the output to high. As the high output signal is 3,3V, the output signal can be directly connected to a GPIO input pin of the Raspberry Pi.
The module can be configured as follows:
- Jumper set: The jumper is used to control the trigger mode. When the jumper cap is at the "L" position, the mode is set up as "unrepeated trigger mode", which means when the module is outputting an HIGH voltage because of human motion it will not be triggered again even if another human motion is detected. When the jumper cap is at the "H" position, the module is setup as "repeated trigger mode", which means the delaying time will be recalculated when a second human motion is detected during its delaying time.
- Sensitivity adjust: to adjust the detection range
- Time Delay Adjust
Some modules are not equipped with jumpers but have 3 contacts instead. In this case, you have to connect the middel contact with a soldering iron with either the "L contact" or the "H contact".
Setting up the hardware part
Before starting connecting wires on the GPIO pins of your Raspberry Pi, make sure you properly shut down the Pi and removed the power cable of the board!
- connect the 40 pin cable on the GPIO pins of your Pi (if necessary, remove the cover of your Pi first)
- plug the cobbler onto the breadboard as shown in the figure above or below
- plug the other end of the 40 pin cable in the T-cobbler
- connect the VCC pin of the sensor with a 5V pin (red wire)
- connect the OUTPUT pin of the sensor to pin 23 (yellow wire)
- connect the GND of the sensor to a GPIO GND pin (black cable)
Writing the code
The aim of this tutorial is to write a very simple Python script that allows us to visualize when motion is detected. To write the code, we use the Thonny IDE. You can find Thonny under the application menu of your Raspberry Pi.
Write or paste following code in the IDE:
import RPi.GPIO as GPIO
PIR_PIN = 23
print('Starting up the PIR Module (click on STOP to exit)')
Some explanations about the code:
GPIO.setmode (GPIO.BCM): The GPIO.BCM option means that we are referring to the pins by the "Broadcom SOC channel" number, these are the numbers after "GPIO"
GPIO.setwarnings (False): We use this line of code to avoid warning messages.
GPIO.setup(PIR_PIN,GPIO.IN): We define the PIR-pin (= 23) as an input pin
time.sleep(1)We wait for 1 second to settle the sensor
while True:is an infinitive loop (until we stop the program)
- Be careful, Python is whitespace-sensitive. Don't remove the "tab" before the code line after the while command.
if GPIO.input(PIR_PIN):if the PIR-pin is high (sensor has detected movement)
time.sleep(1)Waiting for 1 second before we start the loop again
When you are done with the code, click on the Run button. You will see a message on the screen when the sensor detects movement.
To stop the program just click on the STOP button.
Congratulations! With this setup you can integrate motion detection in your code. You can further use the script to process the result in an application where you want to monitor human presence. Have fun with it!


text:
First of all, the direction of each plug and socket is clearly contrasted
When installing, make sure that the directions of each plug and socket are clear
After inallaton, start the car in neutral or P gear and make sure the accelerator is efctive
If there are other queries, you can consult the customer service to solve
Step 1: find the signal port for the acceleratorpedal of the car
Step 2: remove the throttle signal port of the original car
Step 3: then connect the host to the pedal
Step 4: Place the display conditioner in the appropriate position and the installation is complete.


text:
Comments on the Chatfield Reallocation Mitigation Company's Open House, May 30, 2017
From the Audubon Society of Greater Denver
The Proposed Mitigation is Better, But Our Basic Concerns Remain
In a 2.5 hour session on the evening of May 30, 2017, the entity known as the Chatfield Reallocation Mitigation Company presented current plans for mitigation of the Chatfield Reallocation project. It was a very slick presentation with good visuals and experts to answer questions, and it answered some of the concerns we have voiced for years. However, there was no opportunity for the public to submit comments.
- More of the mitigation will occur in Chatfield State Park.
- Wetlands mitigation has been moved from the uplands into the riparian zones.
- Severe downcutting on Plum Creek will be addressed.
However, our basic concerns remain:
- There will be a net loss of habitat, since what is destroyed at Chatfield State Park will not be replaced; the off-site conservation easements protecting riparian habitat protect EXISTING areas and no new riparian habitat is being created.
- There will be a net loss of accessible recreation lands. We will lose riparian areas and lake shore in Chatfield State Park that are open to the public to inundation or conversion to mud flats; the mitigation lands put into conservation easements will not be open to the public.
- The Corps of Engineers has refused to consider less-damaging practicable alternatives.
- The Corps has manipulated the project documents to avoid compliance with the Clean Water Act's requirement that they choose "the least environmentally damaging practicable alternative." Instead, they chose the MOST damaging.
- The Corps has determined that the "dependable" yield of the project – how much water it will provide in severe drought years – is 0. We fail to see why so much money should be spent for a project that cannot deliver a dependable yield.
- Because the providers have very junior water rights, they will only be able to store additional water in Chatfield 3 years out of 10, according to the Corps of Engineers' calculations. Most of the time the fluctuation zone will be dry with great possibilities for dust and noxious weeds.
- There is still uncertainty about the fate of the mature cottonwoods in the Park.
The visuals for the recreational mitigation have been posted on _URL_. As of June 5, the environmental mitigation visuals, the schedule of work and the Ecological Function Unit calculations used to plan the environmental mitigation had NOT been posted for future reference.


Section: User Commands (1)
Updated: 28 July 2020
Page Index
preconv - convert encoding of input files to something GNU troff understands
[ -dr ] [ -D default_encoding ] [ -e encoding ] [file...] -h --help -v --version
preconv reads files and converts its encoding(s) to a form GNU troff(1) can process, sending the data to standard output. Currently, this means ASCII characters and '\[uXXXX]' entities, where 'XXXX' is a hexadecimal number with four to six digits, representing a Unicode input code. Normally, preconv should be invoked with the -k and -K options of groff.
Emit debugging messages to standard error (mainly the used encoding).
Specify default encoding if everything fails (see below).
Specify input encoding explicitly, overriding all other methods. This corresponds to groff's -Kencoding option. Without this switch, preconv uses the algorithm described below to select the input encoding.
-h Print a help message and exit.
Do not add.lf requests.
-v Print the version number and exit.
preconv tries to find the input encoding with the following algorithm.
If the input encoding has been explicitly specified with option -e, use it.
Otherwise, check whether the input starts with a Byte Order Mark (BOM, see below). If found, use it.
Otherwise, check whether there is a known coding tag (see below) in either the first or second input line. If found, use it.
Finally, if the uchardet library (an encoding detector library available on most major distributions) is available on the system, use it to try to detect the encoding of the file.
If everything fails, use a default encoding as given with option -D, by the current locale, or 'latin1' if the locale is set to 'C', 'POSIX', or empty (in that order).
Note that the groff program supports a GROFF_ENCODING environment variable which is eventually expanded to option -k.
Byte Order Mark
The Unicode Standard defines character U+FEFF as the Byte Order Mark (BOM). On the other hand, value U+FFFE is guaranteed not be a Unicode character at all. This allows detection of the byte order within the data stream (either big-endian or little-endian), and the MIME encodings 'UTF-16' and 'UTF-32' mandate that the data stream starts with U+FEFF. Similarly, the data stream encoded as 'UTF-8' might start with a BOM (to ease the conversion from and to UTF-16 and UTF-32). In all cases, the byte order mark is not part of the data but part of the encoding protocol; in other words, preconv's output doesn't contain it.
Note that U+FEFF not at the start of the input data actually is emitted; it has then the meaning of a 'zero width no-break space' character - something not needed normally in groff.
Coding Tags
Editors which support more than a single character encoding need tags within the input files to mark the file's encoding. While it is possible to guess the right input encoding with the help of heuristic algorithms for data which represents a greater amount of a natural language, it is still just a guess. Additionally, all algorithms fail easily for input which is either too short or doesn't represent a natural language.
For these reasons, preconv supports the coding tag convention (with some restrictions) as used by GNU Emacs and XEmacs (and probably other programs too).
Coding tags in GNU Emacs and XEmacs are stored in so-called File Variables. preconv recognizes the following syntax form which must be put into a troff comment in the first or second line.
The only relevant tag for preconv is 'coding' which can take the values listed below. Here an example line which tells Emacs to edit a file in troff mode, and to use latin2 as its encoding.
The following list gives all MIME coding tags (either lowercase or uppercase) supported by preconv; this list is hard-coded in the source.
big5, cp1047, euc-jp, euc-kr, gb2312, iso-8859-1, iso-8859-2, iso-8859-5, iso-8859-7, iso-8859-9, iso-8859-13, iso-8859-15, koi8-r, us-ascii, utf-8, utf-16, utf-16be, utf-16le
In addition, the following hard-coded list of other tags is recognized which eventually map to values from the list above.
ascii, chinese-big5, chinese-euc, chinese-iso-8bit, cn-big5, cn-gb, cn-gb-2312, cp878, csascii, csisolatin1, cyrillic-iso-8bit, cyrillic-koi8, euc-china, euc-cn, euc-japan, euc-japan-1990, euc-korea, greek-iso-8bit, iso-10646/utf8, iso-10646/utf-8, iso-latin-1, iso-latin-2, iso-latin-5, iso-latin-7, iso-latin-9, japanese-euc, japanese-iso-8bit, jis8, koi8, korean-euc, korean-iso-8bit, latin-0, latin1, latin-1, latin-2, latin-5, latin-7, latin-9, mule-utf-8, mule-utf-16, mule-utf-16be, mule-utf-16-be, mule-utf-16be-with-signature, mule-utf-16le, mule-utf-16-le, mule-utf-16le-with-signature, utf8, utf-16-be, utf-16-be-with-signature, utf-16be-with-signature, utf-16-le, utf-16-le-with-signature, utf-16le-with-signature
Those tags are taken from GNU Emacs and XEmacs, together with some aliases. Trailing '-dos', '-unix', and '-mac' suffixes of coding tags (which give the end-of-line convention used in the file) are stripped off before the comparison with the above tags happens.
Iconv Issues
preconv by itself only supports three encodings: latin-1, cp1047, and UTF-8; all other encodings are passed to the iconv library functions. At compile time it is searched and checked for a valid iconv implementation; a call to 'preconv --version' shows whether iconv is used.
preconv doesn't support local variable lists yet. This is a different syntax form to specify local variables at the end of a file.
the GNU Emacs and XEmacs info pages
Byte Order Mark
Coding Tags
Iconv Issues


text:
How do math placement exams work and how can I prepare for them?
I took a math class at another college or university, how can I transfer it to Boise State University?
How can I get permission to repeat a class that I've repeated before?
If you need to repeat a class more than once then you will need to fill out a Request to Exceed Maximum Course Registration. First complete the form, including the justification and advisor signature. Then make an appointment with Math Advising. Please include (a) The course name and number (b) The past semesters and section numbers or instructor names. We will discuss how you can be successful retaking the course!
How do I obtain a permission number?
In order to receive a permission number from the Mathematics Department, please send the following information to _EMAIL_ using your Boise State student email address.
- Name and student ID#
- The exact section number of the math class wanted including the 5-digit class number. e.g. MATH 170-001 (70187)
- A copy of the message received when attempting to register for the class.
We will be in contact with you if additional information is needed or to issue a permission number.


text:
Planning ahead for algae control in ponds and lakes
May 15, 2012
It's still quite early in the warm season in our part of the country, but it won't be long before summer is fully underway. A major summertime nuisance in many ponds and lakes is the growth and spread of unwanted algae, especially in urban areas where runoff from fertilized lawns carries lots of nutrients
along with it into the water, where it feeds the growth and spread of algae -- especially when combined with a dose of warm, sunny weather
. Treating ponds with chemicals to kill algae can be an expensive and time-consuming process
We offer an alternative option: Pond aerators and fountains, which can be used not only to provide a combination of air and agitation (which help to inhibit the growth of algae), but that can also be combined with a simple lighting system to provide an attractive landscaping feature. Please feel free to contact us
with your questions.


text:
LIFE IN ST. LOUIS DURING WORLD WAR II
At the start of World War II in 1941, only eleven or twelve Japanese families were known to have settled in St. Louis. No evacuations to internment camps took place in Missouri. Life was closer to normal for Japanese families living in St. Louis, although surely it was not business as usual. Although racism was probably not as bad as it was on the West Coast, it was likely existent in St. Louis during the war.
In the following excerpt, Mae Marshall, a life-long St. Louis resident, explains how the FBI came into her father's store on Market Street.
1948 Family Photo
Mary Alyea Beck, Ben Kadowaki, Bob, Herb, and Mae


If you are accused of a Washington Drug crime you may qualify for several jail alternative programs. Generally, these alternatives focus on your rehabilitation for drug addiction.
Drug Courts: Some courts in Washington operate "drug court" programs. For example, within Washington State there are drug courts operating in King, Pierce, Spokane, Clallam, Clark, Cowlitz, Kitsap, Skagit, Snohomish, Thurston, Whatcom and Yakima counties. Drug courts are generally pre-sentencing programs that could provide you with the opportunity to receive drug treatment in lieu of jail and possibly have your case dismissed.
If you choose to participate in a Washington drug court program you must meet specific eligibility requirements. The court will then require you to attend drug treatment, undergo random urinalysis, and appear before the judge on a regular basis. If you fulfill your commitment and meet the program requirements, the charges against you will be dismissed. If you fail to comply with the court's conditions you are terminated from the program and sentenced on your original charge.
DOSA: The Drug Offender Sentencing Alternative, or "DOSA", program is a post-sentencing program that can reduce your incarceration time by up to 50%. DOSA converts your remaining jail time to Community Supervision and outpatient treatment monitoring so that the second half of your sentence can be spent out of custody.


- Join over 1.2 million students every month
 - Accelerate your learning by 29%
 - Unlimited access from just £6.99 per month
How does the weight of a pendulum effect its oscillation time.
Extracts from this document...
Liam Kelly
How does the weight of a pendulum effect its oscillation time
The key factors that could affect this experiment are that the length of pendulum varying will change how far it has to swing to complete an oscillation.
The weight of the pendulum will have a effect on the oscillation time because the pendulum will have more weights which will increase the surface area for air resistance to take place this is the only possible way the weight of the pendulum will affect the oscillation time because, gravity is a standard force, so the weight will not effect the amount of gravity taking place.
The angle at which it is dropped at is another key factor because, if it is dropped from higher up it has longer to pick up speed so therefore it shall travel higher up giving it a longer oscillation time. If the pendulum is dropped from a lower then it shall have less time to pick up speed and so will not travel as high up on the other side.
...read more.
Weight Of Pendulum
Average length of time
...read more.
We could have improved our test by having a beam and when it is broke by the pendulum the fifth time the pendulum breaks the beam it could stop timing so it would be the same reaction time for all, we could have had a stand or something to hold the pendulum in place before it is dropped that way we could be sure it was from the same spot each time.
In our experiment there was some slightly out of place results in our experiment but they're no severe ones that could be anomalous results.
 We could have investigated a further 1000g so we went to 2000g to see if after every 500g there was a jump in time of nearly a second our so, like there was in our experiment. We could also continue to the point of were we have added so much weight that it could not complete 5 oscillations to the same height as it started. We could also have tried the experiment at different temperatures to see what effect, if any it had on the oscillation times.
...read more.
Found what you're looking for?
 - Start learning 29% faster today
 - 150,000+ documents available
 - Just £6.99 a month
Not the one? Search for your essay title...
 - Join over 1.2 million students every month
 - Accelerate your learning by 29%
 - Unlimited access from just £6.99 per month
See related essaysSee related essays
Related GCSE Forces and Motion essays
 1. Investigation into the range of a ski jump
 it would seem more sensible to incorporate a formula to account for it. Or alternatively use a denser ball, which is less affected by air resistance. The straightness of the ramp can affect the experiment in two ways. If the ramp is not straight the ball will bounce from side
 2. Damped Oscillation.
 This is a second order differential equation. Following is the steps I have taken to solve this second order differential equation. Aux. equation Case 1: General solution It can be written as It is an overdamping. Case 2: General solution It is a critical damping.
 Apparatus ~ 1 liter Beaker ~ Sphere ~ Ruler ~ Thermometer ~ Electric heater ~ Weighing machine ~ Vernier calliper Method 1) Measure the mass of the beaker without syrup 2) 5 cm above from the surface of the beaker mark a line 3)
 2. Investigation into the effect of temperature on viscosity
 Thermal energy loss may occur as when heated the honey immediately begins losing heat to its surroundings (and gaining heat, when cold, to return to room temperature) Effects like this must be taken into account, so that as the temperature at which the recording is made, is as near as possible to the temperature stated.
 1. Period of Oscillation of a Simple Pendulum
 Below is a diagram, which shows how potential energy (p.e) and kinetic energy (k.e) are continually interchanged in a pendulum. The diagram shows how at the point of release, the energy of the bob is all p.e. Then as it passes through the central position, it is all k.e.
 2. The Pendulum
 do the experiment, we will only change one variable at a time and keep everything else the same i.e. the angle at 90 degrees from the floor, the weight ball of weight of 40g etc...The only variable we will change is the length of the string.
 - Over 160,000 pieces
 of student written work
 - Annotated by
 experienced teachers
 - Ideas and feedback to
 improve your own work


text:
When economists say that something is "linear", rather than "non-linear", they normally mean it is a straight line, rather than curved. Y=a+bX is linear; Y=a+bX2 is non-linear.
That is NOT what I am going to mean by "linear" in this post.
Instead, I am going to use the words "linear" and "non-linear" in the way Artsies use those words. A "linear" plot is one that starts at the beginning, then continues with day causing following day, until it gets to the end. A "non-linear" plot curves back on itself, with simultaneity, flashbacks and flashforwards, and self-referential asides where the characters wonder if they are in a story and how it's going to end.
Economics is now, and has been for hundreds of years, a non-linear discipline, in the Artsie sense of the word.
[Update: anyone who doesn't get my point, or who wants to see the point explained by someone who understands math modelling better than me, or who wants to see it from the perspective of a real scientist (not an economist) who studies predator-prey dynamics, should read Jeremy Fox.]
The very simple story of demand and supply, as we teach it in ECON1000, is a fundamentally non-linear story. If you try to tell the demand and supply story as a linear story, you always get into deep trouble. "Bad weather causes a decrease in supply, which causes an increase in price, which causes a decrease in demand, which causes a decrease in price, which causes a decrease in supply, which causes an increase in price...."
Explaining demand and supply to first year students is difficult, precisely because it is a non-linear story. They want to know whether a change in quantity causes a change in price, or whether a change in price causes a change in quantity? And in which direction will price change if quantity changes, or will quantity change if price changes? And you can't answer that question, because it doesn't make sense. We can only answer "both".
And so we draw a supply and demand curve diagram, point to the intersection of the two curves, and say that price and quantity are co-determined simultaneously in equilibrium by the supply and demand curves. Where the supply curve is the whole relationship between price and quantity supplied; and the demand curve is the whole relationship between price and quantity demanded. And explain that supply, quantity supplied, and quantity sold are three different concepts. And explain how demand, quantity demanded, and quantity bought, are also three different concepts. And tell a story of the disequilibrium sub-plot in which an excess supply causes price to fall to the equilibrium, and excess demand causes price to rise to the equilibrium. And distinguish that disequilibrium sub-plot from the main equilibrium plot in which shifts in supply or demand curves cause the equilibrium price to rise or fall.
"Equilibrium" is economists' code-word for "this is a non-linear story".
The very simple standard story of demand and supply is a non-linear story. That's what makes it so hard to teach properly. Students really really want to hear a linear story. They like linear stories, because linear stories are so much easier to understand, remember, and explain. You can even write linear stories in point-form. "S up arrow P down arrow D up arrow Q up" would say it all, if the plot were linear. The "arrows" indicate "precedence", in both the causal and temporal sense. If the plot were linear, we could easily lay out the concrete steps through which an increase in supply caused a decrease in price and an increase in quantity, taking one causal step at a time. But it's not linear.
My car has a linear transmission. The engine turns the main shaft, which turns a cog, which turns another cog, which turns the auxilliary shaft,..which turns the axles, which turn the wheels, which make the car go forward. The monetary policy transmission mechanism, even in the very simplest and crudest version of that story, is non-linear. Even calling it the "monetary policy transmission mechanism" is a highly misleading metaphor, because it leads people to expect a linear story.
The simple story of monetary policy I teach in ECON1000 is non-linear like the demand and supply story, only more so. That's because there are more goods, more supply and demand curves, more endogenous variables that get determined simultaneously, and almost everything depends on almost everything else.
I have a shameful admission to make. A couple of times, after some students still didn't get it, I broke down. I told them that this wasn't exactly right, and then wrote down: "M up arrow r down arrow I up arrow Y up arrow P up". And the students loved it. Yes! This they could really understand! They all wrote it down in their notes, memorised it, and regurgitated it on the exam.
What I did was wrong. I linearised a non-linear story. But that's not the point of this post.
The point is that the students really really wanted a linear story of the monetary transmission mechanism. And when I gave them a linear story they thought they understood it. They didn't. They misunderstood it. They misunderstood it just as badly as a student who thinks "an increase in supply causes a decrease in price causes an increase in demand causes an increase in quantity" misunderstands demand and supply.
My students were like the people from the concrete steppes. The people from the concrete steppes want a linear story of the monetary policy transmission mechanism. Sorry, but you can't have it. If you think you understand monetary policy through a linear story, you don't understand it. The true story is non-linear. There is simultaneous causation, so endogenous variables are co-determined in equilibrium. Expectations matter, so the story has flashforwards and flashbacks, where the future affects the present. Those expectations are self-referential, because the characters in the story know the author who works at the central bank, and can anticipate the future plot he plans to write, which affects their actions today. That means a loosening of monetary policy could mean that interest rates rise, not fall. You cannot reason from an interest rate change (Scott Sumner), because interest rates are endogenous variables.
The people from the concrete steppes find this all very frustrating. They want a story with a linear plot, because a linear plot is what they understand. And if they think the linear plot cannot work at the Zero Lower Bound on nominal interest rates, they conclude there must be no plot in which monetary policy works. And they think that any non-linear story is just handwaving and mystification.
Here is a very simple non-linear story, which the people from the concrete steppes won't like. We know that for any equilibrium time-path there exists a second equilibrium time-path along which all nominal variables (like NGDP, and the money supply) are higher or lower. This means that a permanent loosening of monetary policy will eventually move the economy towards one of those time-paths along which all nominal variables are higher. This means that the expectation of a permanent loosening of monetary policy will mean the expectation of an eventual permanent increase in all nominal variables like NGDP. (This is how monetary policy always works, regardless of the ZLB, because interest rate changes are an endogenous symptom of monetary policy changes, not an integral step in a linear causal chain.) An increase in expected future NGDP will increase demand today, and increase current NGDP. It would really help people to expect a permanent loosening of monetary policy and a permanent increase in future NGDP if the central bank announced a commitment to a higher future NGDG target, because hitting that target would require the central bank to loosen monetary policy permanently.
Not very linear, is it? But then economics isn't a linear subject, and hasn't been for hundreds of years. So what did you expect?


FollowSteph Follow Steph as he posts Blog Blazer Friday
How Variable Naming Can Significantly Impact Your Teams Productivity
How Variable Naming Can Significantly Impact Your Teams Productivity
What does kunnr mean? Anybody? If you've worked with SAP than you might know but to everyone else good luck. What about rqnb? Does it mean anything to you? Isn't it obvious to you that rqnb represents a request number? Seriously though, why do people name their variables so cryptically?
Think about it a little, how much easier would the code be if the variable was named requestNumber instead of rqnb? And for those of you who think it will save a few keystrokes, hence make your typing faster, remember that each time you use the variable you have to remember how to abbreviate it. With one variable it's not so bad, but when you have dozens, you're always looking up the different variable names.
Still don't believe me that it makes a large difference, tell me what the code example below does (ignoring all exception handling):
public static void chPd(uId, oP, nP)
 Usr u = UsrDB.getPrf(uId);
 u.chPd(oP, nP));
You might have a chance with that one because it's similar to the Unix/Linux command line tools. But what about the following more complex case:
function clcMtPy($mtAmt, $ct, $intRt, $nPt)
 $mInt = clcMtInt($ct, $intRt);
 $mPym = $mtAmt * $mInt;
 if($mPym > 0)
 $mPym = $mPym / (1 - pow((1 + $mInt), - ($nPt)));
 return $mPym;
How easy was that to read? You probably didn't get the meaning of what's happening in the first pass, or even the nth pass. And nor should you. But that's how a lot of code is written. What if instead it was written as:
function calculateMonthlyPayment($mortgageAmount, $country, $interestRate, $numberOfPayments)
 $monthlyInterest = monthlyInterest($country, $interestRate);
 $monthlyPayment = $mortgageAmount * $monthlyInterest;
 if($monthlyPayment > 0)
 $monthlyPayment = $monthlyPayment / (1 - pow((1 + $monthlyInterest), - ($numberOfPayments)));
 return $monthlyPayment;
How much easier is that to understand? Sure in the cryptic example, once you get a good handle on what's going on it makes sense, but how long did it take compared to the last example. And How many times did you have to re-remember which variable represented what?
Isn't the last example much much friendlier? Couldn't almost anyone jump in and understand right away. How much time is spent in the first two examples just understanding what's what? And that's with abbreviated names, what if I had just used one letter variables? Don't get me started on that. Ever try to search for instances of a variable that's one letter? Try searching for the variable "u" (used in the first example) on this webpage. How many hits did you get before you found it? Good luck with that!
By the way, this code is actually a real life snippet of code from our free real estate analyzer. Although our main LandlordMax application is written in Java (Swing), the free real estate property analyzer is written in PHP. Not that it really matters, this code isn't really language dependent. (And please note that I've removed all code dealing with currency and doubles for clarity).
In any case, all this to say be careful when you name your variables. Don't think in the now, think beyond. Think about tomorow and the next person. Make everyone's lives easier. Yes it might make your code more verbose, but it also makes it readable! It's well worth the cost.
Like this article?
 - Barend
 · August 14th, 2008 · 8:00 am · Permalink
 I have to agree. For the guys that are worried about the longer time taken in coding, why not just do a Ctrl-H on each of the shortened variable names after you're happy the code works, just replace the short ones with names that makes sense, and the next person that has to work on the code will be so much more productive.
 - Ben
 · August 15th, 2008 · 10:16 am · Permalink
 Completely agree. Standards are important, especially when working with a team. I like our team to code in very similar ways so that when we open another's code it's like looking at something we ourselves would write. This includes: var naming, denoting scope (_privateVar), organization of variables and methods, commenting properly, # of tabs, and so on.
 I'm working on living documents at work right now that define our standards for our development as a whole. Agreed upon folder naming structures for deploying websites, file-naming, deploying via subversion and what-not. What you name things is important and often required (in the case of say working with a framework).
 - Owen
 · August 15th, 2008 · 11:26 am · Permalink
 I agree, its not just the case with PHP but most languages. Its so much easier to read words rather than try to decrypt some one else's acronyms. I try to not use abbreviations but, some times find myself using shortcuts like Dir instead of Directory. 🙁
 - Scott Kane
 · August 15th, 2008 · 12:35 pm · Permalink
 Nice article, Steph. I've been arguing this for years. Glad to hear there are others who can see it too. It gets even more complex with function calls etc as well when they are cryptic. One should be able to intuit a call for crying out loud, but so often I've seen them structured along the same lines as variables – cryptic as all get out.
 - Izkata
 · August 17th, 2008 · 12:47 pm · Permalink
 Even a simple "ReqNum" is far more obvious for one of your first examples, and still retains a lot of space.
 - Steph
 · August 17th, 2008 · 12:58 pm · Permalink
 Hi Izkata,
 Yes, ReqNum is much more obvious, but I'm going to say it's still not enough. And here's why:
 1. What if you have 10 other variables, all abbr. Are you going to remember what they all mean? You'll still have to keep looking them up. If you don't believe me, as someone to pick for you a random chunk of open source code and do a string find/replace on all the variables within a decent method (it has to be code you've never seen). Easier, but it still requires more effort than it should.
 2. Again, do the same, ask someone to set up some sample code for you. Now try to add some code. When you type in the variables, are you able to remember the exact characters in each or do you have to look up what the abbreviations are each time? Could it be ReqNum, ReqNb, RqNum, RequestNum, ReqNo, etc. There's just so many rules to abbr. that you need to look it up. With fully qualified names, it's always the full spelling 😉
 - Steph
 · August 17th, 2008 · 1:00 pm · Permalink
 And thanks everyone for the great comments!
 Fully qualified names are slowly starting to become more and more the "way" to code. I can't wait until it's the standard!
 - ben
 · August 17th, 2008 · 2:15 pm · Permalink
 > Fully qualified names
 You know what would be great is to see some benchmarks on using longer fully qualified var-names versus short guys. I for one love fully qualified names, and IDEs with auto-complete and snippet/macros like Textmate, Zend, et al make it easy to type and re-type variables and function names so "type to write" should be less of a factor.
 - ben
 · August 17th, 2008 · 2:18 pm · Permalink
 * speed benchmarks
 * time to write
 - Steph
 · August 17th, 2008 · 3:00 pm · Permalink
 Hi Ben,
 The book Code Complete 2, chapter 11 specifically (The Power of Variable Names). In it the author has some hard data (research study results) that he shares that supports the same advice as this article 😉
 - vbcpp
 · July 4th, 2013 · 5:28 am · Permalink
 Completely agree! Not sure when I was told to always abbreviate my variables, but since reading


1.4.1 Scalability Improvements
MySQL 5.5 modifications improve performance on SMP systems to increase scalability on multi-core systems. The changes affect InnoDB locking and memory management.
MySQL 5.5 incorporates changes in InnoDB that improve the performance of RW-locks by using atomic CPU instructions (on platforms where they are available), rather than less scalable mutexes. It is also possible for InnoDB memory allocation to be disabled and replaced by the normal malloc library, or by a different library that implements malloc such as tcmalloc on Linux or mtalloc on Solaris.
The reimplementation of RW-locks requires atomic instructions. A status variable, Innodb_have_atomic_builtins, shows whether the server was built with atomic instructions.


text:
Provided by: bsdgames_2.17-19_i386
worm - Play the growing worm game
In worm, you are a little worm, your body is the "o"'s on the screen and
your head is the "@". You move with the hjkl keys and the arrow keys (as
in the game snake). If you don't press any keys, you continue in the
direction you last moved. The upper case HJKL keys move you as if you
had pressed several (9 for HL and 5 for JK) of the corresponding lower
case key (unless you run into a digit, then it stops).
On the screen you will see a digit, if your worm eats the digit is will
grow longer, the actual amount longer depends on which digit it was that
you ate. The object of the game is to see how long you can make the worm
The game ends when the worm runs into either the sides of the screen, or
itself. The current score (how much the worm has grown) is kept in the
upper right corner of the screen.
The optional argument, if present, is the initial length of the worm.


text:
Drug Abuse is Suicide
One of Mikhail Gorbachev's most famous reform movements was glasnost' (openness), which allowed partial freedom of the press to address social problems and corruption within the Soviet Union. Among the issues raised during the glasnost' era of the Soviet Union were public health concerns, which became a prominent issue by the late 1980s. Drug abuse, for example, could be publicly discussed for the first time inside the Soviet Union as a result of glasnost'. This poster directly addresses the social crisis created by drug abuse with its simple slogan ("Drug Abuse is Suicide") and its clear picture depicting a needle. The new ideas of the glasnost' era allowed social reformers to represent drug abuse as a personal problem (note the use of "suicide") rather than as a state problem. Drug abuse was a crime against yourself, not against the Communist Party.
To view the associated Teaching Case Study, click here.
"Drug Abuse is Suicide," Soviet Union, courtesy of the Wende Museum, Los Angeles, CA, 1988.


text:
Major Section: PROGRAMMING
(digit-char-p ch) is the integer corresponding to the character
ch in base
10. For example,
(digit-char-p #\3) is equal to
3. More generally, an optional second argument
specifies the radix (default
10, as indicated above).
The guard for
digit-char-p (more precisely, for the function
our-digit-char-p that calls of this macro expand to) requires its
second argument to be an integer between 2 and 36, inclusive, and
its first argument to be a character.
Digit-char-p is a Common Lisp function, though it is implemented
in the ACL2 logic as an ACL2 macro. See any Common Lisp
documentation for more information.


text:
The Scientific Search for the Essence of a Tasty Tomato
Scientists are several steps closer to restoring flavor to the supermarket tomato, a once-magnificent fruit turned by commercial pressures into a juicy orb of gustatory cardboard.
After 13 consumer tasting panels evaluated samples of 158 heirloom tomato varieties, researchers statistically correlated their responses with molecular analyses of tomato composition. From this emerged a profile of some two dozen chemical compounds that made the fruits taste good.
Such a profile has long eluded researchers, for whom the tomato represents a challenge of surprising complexity.
Klee and colleagues' latest study, "The Chemical Interactions Underlying Tomato Flavor Preferences," was published May 24 in Current Biology and represents the latest stage in a decade-long effort to identify the genetic and molecular underpinnings of tomato taste.
The project, which has involved psychologists, statisticians, molecular biologists and various food scientists, is described in Barry Estabrook's 2011 Tomatoland, which also chronicles the fruit's historical journey from South America to Spain and back to the New World, where it's recently been transformed into a studio prop of itself: big, red and mostly tasteless.
Fueling that devolution was a consumer desire for year-round fresh fruit and the tradeoff of high yields, disease tolerance, aesthetic value and shelf life for flavor, which until recently was a low priority for commercial breeders. Klee hopes to change that.
"Growers are not paid for producing a better-tasting tomato. Growers are paid for producing a large quantity of red objects," Klee said. "I always get asked, 'Are we raising a generation of people who don't know how a tomato should taste?' And I think the answer is largely yes."
After presenting heirloom tomatoes — non-commercial plants, with names like Oaxacan Pink and Crimson Sprinter, Giant Oxheart and Skorspelka Red — and supermarket varieties to tasters, Klee's group cross-referenced their evaluations with chemical analyses of each tomato. Statistical distillation produced a list of compounds numerically correlated with positive taste.
The researchers then used genetic engineering to design tomatoes in which individual compounds were removed or enhanced, allowing precise tests of how each chemical affected flavor. Similar tests were conducted with heirloom varieties known to be near-identical except for the presence or absence of key compounds.
From all this emerged an even clearer picture of tomato chemistry. A class of chemicals called C6 volatiles, which are abundant in tomatoes and thought crucial to their flavor, proved irrelevant to consumer taste. Another 27 compounds were flagged as important, including a little-appreciated trio — arcanely known as geranial, 2-methylbutanal and 3-methyl-1-butanol — that shaped sensations of sweetness.
For the moment, these chemical traits can't be linked to genetics. The tomato genome is understood only at a coarse level of detail, and plants that appear genetically similar can produce fruits with wildly different chemical characteristics. Future research should establish genetic links, said Klee, and allow agricultural companies to breed supermarket-suitable tomatoes that combine commercial viability with greater taste.
"We're working with the big seed companies to get them to understand the genetics and flavor and breed it back in," said Klee. "Putting the flavor back into something that still retains all that yield, shape and disease resistance is a big task."
In the meantime, Klee is freely sharing the seeds of his group's own in-house varieties with home-garden growers. "We've taken some of the heirlooms and crossed them with some of the more modern, highly disease-resistant varieties," he said. "We're testing them in the field now. Tomorrow is our first harvest. They taste great."
Citation: "The Chemical Interactions Underlying Tomato Flavor Preferences." By Denise Tieman, Peter Bliss, Lauren M. McIntyre, Adilia Blandon-Ubeda, Dawn Bies, Asli Z. Odabasi, Gustavo R. Rodrıguez, Esther van der Knaap, Mark G. Taylor, Charles Goulet, Melissa H. Mageroy, Derek J. Snyder, Thomas Colquhoun, Howard Moskowitz, David G. Clark, Charles Sims, Linda Bartoshuk, and Harry J. Klee. Current Biology, Vol. 22 No. 11, 25 May 2012.


Thermally conductive and electrically insulating alumina-coated graphite/phthalonitrile composites with thermal stabilities
Alumina-coated graphite (Al2O3@graphite) core-shell particles were firstly synthesized by a liquid-phase chemical precipitation with the aid of sodium dodecyl sulfonate (SDS) surfactant using an inorganic precursor, then to fabricate thermally conductive and electrically insulating phthalonitrile composites by a hot-compression method. The obtained composite with 40 wt% Al2O3@graphite exhibited a thermal conductivity of 1.409 W/mK, 6.6 times that of pristine phthalonitrile matrix (0.214 W/mK). And the composites still retained electrical insulation below 20 wt% Al2O3@graphite content. Moreover, excellent thermal stabilities had been observed, compared with the glass transition temperature of pristine phthalonitriles (460 °C), the glass transition temperature of the composites decreased slightly but still high. Additionally, at 20 wt% content, the weight loss temperature (T5 and T10) and the char yield at 1000 °C (Yc1000) were 525 °C, 589 °C and 74.9% which was 8 °C, 14 °C and 3.1% higher than that of pristine phthalonitriles, respectively, which holds potential for use in the high temperature thermal management.
Submit the form below to access the download:


text:
The sky's the limit for 3D printing. Two students at the University of Virginia 3D-printed and assembled a plane. When it successfully took off, their unmanned plane became just the third 3D-printed drone to ever fly.
3D printing is a revolutionary technology, which some speculate could have an impact similar to that of the personal computer. In fact, new potential applications for 3D printers seem to be appearing every week.
Steven Easter and Jonathan Turman, two third-year engineering students at University of Virginia for the MITRE Corporation, a federally funded research and development center, designed and assembled the plane this summer. The result of their work is a 6.5-foot wingspan drone, entirely built with 3D-printed parts.
The students proved that 3D printing can bring manufacturing cost down and still deliver a quality product. "To make a plastic turbofan engine to scale five years ago would have taken two years, at a cost of about $250,000," David Sheffler, a U.Va. Engineering School alumnus and 20-year veteran of the aerospace industry who helped the two students, told UVAToday. "But with 3D printing, we designed and built it in four months for about $2,000."
What do you think of this exciting project? Tell us your thoughts in the comments below.
Image courtesy of University of Virginia.


_TAG_ - Invoke
Invokes deployed function. It allows to send event data to the function, read logs and display other important information of the function invocation.
serverless invoke --function functionName
 - --function or -f The name of the function in your service that you want to invoke. Required.
 - --data or -d String data to be passed as an event to your function. By default data is read from standard input.
 - --path or -p The path to a json file with input data to be passed to the invoked function. This path is relative to the root directory of the service.
 - --log or -l If set to true, it will output logging data of the invocation. Default is false.
_TAG_ lifecycle events
 - invoke:invoke
serverless invoke --function functionName
This example will invoke your deployed function on the configured Fn Api Url endpoint. This will output the result of the invocation in your terminal.
_TAG_ invocation with data
serverless invoke --function functionName --data '{"name": "Bernie"}'
_TAG_ invocation with logging
serverless invoke --function functionName --log
Just like the first example, but will also outputs logging information about your invocation.
_TAG_ invocation with data passing
serverless invoke --function functionName --path lib/data.json
This example will pass the json data in the lib/data.json file (relative to the root of the service) while invoking the specified/deployed function.
Have questions?


/dictionaries,
 it could take 10 or more seconds for your SR software to load
 or unload, and may be slow while processing your speech, causing
 short pauses in mIRC.
 2. Adding or removing commands can be done on the fly, however if
 your SR software is slow at updating the commands list, mIRC
 has to wait until it finishes.
81.Fixed custom dialogs DBU bug in dialog "size" item, was creating
 dialogs that were 10 or so pixels taller than they should be.
82.If a new window opens while you are in a dialog, eg. script editor,
 the new window no longer takes away the focus from the dialog.
 If you want to force a custom window to take focus, you can use the
 /window -a switch when creating the window.
83.The message highlight section in the Options/IRC dialog now matches
 against whole words, or words enclosed in non-alphabetic characters.
 You can use wildcards *? to make a word match non-whole words.
84./unset now evaluates variables inside [] brackets, this allows you to
 unset variables with dynamically created names:
 test {
 set %a [ $+ b ] 1
 set %a [ $+ c ] 2
 set %a [ $+ d ] 3
 unset %a [ $+ b ] %a [ $+ c ] %a [ $+ d ]
85./part can now close an open channel window while not connected.
87.Changed behavior of /disconnect and /quit, can now cancel a connect
 in progress.
88.You can now remove a nick from your Tab Key list with Control-D.
89.Added $mklogfn(filename) identifier, returns the filename format that
 the logging feature uses, $mknickfn(nickname) fixes a nickname for use
 as a filename, and $mkfn(filename), removes invalid characters.
90.You can now prevent a command from being processed as an alias by
 prefixing it with a! character, eg. /!command etc.
91.Added event: on 1:PONG:echo pong reply: $1-, note: you can't use this
 to intercept /pings to your own nickname, this is used internally by
92.Can now use $editbox(=name) for DCC chat editboxes.
93.Fixed a bug in sclick event for comboboxes in custom dialogs.
94.Made a change to the way sockets are closed throught-out mIRC.
95.Fixed bug in /did command causing hidden controls to become visible.
96.The "photo" display method of background pictures can now display
 pictures properly regardless of their height/width ratio.
97.The problem with the + character being changed to & in custom dialogs
 is now fixed.
98.Added.stamp property to $chan(), $chat(), $query(), and $window(),
 returns timestamp setting.
99.Added $dbuw and $dbuh, return dbu per pixel width and height.
100.Changed parsing method for most identifiers so that your custom
 identifiers will now work even if they begin with the same letters
 as internal identifiers.
 Directory related identifiers have not been updated, eg. $mircdir,
 $getdir, $cd, etc. since many widely used scripts append text
 directly to them, ie.:
 //splay $file="Select wave:" $mircdirsounds\
 Instead of using the (better) format:
 //splay $file="Select wave:" $mircdir $+ sounds\
101.Removed support for the very old $parm and *N identifiers.
102.Fixed bug in /drawrect, sizing was slightly off. You can now
 also specify negative values for the width/height.
103.Extended "Date filenames" feature to allow you to date filenames
104.Added support for single/double/paragraph line spacing in windows,
 can set default in Options/Display section, and for each window
 via the system menu.
105.Fixed bug in socket-related routines which may have affected IRC
 server connection, DCC Send/Get, and Custom sockets.
106.Changing the MDI/desktop setting of a window no longer makes mIRC
 forget the previously saved window position.
107.Fixed bug where mIRC was leaving tmpN.$$$ files in mIRC directory
 in certain situations.
108.Can now stop a /list on Undernet servers by selecting the "stop
 listing" item in the Channels List window menu.
109.Hotlink feature should be a bit smarter when matching nicknames
 to a link now.
110.Extended $os to detect 2000.
111.mIRC now re-adds its icon to the tray if the tray is restarted.
112.Added "copy messages to query" option in IRC dialog; if you're
 talking to a user in the dedicated message window and then decide
 to open a query to them, this copies the conversation you've had
 so far from the dedicated message window to the query window.
113.Can now specify a negative index in token identifiers, eg.
 //echo $puttok(a b c d, e, -2, 32) = a b e d
 //echo $instok(a b c d, e, -2, 32) = a b c e d
 //echo $deltok(a b c d, -2, 32) = a b d
114.$len() now returns 0 if passed an empty value.
115.Added $base(N,inbase,outbase,zeropad,precision) to convert number
 N from inbase to outbase. The last two parameters are optional.
116.Added $bfind(&binvar, N, M), searches a &binvar for a matching
 value, starting from position N. M can be a character value, ie.
 0 to 255, or text. The search is case-insensitive.
 $bfind(&test, 1, mirc) finds "mirc" starting from pos 1
 $bfind(&test, 5, 32) finds char 32 (a space) from pos 5
 $bfind(&test, 1, 87 65 86) finds WAV from pos 1
 You can use $bfind().text to force a text search if the search
 text is a number.
117.Sockets now have the "keep alive" setting turned on which should
 help keep a connection alive over extended periods.
118.Ctcp messages are now time-stamped.
119.$date now returns the full four-digit year. $ctime now also assumes
 the year 2000 if you specify a year <= 38.
120.$menu now works in mouse events in menu {} definitions.
121.Added "hide ping? pong!" option to IRC dialog.
122.Windows can now have their own timestamp setting independent of the
 global timestamp setting in the IRC/Messages dialog.
 You can now use /timestamp on|off|default, where default uses the
 global setting.
 You can also set the timestamp format using /timestamp -f [format].
123.Hotlinks now work on Tab-key nicknames that have messaged you in
 the message window.
124.Fixed bug in Display/Windows dialog when changing the MDI/desktop
 setting for windows.
125.Added $dialog().active property, returns $true if dialog is the
 active window, $false otherwise.
126.Added $longfn(), returns LFN version of a short filename, works
 only in 32bit mIRC.
127.Added /bcopy [-zc] <&binvar> <&binvar>
 This copies M bytes from position S in the second &binvar to
 the first &binvar at position N. This can also be used to copy
 overlapping parts of a &binvar to itself. If M = -1, all of
 the bytes from position S onwards are copied.
 If you specify the -z switch, the bytes in the source &binvar
 that were copied are zero-filled after the copy.
 If you specify the -c switch, the first &binvar is chopped to
 length N + M.
 Also added /bunset <&binvar>... <&binvar> command to unset the
 specified list of &binvars.
128.Fixed bug with /did -i adding CRLF when inserting into a single
 line editbox.
129.Fixed bug in /dccserver command.
130.Can now use $mid() without specifying the third parameter.
131.Added $appstate, returns minimized, maximized, normal, hidden,
 or tray, to indicate state of mIRC window.
132.Function keys in the message window work all the time now.
133.Made a change to the way $portfree() works.
134.If you try to use DCC Send/Chat/Fserve while they are locked
 in the lock dialog, you now see a lock message.
23/09/1999 - mIRC v5.61
1.Fixed lock dialog password bug.
2.Improved support for IRCX servers:
 Added property $nick().owner, isowner if comparison, and "q"
 property to $nick(#,N,aohvrq,aohvrq) where "q" is for owners.
 and $mode().owner/deowner properties.


First impressions about Rust
I finished my first patch with Rust! \0/ I don't feel specially proud of it but I'm happy because it is my first contribution to a real project. It has a lot of flaws and technical debt but this is only a prototype and a sandbox for Rust exploration.
In short, the experience is exciting followed by a deep sense of uncertainty, then frustration with a small pinch of enlightenment just to be followed by a rewarding sensation at the end.
You can see 4 cycles here, each with stages of excitement, uncertainty, frustration, enlightenment and finally, the step upwards depicts the reward.
It is exciting because it introduces a lot of new syntax (for me, a new, cool and different syntax compared with JavaScript or Python) with lots of annotations and symbols everywhere. I feel like engineering something precious, delicate but at the same time I feel confident on its robustness cause I'm adding tons of metadata for the compiler. Furthermore, I've followed some tutorials and the compiler errors seems very clear, they are even helping and advising me. I've read about borrowing, lifetimes and mutability but in the tutorials those never seemed to be a problem.
Then it comes uncertainty. I know what to do but I don't know how to write it. When learning a new language I lack from two things: a deep knowledge of the API and idioms. And idioms are the most important feature of a language because in the long term you prefer to read idioms. These are patterns that immediate associate with well know and repetitive behaviors. For instance. These three snippets do the same:
// Option 1
if let Some(value) = maybe {
} else {
 Err("Some error")
// Option 2
if maybe.is_none() {
 return Err("Some error");
// Option 3
maybe.ok_or_err("Some error")
My first approach was option 2. It is very similar to C or JavaScript. But then I remember the people that writes Python as it was C. I hate them. Probably I hate you. Naaaah… just joking. But as a Python and JavaScript teacher I try to explain why idioms matter. Then I turned to option 1 and only for this post and after investigating the Option API, I realize about option 3. Currently, I don't know what is more idiomatic but I would bet for the last option.
Once you are happy with your third refactor, you finally launch the tests and they fail… No, wait! That happens, but much later. First it comes the compiler, the type reasoner and the borrow checker. Let me illustrate the problem with an example. Suppose you want to test the former option 2: in play Rust… (no! no the f*ck*ng game, I did not play it yet but I already hate it), this play Rust(-lang). You want to enclose it in a function, then call it. No run, just see if it compiles.
My first try failed with:
:1:16: 1:22 error: wrong number of type arguments: expected 1, found 0 [E0243]
:1 fn test(maybe: Option) -> Result {
:1:16: 1:22 help: see the detailed explanation for E0243
:1:27: 1:33 error: wrong number of type arguments: expected 2, found 0 [E0243]
:1:27: 1:33 help: see the detailed explanation for E0243
error: aborting due to 2 previous errors
playpen: application terminated with error code 101
Read the errors. Try again… Seriously, read the errors. You'll discover that they make a lot of sense, Option must be an Option of some type so be it Result (but Result needs two types, one for valid values and other for errors).
The second try failed with:
:3:20: 3:32 error: mismatched types:
 expected 'collections::string::String',
 found '&'static str'
(expected struct 'collections::string::String',
 found &-ptr) [E0308]
:3 return Err("Some error");
:3:20: 3:32 help: see the detailed explanation for E0308
error: aborting due to previous error
playpen: application terminated with error code 101
Well, now it turns out string literals in Rust are not String but &'static str. What does it mean? That means reading the docs again. Fortunately the compiler gives you enough info to solve the errors. Uncertainty again, I could convert this &str to a real String (expected in the errors) but I'm happy with a Result of type &str (found in the errors). So, I modify the signature of the function and…
Bam! My third try failed again with:
:1:43: 1:50 error: missing lifetime specifier [E0106]
:1 fn test(maybe: Option) -> Result {
:1:43: 1:50 help: see the detailed explanation for E0106
:1:43: 1:50 help: this function's return type contains a borrowed value with an elided lifetime, but the lifetime cannot be derived from the arguments
:1:43: 1:50 help: consider giving it an explicit bounded or'static lifetime
error: aborting due to previous error
playpen: application terminated with error code 101
What the hell!? Ok, now I need a lifetime specifier. Lifetime specifier…, lifetime specifier… where are those bl**d* specifiers!? Oh, here! Well, you get the idea. This time the problem was I missed a lifetime specifier. As Rust needs to know how much this reference is going to live to check if the returning value lives long enough to not leave you with dangling pointers. Do you understand? Well, probably not, but I do (or at least, I did) which leads me to the next point: enlightenment!
The fourth try worked seamless.
Trying to figure out which kind of lifetime I want to assign for the returning structure, I though: I want these errors to be immortal strings (which translates into 'static lifetimes) in order to not produce new strings and reuse them. Suddenly, for a fraction of time, I understand everything: lifetimes, specifiers, elision and immortality (well… staticness) and then… it's gone. This is what I call enlightenment. No more than a fraction of second you understand what are you doing in this new context which is Rust.
Earth seen from the International Space Station
Similar to what astronauts call overview effect, this is what you experiment with Rust from time to time. When you are not fearing about the huge fall you have below.
Paradoxically, If I would read the errors from the second try more carefully, I should have read that the expected type was &'static str preventing me from the third try but at the same time impeding this moment of truth to happen.
The remaining sensation is rewarding. Bit after bit, I'll adapt my mind to these new memory and execution models. Reading articles, answers and books I will learn more knowledge about the internals of the data and execution models for Rust at the same time I will borrow some idioms.
Of course, once the code compiles, test are failing and the cycle repeats again. Most hard part is frustration and uncertainty (what else?) but it is completely normal. You can think of yourself as some kind of ninja or choosen-one inside your comfort zone. Modesty aside, I think this of myself when working on JavaScript or Python but when you are in the wild, failure is something normal. During these days, I even realized that my way of debugging / developing with dynamic languages is not suitable for this strongly typed language! But if it was easy, where would be the fun?
Look at those bullet holes on Neo shirt: failure is natural before enlightenment. Mr Anderson learned it the hard way.


text:
Understanding InnoDB clustered indexes
Some people don't probably know, but there is a difference between how indexes work in MyISAM and how they work in InnoDB, particularly when talking from the point of view of performance enhancement. Now since, InnoDB is starting to be widely used, it is important we understand how indexing works in InnoDB. Hence, the reason for this post!
The first and foremost thing to know is that InnoDB uses clustered index to store data in the table. Now what does clustered index mean?
A clustered index determines the physical order of data in a table. When thinking of a clustered index think of a telephone directory, where data is physically arranged by the last name. Because the clustered index decides the physical storage order of the data in the table, a table can only have a single clustered index. But, a clustered index can comprise of multiple columns (a composite index), in the same way as a telephone directory is organized both by the first name and the last name.
Clustered Index with respect to InnoDB
InnoDB stores indexes as B+tree data structures, and same is the case with the clustered index. But the difference is that in the case of clustered index InnoDB actually stores the index and the rows together in the same structure. When a table has a clustered index, its rows are actually stored in the index's leaf pages. Thus InnoDB tables can also be called index-organized tables.
Now lets consider how InnoDB decides which index to use as the clustered index!
How InnoDB selects a clustered index?
With InnoDB, typically PRIMARY KEY is synonymous with clustered index, but what if a PRIMARY KEY does not exist or there is not even a single index defined on the table. Then following is how InnoDB decides what to use as the clustered index:
- If there is a PRIMARY KEY defined on the table, InnoDB uses it as the clustered index.
- If there is no PRIMARY KEY defined on the table, InnoDB uses the first UNIQUE index where all the key columns are NOT NULL as the clustered index.
- If there is no PRIMARY KEY or no suitable UNIQUE index present, InnoDB internally generates a hidden PRIMARY KEY and then uses this hidden key as the clustered index. This hidden PRIMARY KEY is a 6-byte field that increases monotonically as new rows are inserted.
Hence, my advice is that always define a PRIMARY KEY for each table that you create. If there is no logical key that can be created, add a new auto-increment column, and use it as the PRIMARY KEY.
Did you know that Secondary Index is related to the Primary Key?
In InnoDB, every SECONDARY INDEX contains the PRIMARY KEY column(s) together with the column(s) of the secondary index, automatically. That is because of the way InnoDB stores data, remember what I just told you when talking about how data is stored, a leaf node doesn't store any pointer to the row's physical location, but in fact stores the row's data. So in other words the PRIMARY KEY is actually the pointer to the row data.
This makes us conclude on another interesting conclusion..
A secondary index requires two lookups! First a lookup for the secondary index itself, then a lookup for the primary key.
Advantages of clustering
Clustering provided by InnoDB has very significant performance benefits, some of which are mentioned below:
- Because the data is physically stored according to the PRIMARY KEY, data lookups by PRIMARY KEY is very fast. For example, the fastest way to find a particular employee using the unique employee_id column is to create a PRIMARY KEY on the employee_id column.
- With clustering, search for ranges can be extremely efficient. Suppose an application frequently searches records between a range of dates, a clustered index can quickly locate the row containing the beginning date, and then retrieve all adjacent rows in the table until the last date is reached. Thus improving the performance of range queries.
- Another positive impact of clustering is on the performance of sorting data. Suppose there is a column that is used frequently to sort the data retrieved from a table, it can be advantageous to cluster the table on that column to save the cost of a sort each time the column is queried.
- Also because clustered index holds both the index and the data together in one B-Tree, so retrieving rows from a clustered index is normally faster than a comparable lookup in a nonclustered index.
- Secondary indexes can act as covering indexes, when the data that is requested include the primary key columns, because of the fact that secondary indexes automatically include primary key columns.
These benefits that I have mentioned can boost performance drastically, if you design your tables and queries accordingly. But clustered indexes have disadvantages as well.
Disadvantages of clustering
Following are some of the disadvantages of clustering:
- If a large clustered index is defined, any secondary indexes that are defined on the same table will be significantly larger because the secondary indexes contain the clustering key.
- Because of the way how the data is stored, secondary indexes require two lookups.
- Clustered index can be expensive for columns that undergo frequent changes because it forces InnoDB to move each updated row to a new location.
- Insertions can be slow, if the data is not inserted in PRIMARY KEY order, hence we can conclude that insert speeds depend heavily on insertion order. Inserting rows in primary key order is the fastest way to load data into an InnoDB table.
Update (thanks to sunny):
Following is another thing that one should know regarding secondary indexes:
The records in InnoDB secondary are never updated in place. Therefore, what that means is that an UPDATE of a secondary index column means deleting the old record and inserting a new one.
Although, I did point out some disadvantages, but the fact is that these disadvantages can not be weighted down by the tremendous amount of benefits that comes with clustering in InnoDB. If you study and understand the aspects that I have mentioned in this article and apply them accordingly, you are going to see great performance enhancements. After all, clustering is another important step in bringing MySQL closer to MSSQL and Oracle.


Using Accented Characters In Excel
Adding accented characters into your Excel workbook is commonly achieved by using the Insert –> Symbol menu options to select the character you want, however while this is fine for inserting the odd symbol every now and again, if you have to enter lots of different symbols then things can become very tedious indeed.
Fortunately Microsoft have provided a fairly quick and easy method to enter the common accented characters by remembering a few shortcuts. It is possible to enter an accented character by one of two methods:
 1. By holding down the 'Alt' and 'Ctrl' keys, and then pressing the letter on the keyboard you want accented.
 2. By holding down the 'Alt' key and typing a number code on the numeric keypad.
Below is a table showing the most commonly used characters, just remember that when entering numbers you need to use the numeric keypad.
á Ctrl+Alt+a Á Ctrl+Alt+A
é Ctrl+Alt+e É Ctrl+Alt+E
í Ctrl+Alt+i Í Ctrl+Alt+I
ó Ctrl+Alt+o Ó Ctrl+Alt+O
ú Ctrl+Alt+u Ú Ctrl+Alt+U
à Alt+0224 À Alt+0192
è Alt+0232 È Alt+0200
ì Alt+0236 Ì Alt+0204
ò Alt+0242 Ò Alt+0210
ù Alt+0249 Ù Alt+0217
â Alt+0226 Â Alt+0194
ê Alt+0234 Ë Alt+0203
î Alt+0238 Î Alt+0206
ô Alt+0244 Ô Alt+0212
û Alt+0251 Û Alt+0219


text:
In Your Opinion:
Are Athletes Heroes?
Students participate in a classroom debate about athletes as heroes.
Students define the words debate, pro, and con. Students clearly express oral and/or written opinions about whether people should view athletes as heroes.
hero, athlete, debate, pro, con, issue
- teacher-selected and student-researched articles and commentaries about various athletes from print and/or online sources
- box or paper bag
- small slips of paper with the words pro and con written on them
Before teaching the lesson: Write the words pro and con on slips of paper. Put the slips into a box or paper bag.
Complete this activity over several days.
- Discuss the meaning of the word debate.Discuss examples of debate topics.
- Ask the following questions: In your opinion, what is a hero? Are athletes heroes? (If yes) What qualities make an athlete a hero? (If no) Why not?
- Tell students that the class will hold a debate on this topic. Explain general debating guidelines from teacher-selected resources or from An Introduction to the Debating Process and Debate Rules [scroll down the page]. Discuss the meanings of the words pro and con.
Find many more resources in the Education World article, It's Up for Debate and its accompanying Resources for Classroom Debates.
- Organize students into small groups or teams. Present the box or bag containing the slips of paper with the words pro and con.
- Have a student from each team pick a slip of paper from the bag or box to determine which side of the debate they will cover.
- Tell students that each group must research print or, if Internet access is available, online sources to support their side of the debate. Give students a few days to complete their research, write their position papers, and rehearse for the debate.
Hold the classroom debate.
Variation: Invite other classes in your grade to the debate. Let the visitors pose questions to the teams.
Extension: Ask students if their opinions about athletes as heroes changed as a result of participating in the debate.
Evaluate students' abilities to work in teams, position papers, and participation in the debate.
Lesson Plan Source