Objectivity, Inc. Features Python Binding in Free Trial Download

In response to requests from application developers to provide more support for the Python programming language, Objectivity engineers have added a Python binding to Objectivity’s free 60-day trial download.

Objectivity/Python is an Application Programming Interface (API) for writing Python scripts and applications that store and manipulate persistent objects. The Objectivity/Python binding can be used to create new applications or link existing programs; it is especially useful to application developers who need to build custom database administration scripts or develop test frameworks for quality assurance.

Python has gained popularity among application developers as a language that provides strong query and script access to data-driven systems. Python and other object-oriented languages are a natural fit for many of Objectivity’s customers.

“Objectivity/Python is a versatile product,” said Lenny Hoffman, Objectivity’s director of technical consulting and product requirements. “It can be used for pure application development, or customers can use the binding to take advantage of Objectivity's language interoperability. Even if you have Objectivity applications written in strongly typed languages such as in C++ or Java, you can leverage Python's interactivity and productivity to create development aids and application-specific administration scripts so you can explore and update your Objectivity database dynamically.”

Objectivity/Python is fully interoperable with the other languages supported by Objectivity/DB, such as .Net for C#, C++, Java, Smalltalk, SQL++ and XML (both import and export).

Developers can evaluate the Objectivity/Python binding by registering for Objectivity’s free 60-day trial evaluation.

A note on Python
Python is a dynamic object-oriented programming language that can be used for many kinds of software development. It offers strong support for integration with other languages and tools, comes with extensive standard libraries, and can be learned in a few days. (from python.org)

A note on Objectivity/DB
Objectivity/DB has a fully scalable, distributed processing architecture that manages localized, centralized or distributed object databases by synthesizing large, complicated streams of data into a single logical view.

About Objectivity, Inc.
Objectivity, Inc. provides distributed, real-time, Cloud-ready database management tools for mission-critical applications. Objectivity works directly with clients in government, security, complex manufacturing, commercial services, science, and engineering organizations to build customized programs, find solutions to complicated challenges and seamlessly integrate technology across multiple platforms and languages.

Objectivity, Inc. is headquartered in Sunnyvale, California, USA. Please contact us by visiting Objectivity.com or calling (408) 992-7100. A 60-day free trial of Objectivity/DB is available on the website, and Objectivity also provides free web-based Object Database Training Courses.

Source: PRWeb
Read More >>

Perforce Software Releases Pure Java API for its Award Winning SCM System

Perforce Software announced the release of P4Java, Perforce's pure Java API for accessing Perforce SCM services from within Java applications, servlets, plug-ins, and other Java contexts. P4Java allows developers to tightly integrate Perforce functionality into tools such as CruiseControl, Maven, and Ant, and in environments such as J2EE-based web application and web service frameworks. Perforce SCM versions and manages source code and digital assets for enterprises large and small.

P4Java is a pure Java implementation of the client-side Perforce networking protocol that speaks directly to the Perforce server. Perforce-managed resources, files, and services are available as first-class Java interfaces, classes, methods, and objects, rather than simple strings or command-line-like functions.

"We understand that Java developers don't want an API that looks like it was grafted on or taken from another development language or ecosystem," said Alan Teague, development manager for integrations at Perforce Software. "The new P4Java API allows Java plug-in and apps developers direct access to Perforce SCM features and services in Java-natural ways."

Perforce seamlessly supports typical workflows and development lifecycle models encountered within the Java ecosystem. Open source and commercial tools that support continuous integration and other agile workflows may also be extended to transparently provide Perforce SCM services. For example, Perforce's own flagship plug-in product, the Perforce Plug-in for Eclipse, has been entirely reworked and re-implemented on top of P4Java to closely integrate with Eclipse views and workflows.

Availability & Pricing
The Perforce Java API is available now, at no additional charge, with the latest release of the Perforce Server, and is supported on servers starting from version 2007.3. Interested developers are invited to download and evaluate Perforce free from the Perforce website. This offer includes free technical support during evaluation.

Perforce pricing is all-inclusive; there are no add-on components that require licensing. End-user licenses for the complete solution, including one year of support and maintenance, start at $900 per seat; volume discounts are available.

For additional price and license information, visit www.perforce.com.

About the Perforce SCM System:
Perforce, the Fast Software Configuration Management System, is an award-winning tool that versions and manages source code and digital assets for enterprises large and small. Perforce is easy to install, learn and administer; seamlessly handles distributed development; and supports developers across a large number of platforms. Perforce ensures development integrity by grouping multi-file updates into atomic changes, enables concurrent development, and intelligently manages multiple software releases using its Inter-File Branching™ system.

About Perforce Software:
Founded in 1995, Perforce Software Inc. develops, markets and supports Perforce, the Fast Software Configuration Management System. Perforce Software is headquartered in Alameda, Calif., and sells worldwide. The company has international operations in Europe, Japan, and Australia. In addition to application software companies, Perforce customers represent a broad range of industries including game development, electronics, pharmaceutical and financial services.

Source: PRWeb
Read More >>

Kentico CMS for ASP.NET Gets Enterprise-Class Search Capabilities

Kentico Software, the Web content management system vendor, today released a new version 4.1 of Kentico CMS for ASP.NET. The new version comes with revamped, enterprise-class search engine and with many user productivity improvements.

The new search engine enables site owners to make their web content searchable so that the site visitors can easily find information about their products and services. The search engine provides extremely fast search results with ranking, previews, thumbnail images and customizable filters. The site owners can decide which parts of the site, which content types and which content fields are searchable. The search engine leverages the popular Lucene search framework.

The new version also improves business user productivity by optimizing the way the users upload and insert images into the text. The optimized user interface now enables insertion and resizing of images in a few clicks. The uploaded images can be part of the page life cycle. When the page is removed from the site, the related images and attachments are also removed which helps organizations avoid invalid or expired content on their server.

Other improvements were made to the management of multi-lingual web sites. Kentico CMS for ASP.NET now supports workflow configuration based on the content language and it allows administrators to grant editors with permissions to chosen language versions. Content editors can easily see, which documents are not translated or their translation is not up-to-date.

"The new search engine provides enterprise-class search capabilities, with high number of configuration options, excellent performance and great search results," explains Martin Hejtmanek, Kentico CTO. "The new search engine with customizable filters and search queries adds a huge value especially to clients who need to enable fast and accurate search in their structured web site content, such as product catalogs or on-line stores," he adds.

Kentico CMS 4.1 for ASP.NET can be downloaded as a free 30-day trial at http://www.kentico.com/download.aspx or it can be trialed on-line through Kentico Virtual Lab at http://www.kentico.com/Demo/VirtualLab.aspx.

About Kentico CMS
Kentico CMS is an affordable Web content management solution providing a complete set of features for building Web sites, community sites, intranets and on-line stores on the Microsoft ASP.NET platform. It supports WYSIWYG Web content editing, workflow, multiple languages, full-text search, SEO, on-line forms, image galleries, forums, groups, blogs, polls, media libraries and 200+ configurable Web parts. It's currently used by more than 2000 Web sites in 77 countries. The clients include Microsoft, Brussels Airlines, Vodafone, Audi, Mazda, Samsung, Gibson, Bayer, ESPN, Guinness, Medibank, Ireland.ie and others. Kentico CMS is available at http://www.kentico.com.

About Kentico Software
Kentico Software helps clients create professional Web sites, online stores, community sites and intranets using Kentico CMS for ASP.NET. It's committed to deliver a full-featured, enterprise-class and scalable Web Content Management solution on the Microsoft .NET platform. Founded in 2004, Kentico is headquartered in the Czech Republic and has a U.S. office in Nashua, NH. Since inception, Kentico has continued to rapidly expand the Kentico CMS user base worldwide. Kentico Software is a Microsoft Gold Certified Partner and was named a Deloitte Technology FAST 50 Rising Star, being ranked as the fastest growing young technology company in the Czech Republic in 2008.

Source: PRWeb
Read More >>

Perforce Software Releases a Pure Java SCM Plug-In for Eclipse

Perforce Software announced the release of a pure Java version of its Perforce Plug-in for Eclipse. With this release, developers can employ Perforce version control tools that previously have not been available from within the Eclipse environment. Perforce, the Fast SCM system, versions and manages source code and digital assets for enterprises large and small.

Using this cleaner and more powerful integration, users never have to leave the convenience of the Eclipse environment to work with the SCM system. Along with the standard version control workflow, developers can access Perforce's defect tracking and merge utilities, and for the first time, change history visualization tools, directly from Eclipse. For example, the plug-in includes support for the Revision Graph tool, enabling developers to see a graphical view of the complete branch and merge history of any individual file.

"We understand that users don't want to leave the Eclipse environment to execute their SCM workflow tasks," said Alan Teague, development manager for integrations at Perforce Software. "This plug-in provides access to all of the source control features a developer would expect from an integrated development environment, along with those that distinguish Perforce as a leader in the field of SCM."

Highlights of the Perforce Plug-in for Eclipse include:
  • Ability to easily review integration history with Perforce's Revision Graph.
  • New refactoring support allows class and interface files to be moved and renamed multiple times before submit.
  • Users can create and update issues in Perforce's built-in defect tracking system, Jobs.
  • Jobs can be linked to the changelists (the sets of files) that implement the associated work.
  • Create, browse, and manage labels and workspaces.
  • Access to Perforce's three-way merge tool, P4Merge.
  • Customizable icon and text decorations for files and projects.

Availability & Pricing
The Perforce Plug-in for Eclipse and WebSphere Studio (P4WSAD) is available now, at no additional charge, with the latest release of the Perforce Server, and is supported on servers starting from version 2005.2. Interested developers are invited to download and evaluate Perforce free from the Perforce website. This offer includes free technical support during evaluation.

Perforce pricing is all-inclusive; there are no add-on components that require licensing. End-user licenses for the complete solution, including one year of support and maintenance, start at $900 per seat; volume discounts are available. For additional price and license information, visit www.perforce.com.

About the Perforce SCM System
Perforce, the Fast Software Configuration Management System, is an award-winning tool that versions and manages source code and digital assets for enterprises large and small. Perforce is easy to install, learn and administer; seamlessly handles distributed development; and supports developers across a large number of platforms. Perforce ensures development integrity by grouping multi-file updates into atomic changes, enables concurrent development, and intelligently manages multiple software releases using its Inter-File Branching™ system.

About Perforce Software
Founded in 1995, Perforce Software Inc. develops, markets and supports Perforce, the Fast Software Configuration Management System. Perforce Software is headquartered in Alameda, Calif., and sells worldwide. The company has international operations in Europe, Japan, and Australia. In addition to application software companies, Perforce customers represent a broad range of industries including game development, electronics, pharmaceutical and financial services.

Source: PRWeb
Read More >>

Programming ASP.NET 3.5

With Programming ASP.NET 3.5, you'll quickly learn to create state-of-the-art applications using Microsoft's popular web development technology and Visual Studio 2008. This updated bestseller provides comprehensive and easy-to-understand information to help you use several .NET 3.5 technologies for faster development and better web application performance-including ASP.NET AJAX for interactive user interfaces, LINQ for data access, and Windows Communication Foundation (WCF) for web services. Programming ASP.NET 3.5 includes examples and sample code that let you explore development with ASP.NET in more depth.
With this book, you will:
  • Learn about AJAX and ASP.NET server controls included with Visual Studio 2008
  • Discover how to use the DataSource and data-bound controls in ADO.NET
  • Use the new LINQ API and learn how to make use of it within ASP.NET pages
  • Create a uniform look and feel throughout your application with Master Pages
  • Use navigation controls to build site maps, menus, and breadcrumbs quickly and easily
  • Build and use various web services with WCF
  • Detect errors during development and handle them in your production code
  • Learn how to configure and deploy your website

Programming ASP.NET 3.5 is available at Amazon.com.
Read More >>

Foundation Expression Blend 3 with Silverlight

The only real tool for developing cross-platform Rich Internet Applications (RIAs) for that last 11 years has been Flash; until now! Silverlight 3 allows you to develop cross-platform Rich Internet Applications in a fraction of the time because of the extensive and very powerful .NET 3.5 libraries, the powerful, design friendly Blend 3 Integrated Development Environment, and an enhanced workflow that allows designers and developers to work on the same set of files at the same time.
  • Develop stunning RIAs in a short time.
  • Learn some basic Object Oriented Programming Principles.
  • Get familiar with the Blend 3 development environment.

What you'll learn
  • Learn the Blend 3 and Visual Studio 2008 Integrated Development Environments (IDE).
  • Learn how to create stunning animations using Silverlight 3 Storyboards.
  • Learn how to incorporate video and sound into your RIAs with the Silverlight MediaElement.
  • Learn about and how to develop quickly using Silverlight 3's reusable resources such as UserControls, ControlTemplates and DataTemplates.
  • Learn about the new Visual State Manager and the State panel in Blend 3 to quickly and easily add MouseEnter and MouseLeave states to your UserControls.
  • Put everything you have learned together to create a sample Silverlight 3 website.

Who is this book for?
Web designers and developers wanting to learn Expression Blend 3 from the ground up. Those who have a background in the development of RIAs and want to learn this new technology.

Foundation Expression Blend 3 with Silverlight is available at Amazon.com.

Read More >>

How to Use Regular Expression Classes in the .Net Framework

Many beginning programmers spend much time coding search and replace logic while the .NET framework offers a powerful class framework to use regular expressions that you can use to perform various tasks on text and binary data. This article introduces you to the regular expression classes in the .NET framework and how to use them to perform tasks easier in a systematic way.


Steps


  1. Decide the specific use of regular expressions you need. Regular expressions are normally used for one of the following:
    • Check if a string has a certain pattern within it
    • Validate a string against a pattern
    • Replace a specific pattern with another pattern
    • Split a string using a pattern delimiter
    • Find all occurrences of a certain pattern within a string
    • Extract pattern pieces/groups from a string (like in syntax checking/highlighting)

  2. Design and decide the regular expression you want to use. See a tutorial on regular expressions[1] or visit an online library of regular expressions[2]
  3. Decide the regular expressions matching options you want to use. The setting you need to decide are:
    • Case sensitivity of matching
    • Whether you want to ignore any white spaces within the regular expression while matching or not
    • Whether the matching is multi-line or not (this changes the meaning of ^ and $ to match to the beginning and end of lines and not only the beginning and end of the whole string)
    • The direction of the matching process (left-to-right or right-to-left)
    • Whether . will match any character including or not including new line
    • Whether to compile the regular expression to the assembly (slow start up, fast processing) or not (the contrary)
    • Whether to ignore culture variance/change or not
    • Whether to use ECMA Script compliant mode or not
    • Whether to capture every group (any sub-expression within parenthesis) or only groups that are named

  4. Create a RegexOptions object and add all options (by using bit-wise or "|") - This step is optional
  5. Choose the member method you want to use. This depends on your choice in step 1. You have the following choices:
    • IsMatch() - if you only need to check whether a match was found or not
    • Match() - if you want to get the first match found. Calling this method again will get the next match and so on.
    • Matches() - if you want to retrieve all matches of the pattern in one call
    • Split() - if you want to split the string at the matches of the pattern
    • Replace() - if you want to replace the matches of the pattern with another pattern or string

  6. Decide whether you want to use the static version of the method or the instance version. Static methods do not require the creation of a Regex object but they do not keep the status of matching between calls. According to your choice, follow the following steps:
    • For static versions of the methods:
      1. Declare an appropriate reference to hold the results of the operation if necessary. Here is a list of the methods and the type of results they return:
        • IsMatch() - bool
        • Match() - Match
        • Matches() - MatchCollection
        • Replace() - string
        • Split() - string[]

      2. Call the appropriate method from the Regex class passing it the regular expression, the string, the options, and the replacement pattern in case of Replace() and assign the result to the reference you declared in the previous step.

    • For instance versions of the methods:
      1. Create a Regex object passing the regular expression you created, and the matching options to the constructor.
      2. Declare an appropriate result reference to hold the results obtained (like step 1 in the static version of the method)
      3. Call the method you choose from the regex object passing it the string to be matched and assign the result to the reference created in the previous step.


  7. Use the results obtained at the end of step 6 in the rest of your code. Usual uses of results are listed below in the "Common Uses of Regex Methods Results" section

Common Uses of Regex Methods Results


  • IsMatch(): returns a boolean value that is usually used in:
    • A single conditional construct such as the "if .. else" code construct or the "?:" operator construct. This is usually when you want to check if a pattern generally exists in a string to decide whether to do some action or not (for example check if the text of a post contains some offensive word to decide whether to allow the post or ban it altogether)
    • A looping construct such as a while or do ... while loop. This usually is used with instance versions of the method Match to iterate through all matches as long as there are matches to iterate through. Sometimes, it is used with streamed string to check the matches of a pattern in a text while it arrives through the stream.
    • Validation of controls. Usually this is done by binding some property of the control to the result (for example, making a text-box disabled as long as the regex can not find a match in the string within the text box

  • Replace(): returns a string with the pattern replaced with the replacement pattern or string. The resulting string is usually used in place of the original string. Some examples of the use of Replace() are:
    • Replacing all offensive words in a post with special characters such as ! or #
    • Replacing all HTML markup with HTML code that will display the markup instead of executing it (for example, replacing < with <)
    • Encrypting strings (permutation encryption)
    • Replacing special characters with other escaped values (for example replacing \ with \\)

  • Split(): returns a string array with all tokens after splitting the original string at the patterns found. This is usually used in code parsing.
  • Match(): returns a Match object that has information on the match found by the last call of Match(). Match objects contain information on capture groups and captures within the single match. Example uses of the Match object result and the Match() method:
    • Syntax highlighting.
    • Storing the matches found in some data storage facility such as a database.
    • Performing more complex replacing on the string by calculating the replacement of each capture.
    • Detailed finding of matches within a long text.

  • Matches(): returns a MatchCollection object which is actually a collection of Match objects (you may think of it as a typed ArrayList of Match objects). This method is a call-once alternative to Match() so it has the same uses.

Tips


  • All matching options are turned off by default (that is, if you don't specify any of the options or use RegexOptions.None)
  • If you don't understand any of the regular expressions matching options, leave turned off.
  • You can use Regex.Escape() and Regex.Unescape() methods to escape/un-escape special regex characters within a regular expression
  • To get the regular expression that was passed to the constructor of a Regex object, use the ToString() method. The method is overridden in Regex so that it returns the regular expression.
  • Thoroughly examine your regular expression before using it in a production-environment application. Regular expressions can be very tricky. Look at the "Related websites and online tutorials" section for further reading on regular expressions.
  • Use look-ahead and look-behind expressions wisely. They are hard to write and cost a lot of processing.
  • If your regular expression is large, uses a lot of backtracking, very complex or is intended to process large amounts of data, consider using a compiled assembly version of the regular expression. You can create regular expressions compiled assembly by using the Regex.CompileToAssembly() method.

Warnings


  • Passing an invalid regular expression to the constructor of Regex or to one of the static methods in the Regex class will through an exception so use try ... catch blocks.
  • Extra large regular expressions might cause the executing PC to run out of memory, so avoid using them.

Things You'll Need


  • A .NET or mono compliant compiler and programming language.
  • A prior knowledge of regular expressions. See the "Related Websites and Online Tutorials" section for further information on regular expressions.
  • A regular expressions toolbox application like RegexBuddy will help you test your regular expressions. This is optional.
  • A .NET integrated development environment will help you write code easier. This is optional.

Related Websites and Online Tutorials



Sources and Citations


  1. http://www.amk.ca/python/howto/regex/

  2. http://www.regular-expressions.info/

Article provided by wikiHow, a wiki how-to manual. Please edit this article and find author credits at the original wikiHow article on How to Use Regular Expression Classes in the .Net Framework. All content on wikiHow can be shared under a Creative Commons license.
Read More >>

How to Create a Template in C++

In C++, templates enable you to generalize a class or function so that it doesn’t use a particular data type. You can use templates in C++ to create a function or class that can handle all kinds of data types.


Steps


Creating the Template

  1. Declare the template by typing text below. myType, TemplateName, variable1, and variable2 can be named anything you want. myType will represent a type that hasn't been identified, TemplateName will represent the name of your template, and variable1 and variable2 will represent the variables to be used in your function template. Note that you can have as much variables as you want.
    template <class myType>
    myType TemplateName(myType variable1, myType variable2)
    {

    };
  2. Begin programing your code within the brackets. It should involve the variables you defined (in the example above they would be variable1 and variable2). Here's a sample template:
    template <class T>
    T GetMax (T a, T b) {
    T result;
    result = (a>b)? a : b;
    return (result);
    }

Note that you have to use T whenever you make a variable.

Calling the Template

  1. Create some variables in the main body of your code.
  2. Type your template name and the type of the variable within angle brackets. In we were using integers with our example, we would type:
    int i=2, j=3, k;
    k=TemplateName<int>(i,j);

Tips


  • Most programmers will use a T to define the type.
  • In the example, you may have noticed you needed to use T (the type variable) to define a variable. This is because you don't know the type of data that will be put in, so it must be a variable.
  • When you use T as a parameter for the type, you don't have to include <type> after you call the function; the compiler can find out automatically what the type is.
  • Some good uses of templates include linked lists (a class with a pointer to another of itself), smart pointers (pointers managed by the class) and functions/container classes which manipulate types of different sizes.
  • Templates can take values as arguments as well as types. For example, you can something like this: template

Article provided by wikiHow, a wiki how-to manual. Please edit this article and find author credits at the original wikiHow article on How to Create a Template in C++. All content on wikiHow can be shared under a Creative Commons license.
Read More >>

How to Create Javascript Conditional Operators

Have you ever wanted to shorten a JavaScript "if" statement into one simple line? Read on and find out a neat way to shorten your short conditional statements (also called ternary statements).


Steps


  1. Declare your variables and whatnot: var numberOne = 1; var x;
  2. Use the question mark (?) and the colon (:) to create a conditional statement. After the question mark (?) you have two statements divided up by the colon (:). The first statement (before the colon) will be executed if the condition is true and the second (after the colon) if the condition is false.

    For example:
    numberOne == 1 ? x = true : x = false;
    This illustrates the short-hand way of creating the following "if" statement:
    if (numberOne == 1) {
    x = true;
    } else {
    x = false;
    }

  3. Execute anything else you need to do: document.write(x);

Warnings


  • If other people are going to be reading and having to comprehend your script, try to avoid use of the ternary operator because it's unnecessarily hard to read.
  • If you need to do more than one operation on either side of the colon then don't use the conditional operator.

Article provided by wikiHow, a wiki how-to manual. Please edit this article and find author credits at the original wikiHow article on How to Create Javascript Conditional Operators. All content on wikiHow can be shared under a Creative Commons license.
Read More >>

How to Convert Exe File of C Program to Screensaver

Interested in writing a screensaver for the Windows OS? This tutorial explains the functions needed for a properly compiled Win32 screensaver. Using the following steps, converting an existing executable into a screensaver will be easy.

Steps

  1. Writing the main function:
    1. Create a function named "LRESULT WINAPI ScreenSaverProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)".
    2. Develop this function in the same manner as a typical WinMain. It should process any messages related to the creation of the main window. This function should also handle processing the timer callback.
    3. Finally, pass the hWnd provided by the system to the function you plan on using to initialize your window. In the case of the example, the function should replace the commented code as is shown in the example.

  2. Writing the configuration function:
    1. Create a function named "BOOL WINAPI ScreenSaverConfigureDialog(HWND hDlg, UINT message, PARAM wParam, LPARAM lParam)". This function will process the configuration dialog of the screensaver.
    2. Handle all configuration messages as shown in the example.


LRESULT WINAPI ScreenSaverProc(HWND hWnd, 
UINT message,
WPARAM wParam,
LPARAM lParam)
{
switch(message)
{
// Set timer and any other initializations
case WM_CREATE:
/*
The WIndow Initializer goes here
*/

//Create timer with custom timeout value
SetTimer(hWnd, TIMER, 10, NULL);
return 0;


case WM_DESTROY:
KillTimer(hWnd, TIMER);

/*
Clean up graphics here
*/

return 0;

case WM_TIMER:
/*
The Timer Procedure Call goes here
*/

return 0;
}

// Unprocessed messages are handled by the screen saver
// library by calling the following:
return DefScreenSaverProc(hWnd, message, wParam, lParam);
}

BOOL WINAPI ScreenSaverConfigureDialog(HWND hDlg, 
UINT message,
WPARAM wParam,
LPARAM lParam)
{
// Dialog message handling
switch (message)
{
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDOK:
EndDialog(hDlg, LOWORD(wParam) == IDOK);
return true;

case IDCANCEL:
EndDialog(hDlg, LOWORD(wParam) == IDOK);
return true;
}
}
return false;
}

Tips

  • All code should be compiled with a Win32 compatible compiler.

Warnings

  • This wiki does not explain how to create a graphics engine.
  • Experience with graphics engines is required for more advanced screensavers.
  • Remember, a screensaver is a fully-fledged program, and can still contain bugs, exploits and viruses.

Things You'll Need

  • A Win32 C/C++ complier. Examples of this include: Microsoft Visual Studio, Borland Turbo C++ and MinGW(free).

Sources and Citations


Article provided by wikiHow, a wiki how-to manual. Please edit this article and find author credits at the original wikiHow article on How to Convert Exe File of C Program to Screensaver. All content on wikiHow can be shared under a Creative Commons license.

Read More >>

How to Compare Two Strings in C Programming

This describes an easy way to compare two strings in C programming.

Steps

  1. include
  2. char *string1, *string2;
  3. int someSaneCharLimit = 512; /*insert your own sane char limit here*/
  4. [Populate your strings however you wish]
  5. int i = strncmp(string1, string2, someSaneCharLimit);
  6. If i > 0, string1 > string2; If i < 0, string2 > string1; If i == 0, string1 == string2

Tips

  • The someSaneCharLimit parameter tells strncmp the maximum number of characters to examine. Using strncmp instead of the original strcmp (as well as the other strn* routines vs. their str* counterparts) is one of the many ways that C programs can be made more stable and secure.
  • You may put this in an "if" statement.
  • For one string to be 'less than' another means it is lexicographically less than. In layman's terms it means it would come before the other 'word' in a dictionary.
  • With strncmp you only check the first someSaneCharLimit number of characters. If they are the same up to that point (no matter what comes after that) they will be equal i.e. strncmp("abcxyz", "abchij", 3) would return a 0 whereas strncmp("abcxyz", "abchij", 6) would return a number greater than 0.

Warnings

  • Remember that the return value is 0 if the strings are the same. This could confuse you because 0 is also the value of FALSE.

Related wikiHows


Article provided by wikiHow, a wiki how-to manual. Please edit this article and find author credits at the original wikiHow article on How to Compare Two Strings in C Programming. All content on wikiHow can be shared under a Creative Commons license.

Read More >>

Palm webOS

This is the official guide to building native JavaScript applications for Palm's new mobile operating system, Palm® webOS™. Written by Palm's software chief technology officer along with the Palm webOS development team, Palm webOS provides a complete tutorial on the design principles, architecture, UI, tools, and services necessary to develop webOS applications-including the Mojo JavaScript framework and Palm's SDK.

Palm webOS is designed to support a fast and superb user experience using established web standards, so if you're familiar with HTML, CSS, and JavaScript, you're ready to build applications for any webOS-based device, including the Palm Pre. You'll gain expertise, chapter by chapter, as you build a working mobile application through the course of the book. You'll also learn how to extend existing web apps to work with the new generation of mobile phones.

  • Get a thorough overview of the webOS platform and architecture
  • Understand the critical concepts for application design: what separates webOS from other web and mobile platforms
  • Learn the details of Mojo's development tools and SDK for building and testing mobile applications
  • Examine best practices, important considerations, and guiding principles for developing with webOS and the Mojo framework

Palm webOS is available at Amazon.com.
Read More >>

How to Change the Default Format Settings in Eclipse

Do you get tired on constantly having to re-format your programming code? With a single press of Control+Shift+F, Eclipse will format your entire document for you. Follow the below steps to change the way Eclipse will format your document to your personal preferences.

Steps


  1. To get started, you should already have the Eclipse program open. Click the Window option in the top tool bar and then click Preferences.
  2. On the left side of the box, expand the Java option, then expand Code Style and finally click Formatter.
  3. The active profile should be set to “Eclipse [built-in]” you cannot edit this setting, so we will make a new one by clicking the “New...” button underneath.
  4. In the “profile name” pick a name that is significant to you so that you will remember what it is. The “Initialize setting with the following profile” option should have “Eclipse [built-in]” selected. And the “Open the edit dialog now” should also be selected. Now click “OK” to create your new format settings.
  5. You are now presented with the “Profile ‘name you selected’” box. There will be 8 tabs, named as follows:
    • Indentation
    • Braces
    • White space
    • Blank lines
    • New lines
    • Control statements
    • Line wrapping
    • CommentsThere will be an “Apply” and “OK” button at the bottom. You should make sure that you hit the “Apply” button every time you make a change so that it will know it is definitely saved and applied to your format settings.

  6. Refer to the picture at the right to see the INDENTATION TAB. Indentation is very important because it makes a program more readable if done properly. In the General Settings area, you can change the size of the tab, which you can set depending on whether you want to save space or if you want to differentiate the different sections more easily. According to coding conventions, you should leave all the boxes in the Indent section checked (Empty lines box does not matter). Do not forget to click Apply.
  7. Click on the BRACES TAB, and refer to the picture to the right if necessary. The braces settings are fairly simple and are based on personal preference. Most people either use the “Same line” or “Next line” position. You should use the same position for every option. Do not forget to click Apply.
  8. Click the WHITE SPACE TAB. Use the picture to the right for reference. Once again, this tab is for personal preference and ease of reading. There are many options to expand, read through and then select or deselect according to your preference on where you want a space (means one click of the space bar) to be added or removed. Do not forget to look in the preview window to see the change and click Apply often, seeing as there are many options in this tab.
  9. Click the BLANK LINES TAB and use the picture as a reference. This tab allows you to specify the number of blanks lines before or after different declarations. The standard is usually either 0 or 1 depending on the option. If you use more than 1 blank line, it is just wasting space. Choose the options according to you preference. Do not forget to select Apply.
  10. Look at the picture to the right and then click on the NEW LINES TAB. This tab is purely for user preference, so choose options as you desire. Do not forget to click Apply.
  11. Once again, the CONTROL STATEMENTS TAB is for your personal preference. Refer to the picture to the right, while selecting the boxes. The document is easily read with or without the added space after a control statement. To limit the length of your document leave the boxes unchecked. Do not forget to click Apply.
  12. Click the LINE WRAPPING TAB and see the picture to the right. In the “Line width and indentation levels” section choose how many characters wide your document can be and how wide you want the indent to be for the wrapping of the line(s). Below, click each option and choose the “Line wrapping policy” and “Indentation policy” accordingly. You want your document to have the littlest amount of wrapping as possible, so that it is easy to read. Do not forget to select Apply often, since there are a lot of options.
  13. The COMMENTS TAB is the last tab to set and the picture to the right is for reference. The options that begin with “Enable...” should be selected. The other options can be selected for personal preference. I also recommend selecting all the options that will “Remove blank lines.” Do not forget to click Apply.
  14. As an example, to show you how the format will work, there is a sample program (click on the picture at the right) shown with the formatting distorted (i.e. wrong indentation, extra spaces, etc.).
  15. To format the currently selected document, click on Source in the top tool bar and then click Format or as a shortcut you can click “Control + Shift + F”.
  16. Again, click on the picture to the right. Here you can see that the indentation has been restored, excess space has been removed and brackets are placed as per my preference. You document will not, necessarily look like mine as it will be based on your personal coding style preference.

Tips


  • When you click or unclick a setting the preview screen to the right will show you the change it will make to the format setting.
  • You should not go any smaller than a tab size of 2.
  • Do not be afraid to make changes as you can always restore the default settings.

Warnings


  • If you do not select Apply before closing the profile box all changes will be lost.

Things You'll Need


  • Computer
  • Source code written by you
  • Eclipse (Version used for this article: Eclipse SDK 3.4.1)

Sources and Citations


  • Eclipse SDK. [Software Download]. Portland, OR: The Eclipse Foundation, 2008. Available: http://www.eclipse.org.

Article provided by wikiHow, a wiki how-to manual. Please edit this article and find author credits at the original wikiHow article on How to Change the Default Format Settings in Eclipse. All content on wikiHow can be shared under a Creative Commons license.

Read More >>

Python Essential Reference

Python Essential Reference is the definitive reference guide to the Python programming language — the one authoritative handbook that reliably untangles and explains both the core Python language and the most essential parts of the Python library.

Designed for the practicing programmer, the book is concise, to the point, and highly accessible. It also includes detailed information on the Python library and many advanced subjects that is not available in either the official Python documentation or any other single reference source.

Thoroughly updated to reflect the significant new programming language features and library modules that have been introduced in Python 2.6 and Python 3, the fourth edition of Python Essential Reference is the definitive guide for programmers who need to modernize existing Python code or who are planning an eventual migration to Python 3. Programmers starting a new Python project will find detailed coverage of contemporary Python programming idioms.

This fourth edition of Python Essential Reference features numerous improvements, additions, and updates:
  • Coverage of new language features, libraries, and modules introduced into Python since the previous edition
  • Practical coverage of Python's more advanced features including generators, coroutines, closures, metaclasses, and decorators
  • Expanded coverage of library modules related to concurrent programming including threads, subprocesses, and the new multiprocessing module
  • Up-to-the-minute coverage of how to use Python 2.6’s forward compatibility mode to evaluate code for Python 3 compatibility
  • Improved organization for even faster answers and better usability
  • Updates to reflect modern Python programming style and idioms
  • Updated and improved example code
  • Deep coverage of low-level system and networking library modules — including the options not covered in the standard documentation

Python Essential Reference is available at Amazon.com.
Read More >>

How to Add JARs to Project Build Paths in Eclipse

When your Java project requires JAR libraries to function, you have to configure your project to include the libraries in its build path. Fortunately, Eclipse makes this process simple and easy to remember. The build used here is Eclipse Ganymede 3.4.0.

Steps


Adding Internal JARs


  1. Copy the JARs you'll be using to your project if you haven't done so already. Here's how it's conventionally done:
    1. Create a new folder named lib in your project folder. This stands for "libraries" and will contain all the JARs you'll be using for that project.
    2. Copy the JARs you need to lib.
    3. Refresh your project by right clicking the project name and selecting Refresh. The lib folder will now be visible in Eclipse with the JARs inside.

  2. Complete either of the following to finish configuring your build path.

Method 1
  1. Expand lib in Eclipse and select all the JARs you need.
  2. Right click the JARs and navigate to Build Path.
  3. Select Add to Build Path. The JARs will disappear from lib and reappear in Referenced Libraries.

Method 2
  1. Right click the project name and navigate to Build Path.
  2. Select Configure Build Path... and the project properties window will appear showing your build path configurations.
  3. Select the Libraries tab.
  4. Click Add JARs...
  5. Locate and select the JARs you want and click OK. The JARs will now appear in the list of libraries in the build path.
  6. Click OK to close the properties window. The JARs will now be in Referenced Libraries instead of lib.

Adding External JARs


Note: It is much better to reference jars that exist in your project or in other projects - this allows you to check in all of your dependencies to your version control system. (You are using version control, right?)
Use one of the following methods.

Method 1
This is the preferred method, as it allows different developers of a common project to locate their external jars in different places.
  1. Right click the project name and navigate to Build Path.
  2. Select Configure Build Path... and the project properties window will appear showing your build path configurations.
  3. Click Add Variable...
  4. Click Configure Variables...
  5. Click New...
  6. Type a name for the new variable. For example, if these are jars for Tomcat, perhaps call it TOMCAT_JARS
  7. Browse to the directory that contains the jar for the path. (You can also select a specific jar file for the variable, if you prefer.)
  8. Click Ok to define the variable
  9. Click Ok to close the preferences dialog
  10. Select the variable from the list
  11. Click Extend...
  12. Select the jar(s) that you want to add to the classpath
  13. Click Ok to close the extend dialog
  14. Click Ok to close the new classpath variable dialog
  15. Click Ok to close the build path setup dialog

If you share the project with someone else, they must also define the variable. They can define it under
Window->Preferences->Java->Build Path->Classpath Variables

Method 2
Note that if you use this method, the external jar will need to be in the same location on the hard drive for anyone who uses this project. This can make sharing a common project more difficult.
  1. Right click the project name and navigate to Build Path.
  2. Select Add External Archives...
  3. Locate and select the JARs you want and click Open. The JARs will now appear in Referenced Libraries.

Method 3
Note that if you use this method, the external jar will need to be in the same location on the hard drive for anyone who uses this project. This can make sharing a common project more difficult.
  1. Right click the project name and navigate to Build Path.
  2. Select Configure Build Path... and the project properties window will appear showing your build path configurations.
  3. Select the Libraries tab.
  4. Click Add External JARs...
  5. Locate and select the JARs you want and click Open. The JARs will now appear in the list of libraries in the build path.
  6. Click OK to close the properties window. The JARs will now be in Referenced Libraries.

Tips


  • Whenever you add new files or folders to your projects in Eclipse via anything but Eclipse, you must refresh the affected projects to let Eclipse know that the new files are there. Otherwise you may run into compiler or build path errors.
  • Though the internal JARs disappear from lib, they are still there in the file system. It is merely Eclipse's perspective telling you that those JARs have been added.

Article provided by wikiHow, a wiki how-to manual. Please edit this article and find author credits at the original wikiHow article on How to Add JARs to Project Build Paths in Eclipse (Java). All content on wikiHow can be shared under a Creative Commons license.
Read More >>

Developing Hybrid Applications for the iPhone

Now, you don’t need to dive headfirst into Objective-C to write state-of-the-art applications for the iPhone. You can use web development tools and technologies you already know: JavaScript, HTML, and CSS. In this book, long-time web and mobile application developer Lee S. Barney shows you how to use the QuickConnect and PhoneGap frameworks to create secure, high-quality, modular hybrid iPhone applications.

Lee S. Barney walks you through the entire hybrid iPhone development process, from creating great user interfaces to compiling, deploying, and executing applications. Along the way, he introduces techniques and sample code designed to streamline development, eliminate complexity, optimize performance, and leverage all iPhone’s native capabilities—from its accelerometer and GPS to its built-in database.

Coverage includes

  • Using Dashcode and Xcode together to create unique, exciting hybrid iPhone applications
  • Using the QuickConnect JavaScript API to perform tasks ranging from vibrating the phone to accessing the accelerometer and GPS location data
  • Accessing native iPhone functionality using the PhoneGap JavaScript API
  • Storing, retrieving, and managing data on the iPhone, even without network access
  • Using XMLHttpRequest to access or synchronize remote data and use web services
  • Creating Google-based maps for your own app that work like those you see in the iPhone’s Maps application
This book systematically lowers the barriers to iPhone development, enabling web developers to build any iPhone application they can imagine without long development cycles or steep learning curves!

Developing Hybrid Applications for the iPhone: Using HTML, CSS, and JavaScript to Build Dynamic Apps for the iPhone is available at Amazon.com.
Read More >>

LightBox 2: Simple JavaScript Image Gallery

This video tutorial shows how to create a photo gallery one using Dreamweaver and by the time you watch this video you will be able to setup and edit your very own LightBox 2 JavaScript Photo Gallery.

You can download LightBox 2 here: http://www.huddletogether.com/projects/lightbox2/


Read More >>

Pervasive Games: Theory and Design

Games are no longer confined to card tables and computer screens. Emmy award winning games like "The Fallen Alternate Reality Game" (based on the ABC show) or "The Lost Experience" (based on the CBS hit show)- are pervasive games in that they blur traditional boundaries of game play. This book gives game designers the tools they need to create cutting edge pervasive games.

Quickly emerging from the fast-paced growth of mobile communications and wireless technologies, pervasive games take gaming away from the computer screen and back to the three-dimensional world. Now games can be designed to be played in public spaces like shopping malls, conferences, museums and other non-traditional game venues. Game designers need to understand how to use the world as a gamespace-and both the challenges and advantages of doing so.

This book shows how to change the face of play-who plays, when and where they play and what that play means to all involved. The authors explore aspects of pervasive games that concern game designers: what makes these games compelling, what makes them possible today and how they are made. For game researchers, it provides a solid theoretical, philosophical and aesthetic understanding of the genre.

Pervasive Games covers everything from theory and design to history and marketing.

designers, so that they can learn how to engage players' real-time experiences beyond the mobile phone or computer screen.

-Thirteen case studies with illustrative and inspiring examples make the entire pervasive games design space tangible.

-Provides practical design tips, potential pitfalls, design problems from real games, and inspiration from some of the most interesting pervasive game designers in the world, including Matt Adams, Frank Lantz, and others.

Pervasive Games: Theory and Design is available at Amazon.com.
Read More >>

Free Oracle Database 10G New Features for Administrators Practice Exam

Oracle 9i administrators can certify on Oracle 10G by passing this exam. The Oracle Database 10G New Features for Administrators practice exam provides their unique triple testing mode to instantly set a baseline of your knowledge and focus your study where you need it most.

The practice exam covers the following Oracle recommended objective categories:
  • Installation
  • Server Configuration
  • Load and Unload Data
  • Automatic Management
  • Manageability Infrastructure
  • Application Tuning
  • Support for Analytical Applications
  • System Resource Management
  • Automating Tasks with the Scheduler
  • Space Management
  • Improved VLDB Support
  • Backup and Recovery Enhancements
  • Flashback Any Error
  • General Storage Enhancement
  • Automatic Storage Management
  • Maintain Software
  • Security
  • Miscellaneous New Features

Get your FREE Oracle Database 10G New Features for Administrators practice exam today!
Read More >>

Handcrafted CSS: More Bulletproof Web Design

This is a different kind of CSS book. It takes the approach that there's a real connection between craftsmanship and Web design. Handcrafted CSS gives frustrated Web designers the ammo they need to convince their clients and bosses to adopt innovative and effective CSS techniques that make their lives easier while improving the end user's experience. This book offers designers a transitional approach that teaches them when it's OK to push the envelope a bit, how best to do it, and when not to.

The book's seven chapters deconstruct various aspects of a case-study Web site, focusing on aspects that make it bulletproof and demonstrate progressive enrichment techniques over more traditional labor-intensive methods. Subjects include building for unanticipated future use; progressively enriching designs using CSS3 properties that work today; the magic and flexibility of using RGB color with an alpha channel; modular float management, crafting flexible frameworks; fluid layouts using grid-based design principles; and craftsmanship details on typography, jQuery, and shifting backgrounds.

Handcrafted CSS: More Bulletproof Web Design is available at Amazon.com.
Read More >>

Game Design

Practical, complete coverage of game design basics from design process to production.

This full-color, structured coursebook offers complete coverage of game design basics, focusing on design rather than computer programming. Packed with exercises, assignments, and step-by-step instructions, it starts with an overview of design theory, then progresses to design processes, and concludes with coverage of design production.

Take your first step into the exhilarating world of game design with this fully structured course book. Richly illustrated with screengrabs and artwork, step-by-step tutorials take you through all aspects of designing and developing dynamic computer games.
  • Find out the conventions of gameplay; the principles of linear and sandbox games; how to create games for a variety of platforms; how to develop and animate characters, levels, and environments that will excite and engage players.
  • Including practical exercises and assignments, information on the major software programs and game engines that will render your ideas a (virtual) reality, and advice on going pro, this unique book is your portal to the gaming industry.

Game Design is available at Amazon.com.
Read More >>

JavaScript Profiler in Internet Explorer 8

In this video, Matt Hester demonstrates Internet Explorers 8s built-in JavaScript profiler, allowing developers to improve and streamline their JS-based applications.

Read More >>

Mutable DOM Prototypes in Internet Explorer 8

In this video, Matt Hester shows how Internet Explorer 8s support for Mutable DOM Prototypes allows developers to manipulate and extend the functionally of DOM objects.

Read More >>

Native JSON in Internet Explorer 8

In this video, Matt Hester demonstrates Internet Explorers 8 implementation of Native JavaScript Object Notation (JSON) and the performance benefits of leveraging Native JSON for use in websites.

Read More >>

Play a Sound on an Event in Silverlight

In this video tutorial from Microsoft, learn how to play a sound on an event in Silverlight.

Read More >>

Selectors API in CSS

In this video, Matt Hester demonstrates Internet Explorers 8 new feature Selectors API for utilizing CSS selectors for quick and easy element lookups.

Read More >>

Silverlight Event Handling with JavaScript

Understanding the event handling model is vital to building interactive experiences. In this video, you'll see how events are hooked up to controls.

Read More >>

Use Attached Properties for Additional Data Storage in Silverlight

In this how-to video, Peter Bahaa shows how to use attached properties for additional data storage.

Read More >>

Groovy SQL Switch Sets New Standard For Databases

Groovy Corporation, the provider of parallel SQL processing software for the live web, released new data today that confirms the Groovy SQL Switch's ability to significantly outperform relational databases. The performance metrics, based on the Dell DVD Store Database Test Suite, detail how the Groovy SQL Switch was 105 times faster and processed 37 times more orders per minute than the fastest relational database. The data revealed by Groovy Corporation today at the AlwaysOn Summit at Stanford 2009 indicates that a truly real-time, live data experience is available now without the cost and complexity associated with the standard approach of massively scaling data centers to generate a real-time experience.

"Mass-market relational databases were never designed for real-time. Many data-driven businesses developed solutions to work around this issue as the value of real-time became more obvious, but these fixes most often resulted only in a near real-time experience and a costly infrastructure," said Joe Ward, chief executive officer of Groovy Corporation. "The Groovy SQL Switch democratizes real-time data. By offering the scalability required to deliver the real-time experience on a small foot print and at an affordable rate, Groovy Corporation is extending the benefits of the live web to any enterprise that wants to make the leap to the next generation of online services."

The Dell DVD Store Database Test Suite is an open source benchmark designed and written by the Dell Enterprise team that simulates an online DVD retailer. It produces simulations of implementations running on Microsoft SQL Server, Oracle and MySQL, incorporates driver programs and Web applications present in a common online retailer setting and produces results based on the orders per minute generated during the test cycle. Groovy leveraged the benchmark to examine the behavior of the Groovy SQL Switch under a heavy load, to compare the Groovy solution's performance against a well tuned version of MySQL, the relational database that previously reported the fastest Dell DVD Store Database Test Suite performance, and to determine the suitability of the Groovy SQL Switch as a real-time bolt-on to MySQL.

The results of Groovy's tests leveraging the Dell DVD Store Database Test Suite indicate that the Groovy SQL Switch significantly outperforms the fastest relational database. The Groovy SQL Switch generated a 2.33 millisecond response rate compared against the previous 244 millisecond record response time of the previously fastest performance recorded on the Dell DVD Store Database Test Suite. The Groovy solution also produced 168,845 orders per minute compared against the 4,614 orders per minute of the previously fastest database. Furthermore, the Groovy SQL Switch was capable of managing more connections while maintaining low CPU loads and actually had more performance available than the Dell DVD Store Database Test Suite drivers were capable of testing.

In the past, real-time applications were reserved for the most data hungry businesses such as financial services and massive-scale consumer Web applications. Due to the cost, real-time was a luxury. Today, less that 1% of IT applications are real-time. The advantage of the real-time architecture is that data is pushed to the user and does not require a refresh for an instant update, enabling a live Web experience that delivers benefits in business-to-business and business-to-consumer settings. By unlocking a true, real-time experience, the Groovy SQL Switch enables new capabilities such as faster transactions for online retailers, immediate news updates for media companies and up to the second sales or marketing data for businesses.

The performance results announced today are the first in a series of planned benchmark announcements that will highlight how the Groovy SQL Switch is faster than today's leading relational databases. Groovy Corporation is working in conjunction with its technology and investor partner Intel Corporation to generate a series of performance results that will highlight how the Groovy SQL Switch produces a true, real-time experience based on industry-recognized benchmarks and in customer scenarios. Through the partnership, the two companies seek to pioneer a substantial lead in high performance and scalable, live data management.

For more information, visit www.groovycorp.com or follow Groovy Corporation on Twitter at www.twitter.com/groovycorp.

Source: PRWeb
Read More >>

Beautiful Data: The Stories Behind Elegant Data Solutions

In this insightful book, you'll learn from the best data practitioners in the field just how wide-ranging -- and beautiful -- working with data can be. Join 39 contributors as they explain how they developed simple and elegant solutions on projects ranging from the Mars lander to a Radiohead video. With Beautiful Data, you will: Explore the opportunities and challenges involved in working with the vast number of datasets made available by the Web Learn how to visualize trends in urban crime, using maps and data mashups Discover the challenges of designing a data processing system that works within the constraints of space travel Learn how crowdsourcing and transparency have combined to advance the state of drug research Understand how new data can automatically trigger alerts when it matches or overlaps pre-existing data Learn about the massive infrastructure required to create, capture, and process DNA data

That's only small sample of what you'll find in Beautiful Data. For anyone who handles data, this is a truly fascinating book.

Beautiful Data: The Stories Behind Elegant Data Solutions is available at Amazon.com. Read More >>

Using Visual Studio 2008 to Provide Silverlight Services

In this video, J. Michael Palermo IV will demonstrate how to configure Visual Studio 2008 to enable existing web sites (not using Silverlight) to be enabled for Silverlight development.

Read More >>