text:
A marking system for use with a multi-spectral imager for use in high throughput sortation of articles having distorted or irregular surfaces is disclosed. Specific uses include, but are not limited to, document sorting, garment and textile rental operations, laundry operations, and mail and package sorting and identification. Methods and apparatus are provided to remotely identify items via information that is wavelength-encoded within an applied mark, as well as a mark reading/decoding scheme. In the preferred embodiment the marks are multi-dimensional. In one preferred embodiment the marks are used to realize multi-dimensional wavelength-enabled coding schemes. The marks can be overlayed one upon another and/or they can contain one or more key regions having at least one predetermined spectral characteristic for providing information related at least to reading and/or decoding the marks.
1. A method for encoding information onto an article, the method comprising:
encoding information in accordance with at least one predetermined code scheme;
disposing the encoded information onto said article as a plurality of regions wherein each of said regions emits one of a plurality of predetermined wavelengths comprising a first set of wavelengths; and
applying at least partially over said plurality of regions at least one plurality of second regions that encodes information in accordance with the same or a different predetermined code scheme, wherein each of said second regions emits one of a plurality of predetermined wavelengths comprising a second set of wavelengths, and wherein at least one key region emits a predetermined wavelength for indicating at least one characteristic of said encoded information.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method as in
10. The method as in
11. A method for encoding information onto an article, the method comprising:
encoding information in accordance with at least one predetermined code scheme;
disposing the encoded information onto said article as a plurality of regions arranged in a two dimensional array wherein each of said regions emits one of a plurality of predetermined wavelengths comprising a set of wavelengths;
including with said encoded information at least one key region that emits a predetermined wavelength for indicating at least one characteristic of said encoded information.
12. The method of
13. The method of
14. The method of
15. The method of
16. The method of
17. The method of
18. The method of
19. The method as in
20. The method as in
21. A method for encoding information onto an article, the method comprising:
encoding information in accordance with at least one predetermined code scheme;
disposing the encoded information onto said article as a plurality of regions arranged in a linear array wherein each of said regions emits one of a plurality of predetermined wavelengths comprising a first set of wavelengths; and,
including with said encoded information a key region that emits a predetermined wavelength for indicating at least one characteristic of said encoded information.
22. The method of
23. The method of
24. The method of
25. The method of
26. The method of
27. The method of
28. The method of
29. The method as in
30. The method as in
31. A marking for an article containing encoded information, the marking comprising:
information encoded in accordance with at least one predetermined code scheme;
the encoded information comprising a plurality of regions arranged in a linear array wherein each of said regions emits one of a plurality of predetermined wavelengths comprising a first set of wavelengths; and,
a key region that emits a predetermined wavelength for indicating at least one characteristic of said encoded information, and wherein the characteristic indicates at least one of the orientation of the encoded information, the start of the encoded information, the end of the encoded information, the predetermined wavelengths, the predetermined code scheme, a shift in the predetermined code scheme and a shift in the set of wavelengths associated with the plurality of regions.
32. The marking of
at least one plurality of second regions disposed in a predetermined code scheme at least partially over said plurality of regions, wherein each of said second regions emits one of a plurality of predetermined wavelengths comprising a second set of wavelengths; and,
at least one key region in at least one of said plurality of regions and second regions.
33. The marking of
34. The marking of
35. The marking of
36. The marking as in
This patent application is a Continuation-In-Part of and claims priority from U.S. patent application Ser. No. 10/057,231 filed Jan. 25, 2002, now U.S. Pat. No. 6,598,112 which is a Divisional Application of U.S. patent application Ser. No. 09/726,950 filed Nov. 30, 2000, now U.S. Pat. No. 6,488,155 which is in turn a Divisional Application of U.S. patent application Ser. No. 09/379,062 filed Aug. 23, 1999, and now issued as U.S. Pat. No. 6,296,189 B1 on Oct. 2, 2001, the disclosure of which is incorporated by reference herein in its entirety.
This invention relates to systems and methods for marking and coding objects and, more particularly, to systems and methods for optically coding objects.
A class of industrial problems exists in which a large number of items must be separated, identified, counted and sorted. One example occurs in the textile service industry, wherein soiled garments or linens are returned in large unsorted groups for cleaning and sorting. Present day means for solving this problem cover a broad spectrum. One solution uses manual workers who sequentially sort among the many items, picking single items manually and identifying the items visually. This solution is unsatisfactory because it is both slow and expensive due to the high reliance on manual labor.
There are numerous coding and sorting systems presently available. Many of these industrial problems are not overcome by present systems, such as those employing bar codes or radio frequency identification (RFID). For example, a particularly challenging problem is the sorting of goods which are flexible and therefore may easily distort or shield a code. These items, which range in size from very small to large, are typically presented in distorted orientations and may undergo severe use cycles that can easily damage identification tags.
In addition, bar codes are highly susceptible to degradation through both soiling and wear. Furthermore, due to the precise spatial information required for a bar code (line width and spacing), any warping of the label (almost assured on a fabric substrate) can result in reading rates that are characterized by high rates of error. Finally, bar codes require line-of-sight and (generally) a specific orientation with respect to the detector, both of which are difficult conditions to satisfy under typical large scale laundry conditions.
In contrast, the radio-frequency ID technique does not suffer from the line of sight and soiling problems associated with bar codes. However, RFID remains expensive, both from initial cost and associated maintenance costs, and therefore is normally not economical for the rental textile industry. Furthermore, RFID tags have a tendency to exhibit cross-talk when they are in proximity to one another, which can preclude their use on closely-spaced sorting conveyors.
These are just some of the technological barriers to accurate machine identification and automated counting and sorting. The lack of a viable coding and sorting solutions has resulted in high labor costs, lack of stock control, and reduced profits.
In spite of these disadvantages, these technologies have provided significant benefit to certain applications. Such advances have been witnessed in applications where certain steps have been a rate determining factor. For example, the use of bar codes and RFID has provided for increased speed of identification in high speed coding and sorting systems.
Accordingly, many technologies have arisen to address certain aspects of high throughput coding and sorting applications. Many of the systems presently available rely upon optical properties.
One example is an indicia reader disclosed in U.S. Pat. No. 5,920,056 "Optically-Guided Indicia Reader System for Assisting in Positioning a Parcel on a Conveyor," Bonnet, issued Jul. 6, 1999. The system disclosed in this patent is limited, however, in that it fails to account for imaging of indicia having an appearance that may be distorted, such as by the wrinkling of the substrate.
Another patent that provides for remote identification of objects is U.S. Pat. No. 3,902,047 "Label Reader with Rotatable Television Scan" Tyler et al., issued Aug. 26, 1975. This system provides for rotation of the orientation of an optically read label by electronic means. However, as with the previous patent, it fails to account for imaging of indicia having an appearance that may be distorted, such as by the wrinkling of the substrate.
Another aspect of coding is presented in the U.S. Pat. No. 3,513,320 "Article Identification System Detecting Plurality of Colors Disposed on Article" Weldon, May 19, 1970. Weldon discloses encoding a number, where various code hues (wavelengths) in a single patch provide a unique signal. Coded signals in a series of patches provide for a message. Weldon further discloses the use of control patches, such as a central spot, that emits only one control hue (wavelength), for providing control of sensors used in readout tasks such as governing positioning of a readout system for addressing indicia comprising successively enclosing zones. As Weldon calls for use in some embodiments of a varied number of hues in each patch, the system may experience decoding problems in some applications, for example, where irregular patch geometries are presented. Accordingly, Weldon appears to require accurately and uniformly pre-positioning the patches on the object; and, in another embodiment, accurate control of the orientation of the substrate to provide for successful imaging (see, for example, the embodiment of
Thus, a technique that provides for a machine readable marking, where the marking may appear in an irregular or distorted form is needed. Preferably, the technology should offer the ease of use and the low cost associated with bar codes, and yet be more robust and tolerant of harsh or high throughput environments, such as large scale document and package handling facilities.
In U.S. Pat. No.: 5,881,886 "Optically-Based Methods and Apparatus for Sorting Garments and Other Textiles" one of the inventors of this patent application has described various methods and apparatus that also address the problems referred to above.
The foregoing and other problems are overcome by methods and apparatus in accordance with embodiments of this invention.
The teachings of this invention provide embodiments of a multi-spectral imager and the application of same for the marking and coding of, for example, textiles, linens, garments, documents and packages for high-speed machine identification and sortation. Specific uses include, but are not limited to, garment and textile rental operations, laundry operations, postal and mail sorting of documents and packages.
The teachings of this invention are directed towards providing methods and apparatus that are used to identify items via information encoded within an applied mark, as well as a mark reading/decoding scheme. The teachings of this invention are multi-faceted, and encompass a method of printing encoded information on an item, such as fluorescent bar codes, formed of a series of marks to generate a unique identification number or indicia, as well as a reader system for reading the applied encoded information. The reader system includes an illumination source that excites the fluorescent marks in combination with a color sensitive device, such as a camera, which can be configured so as to be "blind" to the illumination wavelength but which can discern characteristics such as the fluorescence color and the order of the fluorescent marks.
In the preferred embodiment the marks form multi-dimensional wavelength-enabled coding schemes. The marks can be overlayed one upon another and/or they can contain one or more key regions having at least one predetermined spectral characteristic for providing information related at least to reading and/or decoding the marks.
A method is disclosed for encoding information onto an article, and includes (a) expressing the information as, for example, a multi-digit number; and, (b) encoding the information as a plurality of regions, marks, or bars that are disposed using a predetermined code scheme. Each region emits one of a plurality of predetermined wavelengths to collectively establish a set of wavelengths. The method further includes (c) including a key region for at least enabling remote identification of the encoded information. The method may apply the plurality of regions to the article by printing the plurality of regions onto a label using a plurality of different fluorescent inks, and then affixing the label to the article, such as by a thermal process.
To readout the encoded information, the method further includes (d) illuminating the plurality of regions with excitation light; (e) detecting a plurality of resulting wavelength emissions from the plurality of regions; and (f) decoding the information from the plurality of resulting wavelength emissions.
The article can be identified from the decoded information, and a future path that the article takes can be controlled based on the decoded information. As an example, a controller can select a type of washing that the article will receive, and/or a storage location for the article can be determined, based on the decoded information. As another example, a mail piece may be sorted for distribution based upon decoded address information.
The above set forth and other features of the invention are made more apparent in the ensuing Detailed Description of the Invention when read in conjunction with the attached Drawings, wherein:
In accordance with aspects of this invention, a plurality of regions are applied to an article in order to form a mark that represents encoded information. Included with the plurality of regions is at least one key region that supplies the readout process with at least one characteristic related to the plurality of regions. The plurality of regions, and the key region, are formed of materials that emit a predetermined set of wavelengths under proper illumination. In preferred embodiments, fluorescent ink is used to form the plurality of regions and the at least one key region. The fluorescent ink may be applied using known techniques.
In preferred embodiments, key regions are characterized by wavelength emissions that are distinct from the wavelength emissions of the plurality of regions. The key region(s) carries additional information that relates to the encoded information. In some embodiments, a key region is signified by aspects other than unique wavelength emission, such as, for example, size or shape that is relatively distinct from the regions contained in the plurality of regions. In some embodiments, the key region may provide additional information that relates to the encoded information, and additionally carry portions of the encoded information.
Application of the Ink
In general, an applied fluorescent ink may be comprised of plastic fluorescent pigment and a phthalate ester plasticizer carrier. In a presently preferred embodiment of a formulation for a fluorescent impact printing ink, the preferred impact ink formula is 40 g/100 ml of fluorescent pigment/phthalate plasticizer. The phthalate plasticizer is preferably diisononyl phthalate. Other combinations of phthalate plasticizers, such as dioctyl, dibutyl, diethyl, etc. phthalate may be used as well. The only requirement is that the resulting phthalate ester/pigment combination does not soften a plastic cartridge that contains the nylon impact printing ribbon. The presently preferred fluorescent pigment is a finely-ground thermoset plastic resin which contains a selected fluorescent dye (such as one of the rhodamines) cross-linked into the matrix. Other embodiments include organic or inorganic phosphorescent and fluorescent pigments that are not significantly degraded by the expected environment of use, such as but not limited to, an industrial laundering process.
The selected inks can be applied with standard commercial dot matrix print cartridges, wherein each cartridge may hold, for example, three distinct optically active inks (e.g., red, yellow, green), and (optionally) a conventional black ink for printing operator-readable information. The labels 1 can be printed on durable thermal seal stock 2 and attached with standard heat seal equipment. A printer 4 is shown in
In other embodiments, the fluorescent regions 3 can be applied directly to the substrate article, or applied to a preexisting label previously affixed to the article, or applied to a removable (and possibly reusable) tag, or applied in any way that is suitable for the intended purpose of identifying, sorting and controlling the handling of the articles. The actual embodiment used, and manifestations thereof, may be dictated by various factors such as but not limited to, the needs of the user. For example, the marking of textiles in an industrial laundry may make use of direct marking on the material, whereas, addressing of mail pieces may call for use of a secondary label.
In further embodiments the foregoing teachings are applied to other objects for identification and sortation, including, by example and without limitation, mail pieces, packages, documents, financial instruments, boxes containing various types of goods, etc. One skilled in the art will recognize that a variety of applications may make use of this invention.
Example of Wavelength Encoding
In the example of
The coding scheme of
The exemplary embodiment of label 1 shown in
In the exemplary embodiment of
The plurality of regions 3 can be read by scanning in either direction (e.g., forward starting from a green key region 3-1A and ending with a yellow key region 3-1B, or reverse starting with yellow and ending with green), and the resulting code simply reversed if it is determined from the first region read that the plurality of regions 3 was read in the reverse direction. Preferably, the plurality of regions 3 are read in using the multi-spectral imaging techniques disclosed herein.
In other embodiments, only one key region 3-1A, 3-1B, is used for indication of a start or stop of a plurality of regions.
It should be noted that the label 1 can be coated after printing and thermal application to a garment or textile of interest. For example, an ultra-violet (UV) radiation curable clear coating may be applied to the label 1, at least so as to cover the plurality of regions or the bars 3, after printing and possibly heat sealing the label. The clear coating beneficially improves the wash characteristics. An example of such a coating resin is CraigCoat 1081 R, which is available from Craig Adhesives.
Aspects of Additional Embodiments
The teachings disclosed herein may employ any one or more of conventional coding schemes. For example, the teachings may be used with bar codes such as but not limited to, UPC-A, UPC-E, EAN-13, EAN-8, Code-128, and ITF (Interleaved 2-of-5), Code 39, and others. As used herein, these schemes, and any equivalent scheme are referred to as a "code scheme," or as a "predetermined code scheme." It is recognized that each of these code schemes provides a rule set describing the code, and aspects of the appearance of the code derived from the scheme.
Other aspects of a predetermined code scheme, as used herein, include consideration of the appearance of the regions. For example, the wavelengths used in the set of wavelengths, the size or shape of each of the regions, and other such factors.
Although referred to as being used for orientation and/or error checking, the additional regions, herein "key" regions, incorporated into the code scheme as disclosed herein, can be used for a variety of purposes. For example, one or more of the key regions may indicate the presence of a code, a certain orientation of a code, the identity of a code, or other aspects of a code. Furthermore, key regions 3-1A, 3-1B, may appear in a manner that is distinct and separate from the appearance of the code bearing (plurality of) regions 3. For example, in some embodiments, key regions 3-1A, 3-1B, may contain one or more wavelengths that are distinct from the wavelengths in the plurality of regions 3. The key regions 3-1A, 3-1B, may appear as a geometric figure, such as a triangle, or an ellipse which could be used for purposes such as an indication of code direction. An example is shown in
In other embodiments, the key region 3-4B is used to indicate a change in the coding scheme used. In this embodiment, a portion of the information is encoded using a first coding scheme, and at least a second coding scheme is used to encode the remaining portion of the information. The remaining portion is distinguished from the first portion by use of the key region 3-4B. In this embodiment, at least one characteristic of the key region 3-4B is distinct from the encoded information in the first and remaining portion(s).
In another embodiment, the coding scheme used may be switched to at least a second coding scheme on the basis of position, without the aid of a key region 3-4B. For example, where the information is coded using alphanumeric characters, the first three characters may be encoded using a first coding scheme. The processing routine makes recognition of some aspect, such as the type of code scheme used, the appearance of a certain character or other aspect, and then switches code schemes for decoding of the remaining portion.
In further embodiments, aspects of a key region 3-4A, 3-4B, such as but not limited to, size, shape, or placement relative to other regions, may be varied so as to signify certain additional information regarding the encoded information. For example, a key region 3-4A within the plurality of regions 3-4 may have a certain feature such as being enlarged, offset, or of a distinct shape, where the certain region is included to indicate a switch in predetermined code schemes for decoding of the remaining portion. For instance, in one embodiment, the key region 3-4B provides a signal to the decoding system that the remaining portion of the plurality of regions 3-4 are to be decoded using a different set of wavelengths.
Another example of the use of a key region to provide indications regarding the encoded information is given in FIG. 1E.
In other embodiments, any suitable data symbology may be encoded including letters of the alphabet, graphical symbols, musical notation, and the like.
Accordingly, one skilled in the art will recognize that an enormous variety of encoding schemes may be realized through use of this technique. This variety may make use of additional techniques, including but not limited to, incorporation of further coding schemes, and/or switching back and forth between codes.
Examples of Encoded Information
Further examples of aspects of this invention appear in
In this embodiment, the first plurality of regions 3-1 and the second plurality of regions 3-2 may be encoded in a manner wherein certain aspects consistent with the foregoing description of the embodiment of FIG. 1A. For example, an arrangement of green, yellow and red bars may appear in the first plurality of regions 3-1, while an arrangement of blue, orange and magenta bars may appear in the second plurality of regions 3-2. Use of a multi-layer arrangement as shown in
This embodiment may further provide for use of a single start or end key region 3-2A. Other variations of this embodiment include varying of the space between regions in the first plurality of regions 3-1, and/or the second plurality of regions 3-2. Introduction of a dimensional relationship between the regions within each plurality, and use of dimensional variables can provide for further unique combinations over a scheme reliant solely upon wavelength encoding. Further variations include shifting wavelength assignments, coding schemes and other aspects in relation to the appearance of a key region 3-2A. For example, encountering key region 3-2A may indicate that a first predetermined code scheme is switched to a second predetermined code scheme for decoding the remainder of the encoded information.
In the embodiment shown in
The array need not be regular as evidenced by the key region 3-3B, which is shifted vertically with respect to the other regions 3-3. The shift could further be useful for additional coding of information into the array 3-3. Such information could indicate an internal aspect of the coding scheme, such as a shift in coding schemes, or be a part of the coding scheme, and have relevance to the content of the encoded information. In further embodiments, the key region 3-3B may be signified by having a unique appearance, such as a smaller or larger size than other regions, having a unique shape or other characteristic.
Advantages of the incorporation of the key region 3-1A, 3-1B, 3-2A, 3-3A, 3-3B, 3-4A, 3-4B, 3-5A, 3-5B as disclosed herein includes, but are not limited to, the ability to remotely identify codes applied to an article. This provides for greater flexibility than available in coding applications that require fixed geometry, surface scans, or juxtaposition to a detector. Appropriately, the key region 3-1A, 3-1B, 3-2A, 3-3A, 3-3B, 3-4A, 3-4B, 3-5A, 3-5B maybe advantageously formed of inks such as the inks disclosed herein.
Exemplary Multi-Spectral Imaging System
A preferred embodiment of a multi-spectral imager, also referred to as a reader system 10, is shown in FIG. 2. The reader system 10 includes three major components, which are an illumination unit or source 12 to excite the fluorescence found in the regions 3 on the label 1, a synchronized color sensitive imaging system 14 to obtain image data that includes the label 1, and a digital image processing unit 16 for processing the image data.
To read the label 1 the reader system 10 operates as follows. First, the illumination source 12 is activated. The illumination source 12 may comprise, by example, a Xenon flash-lamp with a short-pass filter, or a light-emitting diode, or a laser, or an incandescent bulb, or even appropriately filtered sunlight. The output light excites the fluorescent regions 3 in the label 1, and the fluorescent emissions are detected by the color sensitive camera unit 14.
An example of a suitable color imaging system for the camera 14 is shown in
In this example, the camera unit 14 includes the three separate CCD arrays 14A-14C, each with a different long-pass filter 15A-15C. Long-pass filters are preferred because they are significantly less expensive than band-pass filters, and have other advantages which are detailed below in the decoding algorithm. However, band-pass and other types of filters can be used as well.
In general, the reader 14 may comprise a color sensitive CCD camera, a color sensitive CMOS camera, or a combination of two or more grayscale cameras with appropriate filters. The preferred data format from a color sensitive camera is YUV, since this format allows fast separation of the luma component and, therefore, fast spatial location of the imaged fluorescent marks or regions 3.
Assume, for example, the long-pass filter responses shown in
Reader 14 systems, such as the ones disclosed herein comprising a CCD camera, or a color sensitive CMOS camera, can further provide for the advantageous embodiments, such as those disclosed in
In another example, such as in the case of
Advantageous aspects of the use of the combination of such reader 14 systems and processing systems in combination with the embodiments disclosed herein, include, but are not limited to, the ability to perform continuous imaging and processing of a production line (limited only by aspects such as camera speed and processing power). Therefore, one skilled in the art will recognize that the teachings herein, in addition to addressing other needs, are supportive of high throughput systems.
The teachings of this invention provide a number of advantages and novel features. Examples of some of the advantages are provided.
For example, in some embodiments, such as some textile sorting applications, only the order of the bars 3 is relevant for decoding the label 1. Since the actual position is not important in these embodiments, distortions of the label 1 due to wrinkling of the fabric, etc., does not change the decoded output.
Another advantage recognizes that since the cameras 14A-14C can be looking in color bands that naturally show a low background fluorescence (unlike the case where ultraviolet illumination is used) the camera can be configured so that only wavelengths associated with the code itself appears in the field of view of the camera. This allows for a much faster location of the encoded information within an acquired image.
A further advantage is that even those codes represented by very faded bars 3 can still be successfully read by increasing the illumination power of source 12 and/or the gain (sensitivity) of the cameras 14A-14C.
In other embodiments, the scheme provides for a significant number of data combinations, or a compact display of data. Shifting of coding schemes, and other techniques disclosed herein, may be used to further provide for security of encoded information.
Further advantages include, but are not limited to, ability to decode information using remote imaging of articles in a high throughput sorting environment.
Processing Encoded Information
In order to successfully read a code from a label 1 the image processing software that executes in the digital image processing unit 16 (
At Block A the image processing software creates a two-dimensional image of the encoded information. At Block B, the algorithm locates and separates all of the region images, that is, the algorithm identifies and separate one from another individual one of the regions within the encoded information. The image processing software identifies the at least one key region 3-1A, 3-1B, 3-2A, 3-3A, 3-3B, 3-4A, 3-4B. In Block C, the processing software then seeks information on at least one characteristic of the encoded information on the basis of the key region information. For example, in one embodiment, the processing software makes reference to an informational table that correlates key region wavelength identity with a specific code scheme. In another embodiment, the processing software makes recognition of two key region wavelength emissions, thus providing for a determination of the orientation of the encoded information. In yet another embodiment, the processing software determines the dimensions of the key region wavelength emission, and calculates the proportionate image size of the encoded information. At Block D, the method determines the emission wavelength or color of each region 3, and at Block E, from the list of colors and the order of the bars 3, the algorithm decodes the information that was previously encoded into the encoded region of the label 1.
The first step (Block A) is preferably performed using a center-of-mass and eccentricity algorithm. In some embodiments, since the code appears in the image as a long rectangle, the label 1 can be located and oriented by first finding the center of mass of pixels above a certain threshold, and then by finding the orientation of the major axis around that center of mass. This allows multiple line scans to be taken of the pixel data across the plurality of regions in the direction of the major axis. A more sophisticated algorithm outlines and separates all bright areas appearing in the image, so that the need for the label to show all regions across a single line scan is eliminated. In this case, dots or any other shape could be used for each fluorescent region.
It should be noted that there is one important detail of the optical system that greatly simplifies the steps shown in Blocks A and B. That is, since the preferred type of filters 15A-15C are long-pass filters, the data in the shortest pass filter all look equally bright, i.e. the image appears to be an equalized gray-scale image, no matter what the fluorescence color of the each bar 3 happens to be. This would not be the case if band-pass filters were used. It is much simpler to locate and orient the code in this type of image, since one need not be concerned (at this stage) with the color information.
The use of long-pass filters, rather than band-pass filters, has a further advantage in the assembly of a multi-camera unit. If band-pass filters were used, the gray-scale image needed for code location and orientation would need to be synthesized from all three images, without a prior knowledge of where the code actually is in the field of view. If the synthetic color image is not perfectly registered in the space between arrays, the bars may not overlap one another and, therefore, can give false color information in the decoding step. If all bars can be precisely located in space, however, from one of the long pass images regardless of color, the need for perfect registration between arrays is relaxed. The precise location of a region is recorded in the first image and then the brightest part of that region can be found in successively filtered images using a very simple search procedure limited to a few pixels. This means that the mis-registration of the arrays can be corrected in software, and furthermore removes the need for micron-scale adjustment of the position and focusing of the arrays during the assembly step.
Once the line data containing the peak positions of the data (corresponding to each region 3) is located, the spatial position of each peak is discovered (Block B). The peak finding algorithm is preferably based on a pattern recognition algorithm which looks for a characteristic four-point signature at the inflection points of the smoothed data. The peaks are decoded and then sorted according to which peaks appear most like a typical region (which can be predetermined). The first N highest-scoring peaks are then retained, where N is the number of bars one expects to see (e.g., 16 in the embodiment shown in FIG. 1A). If less than N bars are found in the image, an error condition is indicated.
In Block C, the processor makes reference to external data to obtain at least one characteristic of the encoded information 3-4. For example, the key region information may indirectly provide information such as, but not limited to, the identity of the code scheme(s), the wavelength set of the plurality of regions 3, and other such information. Furthermore, the key region 3-4A, 3-4B may be used to provide information directly to the processor, such as orientation information. In one such embodiment, the processor determines relative positioning of the two key regions 3-4A, 3-4B, and accordingly determines the orientation of the encoded information 3-4.
Finally, once the regions are located the color information of each region is obtained (Block D). The color information contains, for an exemplary three color palette, three points per pixel. These three points are then run through a radial basis function neural network (which can be software running on the processing unit 16) to determine the color. The data in the pre-trained neural network is grouped, for example, according to number of wash cycles or central distribution location. This takes into account any overall data shift in the labels due to problems arising from wear, fading, etc.
Important features of the optically coded labels 1 include, for example: they can be thermally applied using heat seal backing (or simply stitched on as well), they exhibit durability that may outlast the article lifetime for many articles to which they are affixed, a high read accuracy (99%) is obtained, they also exhibit high readability under soiled conditions, and finally, reliable reads have been achieved at conveyor speeds of up to 10,000 items/hour.
Advantages of the optically coded labels include, for example, that they do not rely on a contrast-based technology, and soiling of the label has a greatly reduced effect on readability. Furthermore, since the coding is done by wavelength, and can be read using CCD, CMOS the labels can be read in any orientation. Furthermore, since the labels can be read using a non-scanning technology, an exemplary 12 inch field of view of the color sensitive camera 14 allows greater latitude when the items are in a production environment, such as on a conveyor, or, in the case of garments, when on hangers, which can exhibit swaying motions while conveyed past a camera unit 14 mounted next to the conveyor.
A code capacity of an exemplary multi-spectral imaging system operating in accordance with the present invention can be defined by the following:
Number of codes Nc=TN, where
As an example, for T=5 and N=10 (5 unique spectral signals in 10 positions), the total number of codes Nc=108.
Exemplary Application
Referring to
The linen and garment items used with the system 20 of the present invention include the labels 1, threads or yarn with photonically active materials. The photonically active materials are encoded in the labels 1, threads or yarn to identify the linen and garment items by, for example, wash type and storage category. The encoded wash types and categories are recognized by the central processing unit when read by a reader 10 in the system 20.
The linen and garment items used with the system 20 of the present invention preferably employ the labels 1 which leverage the signal-to-noise advantages of light emission with the high code densities of bar coding. Each label 1 contains, as described above, a series of lines or bars 3 that emit one of several wavelengths to represent a unique number. Since the label 1 emits wavelengths of light, rather than reflecting incoming light, as with bar codes, they are highly tolerant of soiling and wash fading.
The labels 1 of this invention need not depend on the thickness of the printed lines or bars as is the case in bar code technology. The encoded information of the label 1 can be contained in the wavelength domain, and in some embodiments, in the spatial sequence of wavelengths. Any of the marking and coding schemes shown in the
Thus, while the invention has been particularly shown and described with respect to preferred embodiments thereof, it will be understood by those skilled in the art that changes in form and details maybe made therein without departing from the scope of the invention.
Patent Citations
Non-Patent Citations
Referenced by
Legal Events
Original Image


text:
Author gives firsthand account of workings of curan- derismo
When he was growing up in Taft, Eliseo "Cheo" Torres was cured of susto shock by a local curandera, folk healer.
In his new book, "Curandero: A Life in Mexican Folk Healing," Torres takes the mystery and fear out of curanderismo, the art of folk healing through the use of traditional costumes and herbal remedies. Along the way, he persuasively argues that this practice, prevalent in South Texas, should be an accepted form of alternative medicine.
Torres, a former administrator at Texas A&M University-Kingsville and now vice president of student affairs at the University of New Mexico in Albuquerque, wrote the book with Timothy Sawyer, a public information representative at the university. But this is "Cheos" work, and there is no mistaking his expertise.
The book, colorful in its descriptions, provides a detailed account of how herbs can cure common ailments. Torres gives many accounts of curanderos in the Corpus Christi area and details visits of the healer Chenchito to Corpus Christi, Taft and Kingsville.
He also prominently refers to South Texas educators I.Q. Vidaurri, former dean of students at Texas A&I University, and Leo Carrillo, former A&M-Corpus Christi professor.
He writes about the areas most prominent healer, the folk saint Don Pedrito Jaramillo, whose gravesite in Falfurrias still is visited yearly by thousands of pilgrims and believers.
Torres relates the powers of folk medicine and details the world of Mexican yerberias (herbal remedy shops abundant in South Texas and the Southwest). His wit and wisdom make readers comfortable as he describes the mystical shops laden with magical bottles, barrels, jars, crates and boxes filled with myriad herbs that can cure todo (anything).
Suddenly, nothing is scary about the shops that hang dried frogs, snakes, bats and sea urchins from their ceilings. All have a purpose and are used to cure ailments, Torres assures the readers.
Written in clear storytelling form, the book draws from Torres experiences and gives first-person accounts of meeting famous healers. He also tells of his mothers influence on his interest in folk healing and how it led to his becoming an authority on the subject. He details its history when it was essential in areas that lacked trained doctors, when scientists chastised it and when it again became accepted.
Torres proves his storytelling ability when he discusses his arduous, life-changing pilgrimage to the rural village of Espinazo, Mexico. Torres develops each of his key figures much like Rodolfo Anaya in "Bless Me, Ultima" and, in parts, closely parallels Carlos Castanedas writings in "Journey to Ixtlan," as he relates his own knowledge to curanderismo.
Like curanderismo, the book is part legend, part history and part folk tale. Readers will be entertained, enthralled and mystified. Some even will laugh and shake their heads at this mans journey from a child being cured of susto by a curandera, to a college professor teaching curanderismo.
Manuel Flores, a Tejano historian and journalism professor at Del Mar College, is president of the Mexican American School Board Association of Texas and the Corpus Christi Independent School District Board of Trustees.
Subscribe to the Caller-Times
Need Help? Call us at 1-800-566-8098.
Monday-Friday: 6am-3pm / Saturday: 7am-11am / Sunday: 7am-11am

subset: commoncrawl


text:
Hold down Control (PC) or Command (Mac) key + mouseclick to select more than one option
|Avg. Dinner Entrée
|Greater than $25
|$18.01 - $25
|$12.01 - $18
|$7.01 - $12
|Less than $7
Posted by Ashley on 08/17/2012
Outstanding customer service, great food, and extremely fast delivery!
Posted by Anonymous on 03/01/2012
I ordered for the first time since I got home late from the gym and my options were limited. Their menus were randomly in my mailbox one day, so I decided to try them out. Big mistake. I thought I was getting somewhat healthy dishes with eggplants and veggies, but instead got containers that were over 50% full of grease with mostly sauce and a few veggies and meat floating in the mix. Needless to say, I was very disappointed. The noodles were also floating in grease. The only highlight was the mango and papaya smoothie which was pretty good.
Posted by Chicago_717 on 10/06/2010
Speaking as a Chinese, this is one of the better Chinese food places in Chicago. Dishes are not too greasy, the menu is actually fairly authentic and not American-Chinese, fairly diverse, preparation is pretty decent, and price is good. I've tried other recommended places (Lao Sze Chuan, that Beijing place, etc) and found them all too salty and greasy, and often taste like stale oil. It's one of the few places in Chicago so far that I revisited. I'd describe the style as modern home-style Cantonese. If you come you'll see this place has more Chinese customer than all other places in the mall, for a good reason.
Posted by anonymous on 12/28/2009
Chi cafe is opened really late with a nice roomie atmosphere so its a good place to go late nights. But the food isn't that good. Its only average at best. Small quality of food for the price that you're paying. I would only go there when I'm desperate for food since its open late and delivers.
Posted by Fran on 01/06/2009
The Chi Cafe in Chinatown is truly a hidden treasure. The service is outstanding! From the moment you arrive, you're greeted by a friendly waitor who gladly sits you and your party wherever you wish to sit and the service is quick. The menus are darling, their tea is amazing, the food is delicious, and it's affordable. As for the atomoshpere, it's a bit loud but it's not obnoxious. It's a friendly cafe that I highly recommend.


text:
Saturday, November 3, 2012
Mexican Chocolate Coconut Macaroons (Paleo, Egg/Grain/Dairy Free)
9 comments:
hey there! this recipe looks and sounds delicious, and I'm just now finding your website and freaking out a bit over all these allergen-free recipes to try.ReplyDelete
thanks for the hard work you do!
can't wait to get cooking!
- AnonymousNovember 3, 2012 at 7:02 PM
Mmm these are delicious! As soon as I read the recipe I went and made up a batch. I have been on my 'paleo' journey since the start of the year and can't believe I have only just stumbled upon your blog! It looks fantastic, I am going to be trawling your archives this week :) Thanks for all the work you put in to it! JoleneReplyDelete
Oh my, these look heavenly! I can't wait to make these...they would be perfect to wrap up and give at Christmas time!ReplyDelete
These look great! I was wondering if I could have permission to share your photos on my blog and / or Facebook (with credit of course) - I know my readers would love your work. Thanks in advance!ReplyDelete
Hi again! I just had to stop back over here after really looking over your post at AAG. I was so thrilled to see the quote from Li-young Lee! We had dinner with him about 4 months ago. My husband is an English Professor and we had the pleasure of spending several hours with him.ReplyDelete
So nice to see his work on a whole foodie post :-)! I am going to forward it to him. I am sure he will be pleased. He has a very special spirit.
Lol that is so awesome. My husband is kinda freaking out right now! Li-young Lee is his favorite writer and a huge influence on his writing!ReplyDelete
Oh my goodness! These look so good. I am going to have to try them. Great blog btw.ReplyDelete
So beautiful! These look amazing!ReplyDelete
Those look amazing!ReplyDelete


text:
In John's Creek, Chiropractic patients can choose a Chiropractor with state-of-the-art services in a loving family-friendly atmosphere. Dr. Chris Axon is the Chiropractor in John's Creek who wants you to get well – live well – be well.
At Johns Creek healthcare, we focus on much more than alleviating pain. In our John's Creek Chiropractic office we offer the whole family a wide range of wellness programs and services to get you healthy and keep you healthy, including:
Medical Weight Loss Nutritional Counseling Chiropractic Care
Exercise & Rehab Therapy Electric Muscle Stimulation HCG Injections
Adrenal testing Postural Rehab Joint Injections (Supartz/Hyalaronic)
Trigger Point Injections Nutritional Counseling Lipo-B12 Injections
Massage Therapy Thyroid Testing Neurotransmitter Testing
Bioelectical Impedance Analysis Hormone Replacement Therapy (HRT)
Johns Creek Healthcare | Dr. Chris Axon
5400 Laurel Springs Parkway, Suite 801
Suwanee, GA 30024
(770) 889-4800 Fax: (770) 889-4921


text:
Pregnant Perfect during pregnancy
After Nursing or just after birth
Forever Wear even when not pregnant
Pregnant Perfect during pregnancy
After Nursing or just after birth
Forever Wear even when not pregnant
If you're in need of a more structured, tailored approach to office dressing, look no further than the heavy jersey Marlow Maternity Tab Dress with a gold–tone button and tab detail at the waist. Pleat detailing and the sculptural finish on this punchy Peony pink or classic Caviar Black piece accommodates the bump perfectly and will continue to feel flattering and stylish post–pregnancy. Pair with understated black mid–heel courts and complement with minimal gold jewellery.
For style advice, sizing queries or to book a free online styling session, please contact our eStylist team here.
Need Help with Sizing? -To keep things simple we've designed our maternity clothes in line with your pre-pregnancy clothing size. For more size information click the sizing link above, or if you need further assistance please contact our Customer Service Team who will be delighted to help
Find out more about all shipping options and timescales.
We hope that you will be truly delighted with your purchase, however we know that judging your size can be difficult during the early stages of pregnancy. That's why we offer you a full refund for full price unworn items, in their original packaging returned within 30 days of delivery.
Sale items must be returned within 7 working days of delivery.
View the complete Returns Policy here.
*Restrictions Apply
3rd November 2014
love the colour and its smart


text:
Rachel Schreiber
Director of Humanities and Sciences Rachel Schreiber is a media artist, writer, and cultural historian. Her writings have been widely published, and her visual work in video, digital media, and photography has been exhibited internationally.
Her research interests center on gender and visual culture, with a particular interest in the intersections of class, gender, and ethnicity in representations of labor and activism. Her current photographically based projects use public sites to present highly visible portraits of workers whose labor typically remains invisible within our society.
Schreiber has been teaching media arts, critical theory, and cultural history since 1996. Before coming to CCA she taught at the Maryland Institute College of Art in Baltimore, Maryland.
Schreiber's video, photographic, and Internet-based works have been exhibited widely at venues including The New York Video Festival; The World Wide Video Festival, Amsterdam; Art in General, New York; The Judah Magnes Museum, Berkeley; The Contemporary Jewish Museum, San Francisco; and the Visual Studies Workshop, Rochester, New York.
Her book, Gender, Activism, and a Little Magazine: the Modern Figures of the Masses was released by Ashgate Publishing in 2011, and her new book, Modern Print Activism in the United States is due out in early 2013. Her articles have been published in Feminist Studies, The Journal of Modernist Periodicals, Hyphen Magazine, Afterimage, and the New Art Examiner.
Website: www.rachelschreiber.com


text:
Steve Madden CinchSKU: #8214122
Product Information
- Staying on the front side of fashion is a cinch with these cute booties!
- Back-zip closure.
- Suede upper with distressed toe and heel.
- Open panels and buckle details adds visual appeal.
- Man-made lining.
- Lightly cushioned man-made footbed.
- Stacked heel.
- Man-made sole.
- Imported.


text:
A sumptuously illustrated picture book by the author of the bestselling THE BOOK OF GODDESSES.
When Persephone bends down to pick a blood-red narcissus, the earth suddenly splits in two. From the abyss a golden chariot appears, and its mysterious driver drags Persephone into the crevice. Then the earth seals shut with a shudder. Deep in the darkness of the underworld, Persephone discovers that she has been abducted by Pluto who loves her and makes her his queen. But Persephone is inconsolable, knowing she will never see the sun or her mother Demeter again.
Then the grief-stricken Demeter, goddess of the harvest, refuses to allow spring to return unless she is reunited with her daughter. And as the earth becomes frozen and the wheat fields barren, the survival of the earth is uncertain. Will Pluto free Persephone, or is the earth doomed?
Kris Waldherr's breathtaking illustrations, filled with mystery and magic, enrich this haunting Greek myth that will linger in the mind long after the last page has been turned.
praise and reviews
"Waldherr's Pre-Raphaelite characters play out their drama against a vivid sword-and-sorcery landscape. . . . Mother and daughter dance through an enchanted woodland; rearing black horses erupt in fire from a crack in the earth. The dramatic oil paintings are matched by a quality of myth and magic in the prose."
—The New York Times Book Review
"A beautifully done retelling of the major mother-daughter myth."
—Jean Shinoda Bolen, PhD., author of Goddesses in Everywoman


text:
This is a quick tutorial on Markdown. It is meant to cover the 80% most commonly used scenarios. This guide is based on my experience. This takes care of most of my markup needs. Hopefully it will take care of yours too.
This page is heavily based on the wikipedia's markdown article. If you want to experiment with the syntax and see feedback right away, please visit Jon Combe's markdown online editor. Using his editor and reading any guide will lead to the fastest learning.
Reference pages:
Wikipedia's markdown page
Markdown syntax
Use two spaces at the end of a line
Uses hashes #
# What I did this summer ## Staring at the ocean
Use stars * for undordered lists.
Nest them with a space.
* Groceries * Milk * Bread * National Review
Use numbers for ordered lists
* Why my mother-in-law is zany 1. She loves rape stories 2. She believes TV hype 3. She is into the English royal family, yet is an anti-monarchist
For italics, use * or _ around the word
"Hello, *sweetheart*." "Umm, I have to go _now_."
For bold, use double ** or __ around the word
He was **lying**. He met the __president of the United States__.
Use the parens-braket format [link text here](url_here)
[Sexy stuff that floats your boat on youtube!](http://youtu.be/b1WWpKEPdT4)
Use a modified link markup of ![alternate text](url to image)
![Honey Boo Boo](awesome_pics/honeybb.jpeg)
Use a > in front of the quote
> One word: finance! The future is all about finance! If I had to do it again, I would latch on it, son.
Use 4 spaces indent before the text with an empty line above it
A person in twitter brought to my attention this great series of arduino videos by one of the co-creators of Arduino, Massimo Banzi.
I decided to use U.S.'s Thanksgiving day to build circuits with my kids. So after looking at the list of available videos, I decided to build the theremin one.
Massimo is one of the most charming tutorial hosts that I have seen. His explanations of how to build the circuit are clear. I watched and built along with my 7-year-old. If you have the parts, then you should be able to build something within 30 minutes. It took me longer since I had to forage in my junk drawer for some parts. I also had my son build the circuit, so that slowed things down a bit.
He loved the whole experience. We first got the speakers out from some JetBlue earphones that I got at some point. He enjoyed seeing the speakers coming out of the case. Then he played a little bit with the cases. He was very intent and focused while we were putting the circuit together, but he lost a bit of interest when I was writing the code, which I expected. He did love to change the noise that was coming from the speaker. For some reason it sounded like R2D2. This made my son jump with happiness.
There was a minor glitch with the code describing the variables not matching Massimo's description of them, but his description was enough to include the right values in it. It would be nice to have the circuit diagram and code, even if it were just the image, but Massimo explained in the youtube comments that that information comes in RS's Arduino Started Kit. RS created these videos to support their kit, and were kind enough to share them with the world.
Still, if you are starting with the arduino or you want to help someone else to get started, these videos are a great resource to get cool project quickly done and to feed your imagination for things to do later.
The script will create a bash script that will ease using ssh to log into a Vagrant box in Windows.
The dependencies for this script are: Cygwin, cygwin's open-ssh, ruby 1.9.3, Vagrant, and Windows
The cheerful, but longer story
When you install Vagrant in a unix-based machine, and that is linux and macs, Vagrant automatically gives you the command "vagrant ssh" to log into your machine. It is so beautiful! Unfortunately Windows doesn't ship with an ssh client that the maintainers of Vagrant can use to create that automatically configured script. So their solution is not to create that script at all. Instead they give you some nice instructions on what to you.
I use cygwin as my command line shell when working on windows. That means I am using cygwin all the time. So I installed open-ssh via cygwin. So everything should be fine, right? No. It ends up being a huge drag to write the command line to get vagrant working. After doing searches twice to get ssh and vagrant working, and I decided that instead I would write a little script that would parse the vagrant output with the instructions for logging into vagrant.
To run it this script, you go to the directory name, start the vagrant box, and run the script. I called it easy_vagrant_ssh.
cd <vagrant directory name> vagrant up ruby easy_vagrant_ssh
require 'open3' # This is where the magic happens!!! # In other words, it took me a while to figure out what I was doing here # right before I wrote this blog post. # I am executing the shell command "vagrant ssh" and returning the output. def get_input() command = "vagrant ssh" stdin, stdout, stderr = Open3.popen3 command result = stderr.readlines end # This method parses the output that vagrant gives you with instructions on # how to ssh into the vagrant box def gather_values(input) result = {} input.each do |line| words = line.split ": " if words.first =~ /^Host/ result[:host] = words[1].chomp end if words.first =~ /^Port/ result[:port] = words[1].chomp end if words.first =~ /^Username/ result[:username] = words[1].chomp end if words.first =~ /^Private key/ result[:private_key] = words[1].chomp end end result end def create_command(values) result = "ssh #{values[:username]}@#{values[:host]} -p #{values[:port]} -i #{values[:private_key]}" end def create_file(command) file = File.open "vagrant_ssh", "w" file << command end def run_script() input = get_input values = gather_values input create_file create_command(values) end run_script
Now you only have to run the bash file that it is created, which is called "vagrant_ssh". Not as nice as typing "vagrant ssh" but close enough.
You probably need to move code in an existing folder to Eclipse. This is the work around for starting to work with existing php code in Eclipse PDT in Windows 7. Don't follow these steps if you have your code in a VCS; there are other steps for dealing with that scenario, and those steps are not covered here.
Moving existing source code into a new project in Eclipse
1. Set the workspace one directory above where your existing code lives.
2. Create a new PHP project via File->New->PHP project
3. Create a new project with a different name from your current folder. Make sure to select Create new project in workspace under Contents. Don't pick Create project from existing location. It doesn't work
4. Once your project is created, go to File->Import. Select General-> File System.
5. At the From directory field, pick the folder where your current code exists. Then click Select All. Click on Finish
The long story
I want to like eclipse. I really do. I like the idea of it. I like it how it is open source and how anyone can create a new distribution for different languages.
Yet Eclipse makes it so hard to be loved. It turns what should be a thoughtless task into a research project.
At least I believe that setting up a new project and importing existing files into it should be easy. And when UIs don't actually work as they claim they should, the experience of using eclipse is a mixture of confusion and frustration.
So look at this UI for creating a new project. The UI is clearly telling the user that one should be able to create a project from existing source files. Excellent! That is what I want!
However, when you try it, it won't work. It will give you an error that says, " Cannot create project." Below is a warning that says, "The specified external location already exists".
Why doesn't it work? Search the internet, and maybe you will be looking to find this page:
Where several people describe how the UI does work in linux for java, or that it is only meant for folders under the web server root. It is unclear what is going on. The bottom line is that it just doesn't work. It wasn't working in 2006, and it isn't working now. The thread has several workarounds, but the only one that worked with the current version is the one that I shared at the beginning of this entry.
So the task I had was to conditionally hide two fields in drupal CCK custom content type. When the record had one of three values in a select field, it should show the upload file fields. Otherwise it should hide it.
This is pretty straightforward in a regular module. One makes the changes in hook_form_alter. To hide, we would unset the fields.
function random_module_form_alter(&$form, $form_state, $form_id) { // make your changes here: change values, set defaults, hide fields // the easy life! }
This won't work if one is using CCK. The reason for that, as webchick explains in her blog entry, is that CCK fields are not present at hook_form_alter. She then presents the right approach, which is to use form API #after_build.
/** * Implementation of hook_form_alter(). */ function example_form_alter(&$form, $form_state, $form_id) { // Check for a particular content type's node form. if ($form_id == 'example_node_form') { // Add an after_build function to process when everything's complete. $form['#after_build'][] = 'example_after_build'; } } /** * Modify CCK form elements on the example node form. */ function example_after_build($form, &$form_state) { // TODO: Stuff! return $form; }
This is the basic code structure for solving this problem. From this point, it should have been easy, right? Wrong. I ran into two problems: getting the values from the form and reaching the right form field to turn off.
The most natural solution for getting a value and setting a field to hide is to just reach for that field in the form
$value = $form["height"][0]["value"]; unset($form["height"]);
However, when dealing with CCK fields, the first one won't work, and the second one, in drupal 6, according to a stack overflow thread, can be dangerous since it can do unpredictable things.
So I examined the form object via print_r($form); followed by an exit; statement. There I saw that I could reach for the field that I wanted via $form["#node"]. This returns the node object.
$value = $form["#node"]->height[0]["value"];
Then I attempted to hide the field by unsetting the node values. This was a mistake, since the node object doesn't have anything to do with the form. Yet I couldn't find the form entry for the fields that I needed. Reading through the comments of webchick's entry, someone mentioned the field groups. Ah! Looking back, it seems self evident. I needed to reach the field via the group field first. And following the direction given in the stack overflow page, hiding the field uses the following syntax.
$form["measurements_group"]["height"][0]["#access"] = false;
Altogether, the code to hide a field in a CCK content type form looks like this:
function example_form_alter(&$form, $form_state, $form_id) { if ($form_id == 'measurements_node_form') { // Add an after_build function to process when everything's complete. $form['#after_build'][] = 'example_after_build'; } } function example_after_build($form, &$form_state) { $show = array("Edit more", "Incorrect"); $term_id = $form["#node"]->height[0]["value"]; $term = taxonomy_get_term($term_id); if ($term->name != "" && !in_array($term->name, $show)){ $form["measurements_group"]["height"]["#access"] = false; } return $form; }
drupal 6 api on hook_form_alter
stack overflow
webchick's blog on hook_form_alter and CCK on drupal.org
I just ran into an interesting issue related to data binding. I have a custom control in a windows forms application that manages the app's configuration. I also have a configuration object. The control is the view for the configuration object.
I had bound the object properties to controls using the following idiom
private void bind() { SeeRectangle.DataBindings.Add("Checked", configuration, "ShowAnswer"); // Checkbox OrderingTypeSelection.DataBindings.Add("SelectedItem", configuration, "OrderingMode"); // ComboBox AnswerPath.DataBindings.Add("Text", configuration, "AnswerPath"); // TextBox }
When adding a data biding via the Add() method of the DataBinding specialized collection, the arguments are the property of the control that will be bound, followed by the object that we will bind with, followed by the property of the object that is binding. The checkbox and combobox worked fine. I wasn't getting expected results with the textbox binding.
I had tried to assign the value of the Text property of the textbox with the following code
var openDirectory = new FolderBrowserDialog(); var answer = openDirectory.ShowDialog(); if (answer == DialogResult.OK) { if (configuration != null) { AnswerPath.Text = openDirectory.SelectedPath; } }
And the textbox was correctly assigned. However, the binding with the configuration object kept failing. What I discovered was that there must be an event that is not triggered when assigning values via code. If I changed the values in the textbox, the assignment would happen.
So the workaround was to explicitly assign the value from the FolderBroswerDialog to the configuration object.
var openDirectory = new FolderBrowserDialog(); var answer = openDirectory.ShowDialog(); if (answer == DialogResult.OK) { if (configuration != null) { AnswerPath.Text = openDirectory.SelectedPath; configuration.AnswerPath = openDirectory.SelectedPath; // <--- the solution } }
Last week we went to the Science and Engineering festival in DC. Among the great swag that we got was a couple of circuit kits from sparkfun designed to teach one how to solder. My daughter had done the Parallax "learn how to solder" activity at the festival, so we donated some money and got two kits, one for her, and one for me.
I did mine today. It is a Simon Says game, and I was pretty pleased with how well I was soldering. I had tried it before, but I think I kept missing the right combination of soldering iron and the correct solder with for electronics. Most of my dots were pretty, except for some necessary big blobs that I needed to make to connect the battery holders; those were horrible. Admitting that fault, I was pretty happy with my job soldering the micro-controller. I had previously had problems soldering a 555 chip, so to be able to solder way more leads successfully made me happy.
Looping is a fundamental concept in computer programming. And to most programmers familiar with imperative c-syntax languages, it looks something like this:
foreach (var s in stringList) { doSomethingTo(s); }
The idiom is simple: we are going to go through each item in the list, and we will process that element in some manner. In most cases, we are either transforming each element, we are filtering the elements, or we are carrying out some sort of accumulation. To know which of these actions is being carried out we would have to read carefully what is happening in between the curly brackets.
So, looking at the code, we instantly know that we are doing something with every element. But at a glance we don\'t know what that something is.
Functional programming gives us three (3) functions to loop through lists. These are map(), filter(), and fold(). The final result between imperative looping and the functional functions is the same, but we gain semantic clues with the functional functions to what the looping id doing.
C# is a remarkable language. Although it was born as an imperative language, it has been supporting more and more functional operations through linq. Below I will briefly describe the three looping functions, and then I will show its imperative equivalent, followed by its equivalent in using linq.
map() will take a function followed by a list. Each element in the list will be transformed by the function, and the output will be a list of transformed values. In haskell it looks like this
x = map (* 5) [3,4,5,6,3]
Translated into imperative C# code it looks like this:
var result = new List<int>(); var list = new list<int> { 3,4,5,6,3}; foreach (var n in list) { result.Add(5 * n); }
In linq, to express the above function, we us the select query thingy and write
var query_result = (from n in new List<int> { 1, 2, 3, 4, 5 } select n * 5).ToList();
Sometimes we use loops to filter values out. Functional programming languages have filter(), which takes a predicate function, one with a condition, and a list, and returns a list that meets the filter condition.
x = filter (> 5) [3,4,5,6,3]
Its procedural code in C#:
var result = new List<int>(); var list = new list<int> { 3,4,5,6,3}; foreach (var n in list) { if (n > 5) result.Add( n); }
And its functional version in C# via linq. For filter, we mainly use the where clause in a linq query.
var query_result = (from n in new List<int>() { 1, 2, 3, 4, 5 } where n > 5 select n).ToList();
The final looping case that I will show is aggregating a value, such as a total from all of the numbers in a list. This operation is called fold in functional programming, since the person naming the function imagined a paper list of values being folded one at a time. foldl takes a function, a list, and an initial value.
x = foldl (+) 0 [3,4,5,6,3]
This is equivalent to procedural C# to
var result = 0; var list = new list<int>{ 3,4,5,6,3}; foreach (var n in list) { result += n; }
In functional C# via linq we write:
var query_result = (from n in new List<int>{ 1, 2, 3, 4, 5 } select n).Sum() ;
The above was shown to keep the parallelism between the examples. In actual use, one would most likely use a IEnumerable
var result = new List<int> { 1, 2, 3, 4, 5 }.Sum();
As we have seen, the functional methods map, filter, and fold have an semantic advantage over procedural looping in that they clearly tell you what the looping is doing. C# has the capabilities of doing functional statements. Although not giving the same terse syntax or its immediate semantic meaning, the linq functional-like methods approximate functional terseness and reduces, although not eliminates, the semantic ambiguity the semantic ambiguity that procedural loops have.
While working on a personal project, I ran into the following case. I wanted method load() to take a hash with values. If a key in the hash exists as an instance method, then assign the value from the input hash to it. I could have coded around it using an array with the names of instance variables and working from there, but, where is the fun in that? Besides, I knew that I could use this as a concrete meta programming exercise for myself.
1. I made sure that accessors create an instance method
I started irb and tested whether a class with an accessor would create an instance variable automatically. I tried the following:
class A attr_accessor x end y = A.new y.instance_variable_set "@x", "wow" puts y.x # => "wow"
So far, it seems like it works! So back to the text editor, and I wrote the method.
2. Something isn't right
def load(data = nil) if data.instance_of? Hash data.keys.each do |key| if self.instance_variables.include? key attr_name = "@#{key}" self.instance_variable_set attr_name , data[key] end end end end
So I write the code above. I expect that my tests would pass. But they didn't. The if clause was never true, so there was never an assignment. What? I looked back at the class description. The accessor names were there. What was going on? After a few minutes, I remembered a lunch discussion that I listened to at Ruby Nation. It was discussed that ruby starts with an empty object, and it builds members and methods as they are declared or needed. To begin with, there isn't anything in an object beyond the Object methods themselves, or so I understood. So, that means that until there is any assignment to a member accessor, the instance variable that the accessor provides the getter and setter for method doesn't exist yet.
Since the instance variable wasn't there, I decided to check for whether the object could respond to its getter/setter method.
3. Getting it to work
def load(data = nil) if data.instance_of? Hash data.keys.each do |key| if self.respond_to? key attr_name = "@#{key}" self.instance_variable_set attr_name , data[key] end end end end
the difference happens on line 4. It went from
if self.instance_variables.include? key
where I was checking for the existence of the instance variable (which doesn't exist until assignment) to
if self.respond_to? key
which checks for whether the object would respond to the method. This fix the problem.
I ran into some strange issues with exception testing in rspec when working on cygwin using rspec 2.6.4. These more more than anything else a collection of notes.
I am writing an object Room. It should have an optional hash argument. So I have two scenarios to test: that it should quietly create the Room object when no arguments were given to the initializer, and that, if there is an argument, it should only be a hash. Here are the tests that eventually worked:
describe "initialize" do it "should accept an optional argument" do expect { @r.init {} }.should_not raise_error end it "should accept only a hash" do expect { @r.init [] }.to raise_error ArgumentError end end
And the following are the steps that I took when I was getting there, and what I learned on the way.
1. I can't test object creation, Room.new, tests will consistently pass
When using this code:
expect { Room.new [] }.should raise_error
rather than getting the error that I was expecting, it would silently pass, which is not good when the whole point of testing is to convince yourself and others that the object is behaving as expected.
2. room.initialize() is invisible
I thought to myself that even though it is a bit annoying, not being able to test via object creation is not that horrible. I would just test initialize() instead.
expect { @r.initialize [] }.should raise_error
When running it, I did get those expected errors. however the error was because it couldn't find the initialize(). Not the error that I wanted. So it seems that initialize() becomes invisible when running rspec.
3. room.init works
So what I had to do was to create a init() method that would handle the code that otherwise would be found in initialize(). A bit clunky, but it works.
Now, the only reason why I spent so much time on it was because I thought it was an important logic. This logic would have been taken cared of by the compiler in a static language. Since that is not available, it would be nice to be able to be able to test the constructor. Maybe there is a way. Maybe I missed it. But for the moment, this is what I found.


text:
National Geographic Traveler describes Santa Fe as "a hypercultural hybrid–equal parts Wild West and New Age, Native American and Hispanic, old money and old hippie"…a city "used to mixing things up and still creating an oddly seamless whole."
To many people, Santa Fe is as much an escape as it is a destination. It is an adobe colored Mecca that preternaturally calls seekers to a spiritual and creative fulfillment they just don't find elsewhere. Santa Fe draws them with an amalgam of spiritual tranquility, piñon-perfumed air and its accepting, non-judgmental culture. It holds them captive with its beauty and its cuisine. Santa Fe truly has an identity, substance and style all its own. One of the defining elements of contemporary "Santa Fe style" has been the howling coyote, an art phenomenon originated by woodcarver Alonzo Jimenez a couple of decades ago.
While the coyote is prevalent in contemporary Native American mythology and generally represents a cunning, treacherous scourge, to New Mexico artisans he has been a blessing, displayed on every conceivable medium. The howling coyote became so omnipresent that it became synonymous with Santa Fe style. In the culinary arts, Santa Fe style is most often associated with the Coyote Cafe whose logo is surprisingly not a howling coyote, but a flute-playing (ala Kokopelli) coyote about town with an unusually long, shaggy tail.
The Coyote Cafe, founded in 1987 and going strong more than two decades later, is considered by many to have created the template for modern Southwestern cuisine. At the Coyote Cafe–under the direction of the "High Priest of Southwestern Cuisine" Mark Miller–Southwestern cuisine evolved and reinvented itself time and again, all while staying true to its historical roots. The most recent reinvention is in the form of a new ownership group that includes Eric Distefano, one of the best chefs in the entire southwest. Distefano has been at the helm at Geronimo for many years and from all indications, is restoring the Coyote Cafe back to its halcyon days when it was widely considered one of Santa Fe's premier dining destinations.
My favorite Coyote Cafe restaurant family member is the Rooftop Cantina where seasonal open-air dining between April and late October is so quintessentially Santa Fe. The atmosphere is casual and the views of Santa Fe's bustling downtown are ever so cosmopolitan. Thematically, the Rooftop Cantina has the taste and feel of Old Mexico and indeed, it does serve up eclectic Mexican cuisine as good as you'll have it anywhere. An ever-evolving menu means you'll never get bored. Boredom, in fact, may be the last word you'd ever associate with the Coyote Rooftop Cantina. His is one happening joint that has stood the ravages of time and competition because it's been a pace setter.
The Rooftop Cantina's fire-roasted salsa (pictured above) and its subtle citrus influence has addictive, capsaicin endowed properties and is my favorite restaurant salsa in New Mexico even though many other salsas are more piquant. A purchase of Miller's The Great Salsa Book is in order if you don't already have a copy.
Among the many wonderful entrees (albeit found on the appetizers section of the menu), none may be as sublime as the quesadilla de carnitas de pato (duck quesadillas) crafted with roasted poblano chiles, Monterrey cheese and a Tequila Habañero barbecue sauce. The melding of distinctive flavors and textures is worthy of Santa Fe style. These quesadillas are not only incomparably delicious, they decorate your plate. The duck quesadillas are accompanied by something called Mexican coleslaw. Google "Mexican coleslaw" and the popular search engine will return pages of results, alas not including Mark Miller's recipe. After quickly consuming the portion that came with the quesadillas, we ordered a second portion "for dessert" not only because the taste captivated us, but so we could "deconstruct" the coleslaw and figure out how to duplicate it at home. The Cantina's Mexican coleslaw starts with a bed of finely shredded cabbage (both green and red). It includes fresh mangoes and pineapples along with some of their residual juices, perhaps some vinegar and oil and Tequila Habañero dressing to give it a piquant bite. It is certainly among the best coleslaw we've had anywhere.
Also exceptional are the tacos al Pastor, spit-roasted, thinly shredded pork marinated and served with small pineapple chunks wrapped in golden corn tortillas. You can order tacos al Pastor at a hundred different Mexican restaurants and you'll get a hundred different versions of street food snack most often defined as just "pork tacos." The Rooftop Cantina's tacos al Pastor are among the best we've had everywhere and it's not solely because of the pineapple's citrusy contrast to the wonderfully smoky pork. The tacos are served with tomatillo avocado and tomatillo arbol salsa, neither of which are necessary to enhance the tacos, but which are excellent with the Cantina's chips. The tacos al Pastor are served with Frijoles Charros, a bowl of pinto beans imbued with smoky sausage, fresh tomatoes, red onions and plenty of cilantro. Again, you can find Frijoles Charros at many Mexican restaurants but none are quite as good as at the Rooftop Cantina. For one thing, the beans are cooked to perfection (it's been our experience almost everywhere that the beans are drastically undercooked).
More than many Mexican restaurants, the Rooftop Cantina incorporates citrus ingredients in entrees containing succulent grilled meats. Scan the menu and you'll quickly note several items in which pineapple and (or) mango is a prominent ingredient. The marriage of tangy citrusy fruit and savory meats is one made in culinary heaven. Another example, found in the tortas section of the menu, is the mango avocado chicken sandwich which features grilled chipotle chicken with tomato, avocado, lettuce and a mango-banana salsa. The salsa isn't quite as sweet as it sounds, maybe because any cloying flavors are offset quite well by the savoriness of other ingredients.
Perhaps the most popular sandwich on the menu is the La Cubana Sandwich, Mark Miller's take on the popular Cuban sandwich. This sandwich is constructed with roasted pork loin and ham, guacamole, chipotle sauce and a black bean spread, a unique and delicious interpretation of the trendy sandwich seemingly found at every sandwich shop.
If your tastes lean more toward pure carnivorism, the Costilla Estilo Yucatan (Yucatan style ribs) may be calling you. Meaty ribs are spiced with achiote (a red paste made from the seeds of the annatto tree and used as a seasoning which also gives food a deep red color) topped with a fiery Habanero BBQ Sauce. These incendiary ribs are not quite too hot to handle, but you just might experience sheer delicious agony.
On the adobe wall just before the final four steps leading to the Cantina is a metal sculpture depicting coyotes frolicking boisterously at a Cantina similar to a fight scene on a Western movie. One coyote is swinging from a chandelier, there's a comely coquette coyote on the bar and two members of the Canis Latrans family are ready to come to blows. While the restaurant is never quite this animated, it does radiate fun and is one of the very best restaurants in Santa Fe.
Coyote's Rooftop Grill
132 West Water St.
Santa Fe, New Mexico
505 983-1615
Web Site
LATEST VISIT: 29 April 2007
BEST BET: Salsa and Chips, Duck Quesadillas, Cuban Sandwich, Tacos Al Pastor, Mexican Coleslaw


text:
I had made the alterations indicated necessary by my muslin:
- A sway back adjustment
- I pinched about 1.5cm out of the top of the centre back seam, tapering that down to about the waist.
- I added about 1.5cm to the side seams of the skirt from a little above the hips downwards
- I pinched out some of the excess fabric around the top of the front princess seams.
I hadn't included seam allowances on my pattern pieces so it took a VERY long time to mark seam allowances onto the fabric and cut out the pieces. However, once that was done it came together very quickly.
I still need to hem it and I have to work out the best way to finish the arm holes (probably just with biased binding), but it's almost there. I think a couple of buttons are needed for this dress too; to hold the pockets closed as they're a bit gapey at the moment.
Also, something I hadn't noticed on the muslin (as I didn't include the pockets so didn't really think about it) is that the pockets are probably a little lower than they should be. It's not a disaster - I can still reach the bottom of the pockets while I'm wearing the dress, but if I were to use this pattern again I'd move the pockets up about 1-2 inches, as where they sit at the moment they proportions aren't quite right. You live, you learn, right?
What's up next? A break from wardrobe project garments, The Madeline Mini Bloomers from Colette patterns in some blue gingham from my stash.


text:
The Vampire Diaries
The Vampire Diaries Spoilers: Silas Disguised, Elena's Prom Betrayals
Prom is no place for a 2,000-year-old immortal, but try telling that to Silas. According to E! Online's Vampire Diaries spoilers, he's using his ability to appear as others to mess with everyone.
The immortal impersonates no less than four people. Just what his objective is — or whether he manages to fool anyone with his disguises — remains to be seen. Let's hope everyone has managed to figure out a password system so they know when Silas is wearing someone else's face.
We're guessing Silas is trying to sniff out who has the cure. Elijah (Daniel Gillies) decided to bring it back to Mystic Falls — right where the former witch is waiting. Elijah seems to smart to fall for Silas's shapeshifting! Right?
In the meantime, TV Guide reports that Elena (Nina Dobrev) is having a little fun of her own — by being super mean. She manages to betray two of her nearest and dearest, one "in the worst way imaginable." We assume that refers to her stealing Caroline's (Candice Accola) dress.
Kidding. It's probably teasing the emotionless vamp's cruel jab about the sire bond to Damon (Ian Somerhalder).
Whew. It sounds like Damon and Stefan (Paul Wesley) can't get that girl to flip her humanity switch fast enough!


text:
Step 1: Getting Ready
Airsoft Gun
Airsoft Pistol Holster(optional)
Spray Paint( color varies from what type of camo.)
leaves and newspaper.
Step 2: Lets Get Painting
Paint your gun all one color of your choice. Then put leaves on it everywhere to make it look leafy. Spray over the leaves with different camo colors of your choice.
Let Dry.


text:
You're wrapping up your first date with a new love-interest and good news…. the date couldn't have gone any better! Conversation was flowing, the chemistry between the two of you was amazing, and you were already planning your second date halfway into the first. There's just one major thing standing in the way of date #2….the first goodnight kiss. This moment can cause a ton of anxiety and can potentially be the difference between a good date and a great date. To get through the first date kiss successfully, remember these first kiss tips:
1. Ask your date for a kiss or tell your date that you'd like to kiss them (optional). This can be super awkward, but it's a sure fire way to get the 'go-ahead' from your love-interest without risking them turning their head or backing away from your kiss if they aren't interested.
2. Gently touch your date's arm, hand, face, or neck before going in for the kiss. This gentle touch sends a signal to your love-interest that you are prepping to go in for a smooch; think of it as a non-verbal 'heads-up'. This gentle touch can also make both you and your love-interest feel more relaxed in the moment by making your love-interest feel safe.
3. Start out slow and soft and see how your love-interest reacts…don't be overly aggressive. If you go in for the kiss and your love-interest leans towards you, kisses you back or touches your arm, neck, face, etc while kissing you, you could slowly take things up a notch. Only go a step further if your love-interest is an active and willing participant.
4. End the kiss with a hug or a kiss on the cheek. After the first kiss is complete, there can be a moment of awkwardness after you pull away from each other. A hug or kiss on the cheek afterwards is like a period at the end of a sentence. It will comfort your love-interest and make him or her feel good about your first kiss and be the perfect ending to a great kiss and a great overall date.
If your love-interest hesitates, moves away from you, or turns their head during your first kiss attempt, he or she may not be into the whole kissing thing for one reason or another. It is possible that they didn't feel the chemistry that you felt, but if the date went great, he or she may be hesitant about the kiss because they want to take things slow. If you are into him or her, be sure to ask them out again in a timely manner. If he or she says 'Yes' to a second date, there is some level of interest. They may have not wanted to kiss you on the first date because they want to get to know you better, they are obtaining from different kinds of affection early on, or even something as simple as they got nervous and didn't know what to do. Remember, you are still getting to know each other. Early kisses will get easier as things progress and you go on more dates. Until you and your love-interest are totally comfortable with each other, follow these steps to minimize any kissing awkwardness. Happy smooching!
Erin 'The Dating Advice Girl'
If this article gave you the confidence to find your match, try Singles Warehouse today!
Join us on FACEBOOK!


text:
Newsletter Archive
|NAT. Rose Hip Oil to the Rescue
|Wednesday, 30 May 2012 12:30
Research in the field of natural skin care has uncovered a wide variety of beauty and wellness benefits associated with the use of pure rose hip oil. NAT. is proud to offer these remarkable benefits to clients all over Australia and New Zealand with pure, certified organic rose hip oil, the newest addition to their natural beauty and skin care line. Available for purchase early July, 2012, NAT. rose hip oil is sure to be one of the most quickly growing skin care trends of this year.
What is it and How is it Used?
In addition to its obvious nutritional benefits, the oil extracted from rose hips is currently transforming the face of natural Australian skin care. Its regenerative properties are used to restore a youthful and healthy appearance to skin tissues that have been damaged in a variety of ways.
• Acne, Accidental and Surgical Scars – Massaging the oil firmly into scarred tissue twice daily for approximately three months visibly reduces raised skin and redness. Stretch marks can be effectively prevented and treated with the same method of application.
• Eczema and Dry Skin – The symptoms of eczema, which include dryness, flaking and redness, see extensive improvement within weeks of the first use.
• Skin Burns – The healing elements of the oil moisturize and infuse skin with essential protectants that guard against damaging free radicals. Anti-inflammatory in nature, the oil serves as an excellent salve for sunburn.
• Signs of Aging – Wrinkles, dry patches and discoloration are all symptoms commonly seen in aging skin. These and related signs of aging are effectively treated with the oil from rose hips, all without the danger of unexpected side effects associated with some over-the-counter and prescription anti-aging remedies.
NAT.'s Commitment to Exceptional Australian Skin Care
The NAT. natural skin care line is proud to offer the most quality-tested, effective and naturally sourced cosmetic products in the world. Cutting edge technology combined with a dedication to natural and uniquely beneficial skin care makes for a strong foundation in a constantly evolving beauty industry. With its 2012 release of certified organic rose hip oils, NAT. continues to stay ahead of the curve when it comes to leading beauty and skin care innovations.
Read more http://blog.natskinbody.com/2012/05/31/nat-rose-hip-oil-to-the-rescue/


text:
Clocking In
You have clocked in to MySA.com's business news blog about San Antonio and South Texas businesses and business people.
Posts by Author
Hoax strikes Bank of America – UPDATE – hoaxsters speak
This morning a group claiming to be Bank of America sent out a press release with Bank of America branding announcing the launch of a new campaign and website with the intention of radically transforming the bank and hinting that the bank would need a second bailout. (Read he original posting below.) The hoaxsters have […] [Read More]
Hardest working towns in America
A new survey from Parade magazine has ranked the work ethic of U.S. cities by calculating the average hours worked, willingness to work on personal time, employment rates and other criteria. The list does not bode well for Texans. Apparently all we do is sit around eating tacos and barbecue, watching football and getting our […] [Read More]
Warren Buffett diagnosed with cancer
Legendary investor and Berkshire Hathaway Inc Chief Executive Officer Warren Buffett has been diagnosed with stage one prostate cancer. Reuters is reporting that the disease was caught in the early stages and that Buffett's doctors have said his prognosis is "very good." The story continued in reporting that Buffett will soon undergo two months of […] [Read More]
Business news anchor celebrates 1,000 episodes
For the last five years Liz Claman has anchored "Countdown to the Closing Bell" on the FOX Business Network, pounding out stories and explaining some of the business world's more intriguing events. Thursday the business journalist will celebrate her 1,000th episode of "Countdown" on the floor of New York Stock Exchange, which is right where […] [Read More]
Legendary mascots of the corporate world
They've sold you coffee, made you breakfast, insured you and helped you stay clean. They're the faces of the brands we use and they've embedded themselves into our pop culture psyche for generations. They are company mascots and here are a few of the best. -Chris Quinn [Read More]
Parts shortage could shut down auto plants
Auto industry execs will meet today in Detroit to talk about how a March 31 explosion at a German chemical plant might end up forcing auto and parts manufacturers to temporarily shut down production. The German plant produces a chemical that is used to make fuel and brake lines. The Associated Press reports that the […] [Read More]
How to avoid paying U.S. taxes, for good
Other than dying, or saving the world from a massive asteroid in the movie "Armageddon," there is really no way to avoid income taxes. Unless you are willing to go hardcore that is. Today millions of procrastinating Americans will rush to get their federal tax returns mailed to the IRS. But there are a few […] [Read More]
Texas small businesses are big on the economy
According to the Spring 2012 American Express OPEN Small Business Monitor survey, 81 percent of Texas small business owners plan on growing their businesses during the next six months. Compared to Texas, about 56 percent of U.S. small businesses are also hoping to expand. While 56 percent of the Texas owners have a positive view […] [Read More]
Calling small businesses
The U.S. Small Business Administration is hosting a national video contest during which business owners will have the chance to have their video shown at official SBA events during National Small Business Week. Participants are encouraged to make a video detailing how the administration's programs or services have helped their businesses. This year National Small […] [Read More]
Job fair today
A job fair from the San Antonio Express-News featuring employers in the oil and gas and health care and nursing fields will be from 9:30 a.m. to 3:30 p.m. at the Norris Conference Center in Wonderland of the Americas mall, 4522 Fredericksburg Road. There will also be businesses in the professional and general service industries. […] [Read More]
Show More