-
Posted: February 10th, 2012, 6:00am MST
When programming, there will naturally be activities we will want to do again and again: adding up the values in an array, stripping extraneous blank spaces from a string, getting infor mation into a hash in a particular format, and so on. It would be tedious to write out the code for each of these little processes every time we need to use one, and maintaining each code segment would be horrific: if there's a bug in the way we've coded the activity, we'll have to go through and find each one of them and fix it. It would be better if we could define a particular process just once, and then be ...
-
Posted: February 9th, 2012, 7:54am MST
Described as a modular component within Oracle's Network Resource Management solution, Oracle Communications Network Integrity allows network operators to synchronize and maintain current data in their network inventory systems. The solution also supplies deployment options that are either integrated with Oracle or third-party platforms. Oracle Communications Network Integrity 7.1 comes with several improvements that add to its impressive pre-existing list of features. Version 7.1's enhancements begin with circuit and service assimilation and discrepancy detection capabilities for optical and ...
-
Posted: February 8th, 2012, 7:52am MST
Xeround Releases Free Version of its Popular Cloud Database for MySQL Applications Xeround, a provider of database software for public and private clouds, recently announced the availability of Xeround FREE, a no-cost edition of its elastic and highly available cloud database solution for MySQL applications. With Xeround FREE, MySQL users can employ the cloud database solution's functionality with ease, as no installation, configuration, or maintenance of a MySQL database in the cloud is required. Regarded as the only true native cloud database, Xeround FREE was developed specifically to avo...
-
Posted: February 6th, 2012, 6:00am MST
Jetpack by WordPress.com Think of Jetpack as a supercharged plugin packed with various features to truly help you maximize your site's potential. While many plugins may offer one simple, yet important piece of functionality, Jetpack offers a ton of them. As for the plugin's social media perks, there's a Twitter Widget that displays a users latest updates. The Gravatar Hovercards feature adds small popups in the comments section that give a sneak peek into user Gravatar profiles. Easier sharing is enabled through WP.me Shortlinks. Want to implement embedding functionality? Jetpack will do...
-
Posted: February 1st, 2012, 9:57am MST
The Oracle PartnerNetwork Specialized program supplies partners with a host of resources to help develop, implement, and sell Oracle products. Over time, the program has been enhanced through the addition of Specializations that allow partners to differentiate themselves from competitors once they demonstrate an outstanding level of competency, expertise, and success. Tomas Ulin, Oracle's MySQL VP of engineering, commented on the new specialization: Oracle continues to innovate across the MySQL product family to address the evolving needs of both our end-user and partner community. MySQL co...
-
Posted: January 31st, 2012, 8:40am MST
Oracle first introduced its Big Data Appliance as well as the NoSQL database at the company's OpenWorld user conference last October. According to analyst David Menninger of Ventana Research, the appliance was created to manage and analyze data sets deemed to be too large for storing in standard databases. The Big Data Appliance boasts a lineup including Sun server hardware (18 Linux-based x86 Sun servers with 216 processor cores, 648TB raw disk storage, 864GB working memory), Oracle NoSQL database, Oracle's Java HotSpot Virtual Machine, and an open-source distribution of R. George Lumpkin, Or...
-
Posted: January 30th, 2012, 6:00am MST
As an important part of PHP 5.3's new features, closures have quickly made a mark on the language's field. This is due to their versatile nature, which allows programmers to utilize them in a wide variety of use cases and situations. They not only yield great results when processing array elements in all sorts of clever ways; it's fairly easy to get excellent results with them in the object-oriented programming arena as well. The best way to show you how using anonymous functions can help you to develop more efficient OO applications is with some functional, hands-on examples. With this idea i...
-
Posted: January 26th, 2012, 8:45am MST
Specializing in online marketing through email, surveys, social media, and more, Constant Contact's customer base extends all over the globe. With so many customers depending on the company for their online marketing needs, Constant Contact was in need of the proper support to accompany its move towards open source with MySQL. SkySQL was eventually selected for a variety of reasons, and has helped Constant Contact with building and deploying a sturdy MySQL database architecture. In addition, SkySQL has aided Constant Contact with training 10 database administrators over the course of severa...
-
Posted: January 25th, 2012, 8:47am MST
Headlining PeopleTools 8.52's list of improvements is support for Apple's popular iPad tablet. The move makes Oracle the lone enterprise resource planning vendor to provide an enterprise suite on the iPad, giving users the ability to access PeopleSoft on the go while maintaining the functionality and security one would normally expect in a stationary setting. While iPad support is appealing, it's just the tip of the iceberg when it comes to PeopleTools 8.52's enhancements. The user interface has been upgraded to improve interactivity through the use of new pagelets and inter-pagelet communic...
-
Posted: January 24th, 2012, 9:06am MST
Unquestionably, the release of PHP 5.3.x, along with the imminent arrival of PHP 5.4 (at least, at the time of this writing), clearly show the level of maturity that the language has reached in the last few years. The inclusion of support for native namespaces, Late Static Binding, a largely improved SPL and of course the long-awaited traits, are all part of the wealth of niceties that PHP offers to picky developers. Although most of these features have found their own niche over time (with the sole exception of traits, for obvious reasons), there's one more that, because of its versatile natu...
-
Posted: January 22nd, 2012, 11:19pm MST
In this part of the tutorial, I will be discussing the code showcased in part one of this series
[www.devshed.com] as well as the general concepts required to program under iOS. As was mentioned before, I used Xcode 4.1 to create the test project for our discussion. In this version several items are automatically generated when Xcode creates the project. Our main focus for this article will be the HelloWorldAppTutorialAppDelegate header and code files. First, let us look at the header file generated by Xcode. T...
-
Posted: January 19th, 2012, 8:19am MST
The move expands Oracle Big Data Appliance's offerings of hardware and software offerings geared towards high performance and scalable data processing for Big Data by two solid products. Cloudera Distribution Including Apache Hadoop is the industry's most widely deployed distribution of Hadoop in both commercial and non-commercial settings. Described as being 100 percent open source, CDH is also regarded as the most tested, reliable, and stable product of its kind. Big Data Appliance's portfolio already included Oracle NoSQL Database Community Edition, an open source distribution of R, Orac...
-
Posted: January 18th, 2012, 9:00am MST
Escape Sequences UTF8 gives us 65536 characters, and ASCII gives us 256 characters, but on the average keyboard, there's only a hundred or so keys. Even using the shift keys, there will still be some characters that you aren't going to be able to type. There'll also be some things that you don't want to stick in the middle of your program, because they would make it messy or confusing. However, you'll want to refer to some of these characters in strings that you output. Perl provides us with mechanisms called escape sequences as an alternative way of getting to them. We've already seen the us...
-
Posted: January 16th, 2012, 6:15pm MST
comScore surveyed over 30,000 mobile subscribers aged 13 and up in the United States to collect the results of its online study. It tracked the smartphone market, as well as the entire U.S. mobile market that includes smartphones and non-smartphones, which are often referred to as feature phones. The study compared the three-month average of total smartphone subscribers ending August 2011 versus the three-month average ending November 2011 for the following platforms: Apple, Google, Microsoft, Research in Motion (RIM), and Symbian. Of the five platforms, only Google and Apple saw an increase...
-
Posted: January 11th, 2012, 9:00am MST
Program Structure One of the things we want to develop throughout this book is a sense of good programming practice. Obviously this will not only benefit you while using Perl, but in almost every other programming language too. The most fundamental notion is how to structure and lay out the code in your source files. By keeping this tidy and easy to understand, you'll make your own life as a programmer easier. Documenting Your Programs As we mentioned earlier, a line starting with a hash, or pound sign ( # ), is treated as a comment, and ignored. This allows you to provide comments about ...
-
Posted: January 9th, 2012, 6:00am MST
Ted Ferrell, chief architect and senior VP of Oracle's Tools amp; Middleware division, spoke of the new IDE's appeal to Java developers in the official press release. He said: The latest NetBeans IDE release provides the Java developer community with many new features to help them create leading-edge Web, mobile and enterprise applications. As the first IDE to support JavaFX 2.0, NetBeans IDE 7.1 not only gives developers rich support for developing JavaFX 2.0 applications, but also ensures they have access to all of the advances delivered in the latest Java platform releases. NetBeans ID...
-
Posted: January 6th, 2012, 8:30am MST
In this article, I will show how the standard Hello World! application can be developed in the iOS framework. In this tutorial, I will be using Xcode 4.1 to develop this simple example. Therefore, the screenshots and code that will be supplied with it will apply specifically to that version of Xcode. First, start a new project by selecting File gt; New gt; New Project. There are several options for project types. For this tutorial, select the Window-based Application project type under the Applications section. For this tutorial, input HelloWorldAppTutorial for the Product N...
-
Posted: January 5th, 2012, 8:30am MST
Every programming language has a number of things in common. The fundamental concepts of programming are going to be the same, no matter what language in which you do them. In this chapter, we'll investigate the things you need to know before you start writing any programs at all. For instance: What is programming anyway? What does it mean to program? How do we structure programs, and make them easy to understand? How do computers see numbers and letters? How do we find and eliminate errors in our programs? Of course, we'll be looking at these from a Perl perspective, and we'll...
-
Posted: January 3rd, 2012, 10:00am MST
PHP's Program Execution Functions This section introduces several functions (in addition to the backticks execution operator) used to execute system-level programs via a PHP script. Although at first glance they all appear to be operationally identical, each offers its own syntactical nuances. exec() string exec (string command [, array output [, int return_var]]) The exec() function is best-suited for executing an operating system-level application (designated by command) intended to continue executing in the server background. Although the last line of output will be returned, chances ar...
-
Posted: December 30th, 2011, 6:00am MST
Being by far the most popular open source RDBMS available to date, MySQL offers a wealth of engaging facilities that make it stand out from its closest competitors. A stable, reliable performance, solid support for ACID transactions and multiple storage engines, foreign keys handling and cascade operations are only a small part of the tremendous menu of features that the database server offers for free. These have, not surprisingly, contributed to extending its existing popularity even further over time. Among other features, MySQL includes a powerful privilege administration module. It lets y...
-
Posted: December 28th, 2011, 6:00am MST
Let's be honest: how many times have you found yourself writing a custom static helper class, or putting your hands eagerly on one that came bundled with a framework, from the many available out there? If you're anything like me, the answer will be at least Â
a few (remember that the first step to healing is admitting you have a problem). Static helpers seem to be a great idea at first glance, as they're reusable components that don't require any kind of expensive instantiation for doing common tasks, such as determining base URLs and paths or validating incoming data. But the sad and unavoid...
-
Posted: December 26th, 2011, 6:00am MST
The enhanced technology and functionality now shipping in smartphones, tablets, and other portable devices has allowed their popularity to skyrocket with consumers seeking solutions for productivity and entertainment on the go. App developers have noticed this demand and have responded by equipping mobile apps with a variety of functions that were typically associated with desktop environments, such as news, audio, video, gaming, and much more. While it's no surprise that developers are creating apps to coincide with the needs of consumers, the pace at which apps are entering the market is s...
-
Posted: December 23rd, 2011, 6:00am MST
Let's be honest: unless you're a multifaceted, good-at-everything web developer, with skills that go beyond the boundaries of (X)HTML, CSS, JavaScript and the server-side language of your choice, most of the time you'll be reluctant to deal with the oddities of MySQL. With lots of frameworks and libraries that will do the leg work for you and handle the interaction with the database server, you'd rarely need to spend your valuable time diving into its lower-level features. After all, that's what systems administrators are for, right? While the actual tasks you'll be performing with MySQL will ...
-
Posted: December 21st, 2011, 6:00am MST
Constructing purely static helper classes can hurt you, especially when you're trying to build applications that adhere to the principles of good object-oriented programming. As I explained extensively in the first part of this tutorial, static helpers are inflexible structures that can only be extended via Inheritance, and that don't exploit the benefits of Polymorphism or dependency injection. Naturally, the most educational way to learn why static helpers (or any other kind of static class, of course) should be replaced with instantiable classes is through some concrete, easy-to-foll...
-
Posted: December 19th, 2011, 6:00am MST
Approximately 2,800 adults over the age of 18 were surveyed by Harris Interactive on behalf of mobile ad provider Pontiflex during November. 958 of the participants identified themselves as smartphone owners, while another 257 were tablet owners. According to the online survey, only 3 percent of the participants said they frequently used an app that they had installed to receive an incentive. While it's not surprising that few participants used their incentivized apps on a frequent basis, the percentage is so low that it really calls into question the quality and worth of such apps, particu...
-
Posted: December 13th, 2011, 10:26pm MST
Cashton Coleman, SuccessBricks' President and CEO, as well as creator of ClearDB, said: We are pleased to now offer ClearDB as a powerful add-on for Heroku customers. It has been a pleasure to work with the Heroku team, and we're excited to bring our game-changing MySQL database service to Heroku customers. quot; The result of over four years of research and development by the SuccessBricks team, ClearDB allows its users to maintain a database connection in the event of sudden and widespread internet outages, which alone should attract many Heroku developers. SuccessBricks claims ClearDB is...
-
Posted: December 12th, 2011, 9:30am MST
System-Level Program Execution Truly lazy programmers know how to make the most of their entire server environment when developing applications, which includes exploiting the functionality of the operating system, file system, installed program base, and programming languages whenever necessary. In this section, you'll learn how PHP can interact with the operating system to call both OS-level programs and third-party installed applications. Done properly, it adds a whole new level of functionality to your PHP programming repertoire. Done poorly, it can be catastrophic not only to your applica...
-
Posted: December 9th, 2011, 8:37am MST
Eric Chu, director of Android's developer ecosystem, described the recent success, stating: One billion is a pretty big number by any measurement. However, when it's describing the speed at which something is growing, it's simply amazing. Perhaps the main factor behind Android's success is the fact that the platform now offers so many smartphones and tablets under its umbrella. Several big name manufacturers have stood behind the platform and are releasing Android-based products at a rapid pace. Google claims that over 200 million Android devices have been sold, while there is an average ...
-
Posted: December 8th, 2011, 9:30am MST
Let's face it: building a full-featured ORM in PHP (or in any other programming language) is a challenging and difficult process that requires careful planning. You'll need a solid background in some popular data persistence patterns, such as Active Record and Data Mapper. That's a tall order, especially since this kind of package must be able to handle all of the possible relationships between the objects that compose an application, not to mention the validation that must be performed on them. Fortunately, there's a healthy variety of ORMs available that will do the hard work for you. What's...
-
Posted: December 7th, 2011, 7:30am MST
Writing to a File This section highlights several of the functions used to output data to a file. fwrite() int fwrite (resource handle, string string [, int length]) The fwrite() function outputs the contents of string to the resource pointed to by handle. If the optional length parameter is provided, fwrite() will stop writing when length characters have been written. Otherwise, writing will stop when the end of the string is found. Consider this example: lt;?php $subscriberInfo = quot;Jason Gilmore|wj@example.com quot;; $fh = fopen( quot;/home/www/data/subscribers.txt quot;, quot;at ...
-
Posted: December 4th, 2011, 11:07pm MST
I've written extensively about Safari Books Online in the past. Six articles in total at this point, and yet somehow, as I delve deeper into the company's repertoire of goodies, I keep uncovering new things to discuss. To me, this speaks volumes not only about the depth of their product, but also about the flexibility and ingenuity of their offerings. I've covered the basic offerings: books, technical articles, and search capabilities. I've spoken to the cross-platform agility of their mobile and tablet apps. And in the last article, I took you inside their video vault, a treat for those visua...
-
Posted: December 2nd, 2011, 8:15am MST
CyanogenMod's distinction as aftermarket firmware designed for Android smartphones allows it to supply users with enhanced features. The team behind the firmware has been recently working on CyanogenMod 9, a version based on Ice Cream Sandwich's open source code which Google released during the middle of November. As of right now, owners of the Samsung Nexus S can make use of an alpha version of CyanogenMod 9, while Samsung Galaxy S owners can try out a beta version. Users and developers have given mostly positive feedback on the CyanogenMod releases thus far, with only a few MMS bugs and o...
-
Posted: December 1st, 2011, 6:00am MST
As its name would suggest, TroSQL Free 1.10 helps to boost productivity for both small businesses and large organizations at no cost. It's also a useful tool understanding and learning how databases work. The release is just another in a line of products from TROSYS that gives clients the power to maximize efficiency in the realms of MySQL database and server management, product development, debugging, resource optimization, and more. Besides its distinction as a free tool, TroSQL is highlighted by a plethora of features, beginning with compatibility. The program ships as a small EXE that i...
-
Posted: November 30th, 2011, 6:00am MST
The highlight of the latest update includes a number of statements marked as unsafe for statement-based replication. According to the H Open website, all of the statements given the distinction of being unsafe supposedly rely on the result of a select statement where the order cannot be relied upon. Oracle recommends that any users who engage in statement-based logging should read the accompanying documentation for additional guidance regarding the issues addressed in the update. Beyond the replication issue, Oracle also used MySQL 5.5.18 to fix a problem where the master could send dama...
-
Posted: November 29th, 2011, 6:00am MST
Reading from a File PHP offers numerous methods for reading data from a file, ranging from reading in just one character at a time to reading in the entire file with a single operation. Many of the most useful functions are introduced in this section. file() array file (string filename [int use_include_path [, resource context]]) The immensely useful file() function is capable of reading a file into an array, separating each element by the newline character, with the newline still attached to the end of each element. Although simplistic, the importance of this function can't be understated...
-
Posted: November 28th, 2011, 6:00am MST
In a statement to the site Pocket-lint.com, an Adobe spokesperson discussed the upcoming release, stating: Adobe will release one more version of the Flash Player for mobile browsing, which will provide support for Android 4.0, and one more release of the Flash Linux Porting Kit -- both expected to be released before the end of this year. Once the release is available, Adobe will be pretty much done with development of its mobile Flash Player. Users will be able to count on security updates and critical bug fixes from Adobe, however. As for other companies' relationships with the mobile ...
-
Posted: November 23rd, 2011, 8:00am MST
File Ownership and Permissions These days, security is paramount to any server installation, large or small. Most modern operating systems have embraced the concept of the separation of file rights via a user/group ownership paradigm, which, when properly configured, offers a wonderfully convenient and powerful means for securing data. In this section, you'll learn how to use PHP's built-in functionality to review and manage these permissions. Note that because PHP scripts typically execute under the guise of the server daemon process owner, some of these functions will fail unless highly in...
-
Posted: November 22nd, 2011, 8:33am MST
What's more, if you've already read the first installment of this tutorial, you're probably familiar with the functionality that I plan to add to this custom ORM. In that first part, I implemented the ORM's data access and mapping layers. And as you'll surely recall, the entire implementation process was pretty straightforward and easy to follow. Of course, in its current state the ORM is still far from a fully-functional structure. We need to add some additional components to it, such as a domain model and the classes responsible for handling collections of entities (remember that the ORM rel...
-
Posted: November 21st, 2011, 10:29am MST
When you think of the word young in terms of app developers, you may envision a twenty-something who develops on the side while also attending college. For the purpose of this article, however, think much younger, such as those in their teenage years. In fact, there are developers making their mark at a mere 12 years of age. It's not all for fun, either, as some of these youngsters are making enough money off their app sales to buy their favorite tech products or even save for college. Take a look at the United States' Thomas Suarez, for example. Only 12 years old, Suarez has already dev...
-
Posted: November 17th, 2011, 10:20pm MST
There's no shortage of options when it comes to picking a PHP-based ORM. The current variety of options satisfies a broad number of tastes and palates, even the pickiest ones. Similar to some other utility packages available, the prolific nature of ORMs brings with it a healthy effect: whether you use a popular third-party MVC framework like CodeIgniter Reactor, CakePHP or Kohana (only to name a few) or employ your own MVC masterpiece, chances are that you can add the functionality of an ORM to your applications with only minor hassles. Don't let the large number of ORMs fool you, though; the ...
-
Posted: November 16th, 2011, 11:00am MST
As one of the building blocks of the Standard PHP Library (SPL), the ArrayObject class is a traversable, countable structure, which allows you to treat objects as arrays. This functionality seems irrelevant at first sight, but the class may be a real time-saver in certain situations. That's especially true when you need to create custom implementations (for instance, a dynamic registry or a service locator) without having to implement from scratch the ArrayAccess, IteratorAggregate and Countable SPL interfaces. The best way to get things rolling with ArrayObject is by example. In the first pa...
-
Posted: November 16th, 2011, 10:30am MST
Added to PHP5 and improved in successive releases, the Standard PHP Library (SPL) is one of those things that, once you've used it, makes you wonder how you could live so long (and so painfully) without it. The library provides, right out the box, a set of native interfaces and classes which allow you to perform different tasks, without having to enter quot;userland. quot; While the SPL's core functionality is unquestionably hard to beat, sometimes it's a little overwhelming; it includes so many classes, and some of them have been assigned some strange names (especially the native iterators)....
-
Posted: November 15th, 2011, 6:00am MST
Retrieving a Directory Size PHP doesn't currently offer a standard function for retrieving the total size of a directory, a task more often required than retrieving total disk space (see disk_total_space()). And although you could make a system-level call to du using exec() or system() (both of which are introduced later in this chapter), such functions are often disabled for security reasons. The alternative solution is to write a custom PHP function that is capable of carrying out this task. A recursive function seems particularly well-suited for this task. One possible variation is offered...
-
Posted: November 14th, 2011, 10:30am MST
Steve Jobs did a great job in identifying Flash's drawbacks in an open letter released in 2010. Jobs crafted the letter in response to critics who questioned Apple's decision to not support Flash on the iPhone. Jobs countered the criticism by noting that Flash was not properly suited for touch-screen devices, was a battery hog, and that it also lacked in the realms of security and performance. While many thought Jobs barbs were personal, it now seems as if they were true from the outset. There are plenty of real-life examples of Flash's poor performance on mobile devices that back Jobs' sen...
-
Posted: November 14th, 2011, 6:00am MST
According to a quote derived from ZDNet, Adobe broke the news to developers by saying: We will no longer adapt Flash Player for mobile devices to new browser, OS version or device configurations. Some of our source code licensees may opt to continue working on and releasing their own implementations. We will continue to support the current Android and PlayBook configurations with critical bug fixes and security updates. quot; While Adobe's latest move obviously creates a negative impact for the company itself, others are sure to feel the ill effects as well. In particular, manufacturers of ...
-
Posted: November 10th, 2011, 6:00am MST
To begin, visit the XAMPP for Windows homepage, located at:
[www.apachefriends.org] You will have several options for which flavor of XAMPP you wish to install, including the Installer, Zip, and 7zip versions. For simplicities sake, this tutorial will use the simplest method: the installer. Click on the Installer link and you will be redirected to the programs SourceForge page. You may get a pop-up like the one below - if so, click Run: Next, you will be prompted to choose an installation language. Choose English (or whichever language you wish) and click the quot...
-
Posted: November 9th, 2011, 10:00am MST
File Types and Links Numerous functions are available for learning various details about files and links (or file pointers) found on a file system. Those functions are introduced in this section. filetype() string filetype (string filename) The filetype() function determines and returns the file type of filename. Eight values are possible: block: A block device such as a floppy disk drive or CD-ROM. char: A character device, which is responsible for a nonbuffered exchange of data between the operating system and a device such as a terminal or printer. dir: A directory. fifo: A ...
-
Posted: November 8th, 2011, 8:51am MST
If your website uses weak passwords, your SSH server can easily be hacked using brute force techniques. Almost all paid hosting accounts in the most common web hosting companies do include the SSH feature. But the default SSH activation is not enough; it is still susceptible to brute force hacking attacks. An SSH server (such as your hosting account) can be accessed in two ways: using password authentication, and using public key authentication. Password authentication is the most common method of accessing an SSH server. It requires users to enter the SSH username, password, hostname and SSH ...
-
Posted: November 6th, 2011, 10:13pm MST
In addition to the NoSQL Database release, Oracle also announced that its highly anticipated Big Data Appliance would become available during the first quarter of 2012. Oracle initially gave a sneak peek into both products at the Oracle Open World Conference in San Francisco a few weeks ago, so the rather quick availability and updated information show that the company is taking aggressive steps to measure up to the competition. The timing of Oracle's announcements could not be any better, as its competitors are also making moves in the large-scale data processing arena. EMC and IBM kicked t...
-
Posted: November 4th, 2011, 6:30am MDT
It's quite rare to write an application that is entirely self-sufficient--that is, a program that does not rely on at least some level of interaction with external resources, such as the underlying file and operating system, and even other programming languages. The reason for this is simple: As languages, file systems, and operating systems have matured, the opportunities for creating much more efficient, scalable, and timely applications have increased greatly as a result of the developer's ability to integrate the tried-and-true features of each component into a singular product. Of course,...
-
Posted: November 2nd, 2011, 8:32am MDT
I have said it a thousand times in the past: I love Safari Books Online Their vast array of books covering virtually every technical topic known to man is unparalleled and using their system could not be any simpler. Add to that the fact that you can access over 17,000 books not just by computer, but by mobile devices such as the iPad, iPhone, BlackBerry, and so on (for more on this, see my review here: Safari Books Online Mobile Review), and you have a truly unbeatable product that any technical professional should have in their arsenal. While I have talked extensively about their offerings ...
-
Posted: November 1st, 2011, 6:00am MDT
Enterprise Management Associates (EMA), an IT research firm, conducted a study on smartphone satisfaction in September, approximately one month prior to the RIM service outage. After surveying 243 smartphone users employed by companies with over 10,000 workers, EMA found that 30 percent of BlackBerry users planned to change to a different smartphone in 2012. The study also noted that 11 percent of BlackBerry users said they were completely dissatisfied with their service. That may seem like a minority, but when compared to a two percent level of dissatisfaction among iPhone users and a zero...
-
Posted: October 30th, 2011, 10:14pm MDT
While proxy objects can be utilized in a variety of situations and environments, they yield excellent results when lazy-loading data from an application's persistence layer (usually this layer is seated upon a RDBMS, but it could be a web service or anything else). With the progressive adoption in the PHP field of Domain-Driven Design methodologies, the use of proxies for loading and reconstituting collections of domain objects on request from the underlying storage can help in the implementation of more efficient persistence strategies. This is true despite the need in some cases to create a ...
-
Posted: October 26th, 2011, 9:30am MDT
Patch Options The patch program has a number of options. (You can refer to the patch man page for more details.) However, in practice, the only option that matters much is the -p argument, which is used to align the absolute paths used in the patch #64257;le with the local directory structure containing the sources that the patch is being applied to. When you run cvs diff to create a patch #64257;le, it is best to do it from within the source tree, at the highest level in the directory hierarchy necessary to include all the #64257;les that have changes. The resulting patch #64257;le will,...
-
Posted: October 25th, 2011, 8:44am MDT
Jelastic's data is based on the four major open source databases it supports: MySQL, MariaDB, MongoDB, and PostgreSQL. Results taken for October 2011 show an open source database distribution that is led by MySQL with a 46 percent global market share. MongoDB comes in second with 21 percent, and PostgreSQL and MariaDB come in third and fourth place with 19 percent and 14 percent, respectively. The term global market share refers to the sum of the percentages found in North America and Europe, which are the only locations where Jelastic is available at this time. A closer look into the n...
-
Posted: October 24th, 2011, 10:00am MDT
Although they still haven't gained the huge level of popularity of other design patterns (at least in the PHP field), proxies are a powerful paradigm that allows users to perform some clever tasks in OOP. These include unit testing classes, introspecting other objects, and even implementing more efficient data persistence strategies (pretty similar to what Doctrine 2.x does behind the scenes with entities). Of course, talking about the virtues that proxy objects offer without backing up the words with code samples is pointless. Therefore, in the introductory part of this tutorial, I started d...
-
Posted: October 24th, 2011, 6:00am MDT
There's no doubt that the most challenging facet in the development of an MVC-based web application, even the simplest one, is the implementation of the model(s). While controllers and views are inherently relevant pieces within the pattern's schema, they can be created to display a more relaxed behavior (at least to some extent), and even work decently upon a poorly-designed infrastructure, be it a full framework or a set of independent libraries. On the other hand, the model is a pristine and carefully-crafted creature, responsible for the application's state. Since it plays such a crucial r...
-
Posted: October 21st, 2011, 10:11am MDT
While expectations may be lowered a bit for a mobile version of such an add-on, the creators behind NoScript for Firefox made sure that its Android edition comes with all the capabilities of its predecessor. It has been tested for optimal performance on Firefox for Android, but should also work well on the Maemo platform. As for the full-featured capabilities of the add-on, they begin with clickjacking prevention on the client side via ClearClick. Router and web applications are protected from CSRF and DNS rebinding attacks by the App Boundaries Enforcer (ABE), which is essentially a true w...
-
Posted: October 19th, 2011, 6:30am MDT
Setting Up and Using CVS For those of you who are interested, I describe the steps it takes to set up a CVS server on a Red Hat-based system. The steps I provide here are almost certainly going to be the same when executed on non-Red Hat systems, and may differ in certain ways on other UNIX-based systems, including Mac OS X. The work involved in getting a CVS server up and running is not terribly dif #64257;cult, and can be done in a relatively short amount of time. You will need root access to the system upon which you are installing the server, and it will help to have a second system with ...
-
Posted: October 17th, 2011, 1:41pm MDT
And now that you know what to expect, it's tiem to recap the topics discussed in the last installment. In that tutorial, I constructed a pair of dependency injection containers, along with a static helper. These allowed us to shield from client code the creation of the object graph corresponding to the user service. With the implementation of these additional elements, the scene is finally set to put the service into action and see if it is actually as functional as it seems. In this last chapter I'll be creating a concrete example that will show you how to use the service to retrieve, save a...
-
Posted: October 17th, 2011, 9:47am MDT
If you need to develop flexible, highly-extendable PHP applications that can be interfaced easily with different client layers, you will want to consider a service layer. As a fundamental pillar of Domain Driven Design (DDD), a service is an enterprise-level pattern that will let you encapsulate application logic behind a single interface -- which can be consumed by distinct clients (yes, including your carefully-crafted action controllers!) while keeping code duplication to a minimum. There's little sense to highlighting the benefits of a service layer without providing proof. To partially ad...
-
Posted: October 17th, 2011, 9:47am MDT
While the term may make you nervous, the truth is a service is nothing but an abstraction layer which permits you to interface application logic with different client layers. These client layers can range from several front-ends, to the so-called action controllers that can be found in many MVC frameworks available today. Put in a simpler way, a service is an enterprise-level pattern, and as such, it's both language and platform agnostic. This means that it can be implemented in most programming languages, including PHP, even though in general it's not considered by many to be a true enterpri...
-
Posted: October 17th, 2011, 9:47am MDT
Superbly covered in Martin Fowler's book Patterns of Enterprise Application Architecture, a service layer
[martinfowler.com] is an enterprise-level pattern that can be used for encapsulating application logic behind a single interface. This interface can be used by different clients. As with a few other patterns available, a service is particularly useful in the development of applications that use the domain-driven design paradigm (DDD), where the domain model has its own constraints and rules, and lives completely isolated from the persistence layer (the s...
-
Posted: October 17th, 2011, 9:47am MDT
If you ever need to implement a pluggable structure that allow your PHP applications to interact easily with different client layers, such as several front-ends or multiple external APIs, then you might want to consider a service layer
[martinfowler.com] A service layer is an enterprise-level pattern that will let you achieve this kind of interaction by encapsulating application logic behind a single interface (AKA a boundary), which can be directly consumed by distinct clients. Of course, highlighting the benefits that a service offers without adding some ...
-
Posted: October 17th, 2011, 9:47am MDT
Although its name may sound intimidating, a service is nothing but an additional abstraction layer (usually placed on top of the mapping one). It permits you to encapsulate application logic behind a single entry-point interface that can be consumed by several different clients, without having to deal with frustrating code duplication issues. As with any other design pattern, the creation of a service isn't tied to a particular programming language or platform. This means that it's perfectly possible to implement it in a fairly straightforward fashion with PHP and enjoy the benefits that it pr...
-
Posted: October 14th, 2011, 9:00am MDT
In February, Nokia announced that Windows Phone would become its smartphone OS of choice. The announcement was seen as a major step in the right direction for Microsoft, as it would gain a partner in Nokia with a strong reputation in the mobile market. The official announcement was accompanied by a Nokia spokesman's statement that fragmentation would be avoided by not porting the company's pre-existing development environment to operate with the Windows Phone platform. To keep from alienating its loyal Symbian developers, Nokia along with Microsoft made the decision to add Symbian Qt to the...
-
Posted: October 13th, 2011, 9:30am MDT
Item 12: Set Up a Tinderbox Tinderbox is a tool that was developed initially at Netscape, but that is now open source software maintained by the Mozilla project. Tinderbox is designed to manage the complexity one encounters when developing software, especially in terms of large-scale cross-platform software that involves a widely distributed team of developers. Tinderbox is particularly useful in cross-platform projects, as you will see. Coupled with a system known as bonsai, the goals of Tinderbox are fairly simple: Communicate any and all changes made over time to the source code repositor...
-
Posted: October 12th, 2011, 11:30am MDT
Despite the status of the releases as DMRs, Ulin noted that their quality should not be questioned. He explained how Oracle's complete shift in its development philosophy has MySQL moving forward on a positive note into the future. A year ago we changed our development model. We decided to go to more incremental, quot; he said. quot;With each milestone, what we strive to do is bring in only a few features and make sure they're of highest quality. We could go out today and say, this is a release candidate or this is a GA [general release candidate], Ulin said. MySQL 5.6 is expected to rece...
-
Posted: October 12th, 2011, 8:59am MDT
According to Navneet Joneja, Google Cloud SQL's product manager, Google App Engine users repeatedly voiced the need for an avenue to develop traditional applications driven by databases in a simple manner. Such feedback resulted in the creation of Google Cloud SQL. The combination of Google's App Engine and Cloud SQL services simplifies developers' lives by eliminating the worry of having to handle the administration, management, and maintenance of databases. Google handles those time-consuming and dreadful tasks, which frees up valuable time for developers to concentrate on actually develo...
-
Posted: October 11th, 2011, 12:35am MDT
While an MVC stack can be implemented in several different ways (quite possibly there exists one per developer), you know that a minimalist approach goes in general with the following application flow: once a request has been triggered within the user interface, the front controller does some routing and dispatches the request to the appropriate action controller, along with the associated argument(s). In turn, the action controller grabs one or more models and uses them to perform CRUD operations in the persistence layer (usually a RDBMS, but it could be a web service or anything else). Fina...
-
Posted: October 7th, 2011, 6:00am MDT
According to Jaspersoft, the new iOS SDK gives developers a solid platform to create native iPad BI software. Users can also call on Business Intelligence Suite 4.2 to deploy a mobile BI solution quickly thanks to the browser-based iPad compatibility it offers. Such as feature works well for those who do not require the improved power and responsiveness that is often associated with native development. Other features touted by Jaspersoft in the new release include enhanced ad-hoc reporting and its variety of data visualization options, new representational state transfer (REST) APIs, an Obj...
-
Posted: October 6th, 2011, 11:30am MDT
Born in 1955, Jobs grew up in the same place he later built Apple's headquarters, in Cupertino, California. He displayed his well-known brashness and interest in electronics at a young age; as a teen-ager, he didn't shy away from phoning the president of Hewlett-Packard for parts for a school project. (William Hewlett not only sent Jobs the parts; he offered him a summer job at the company). Jobs did go to college; he dropped out after a year, though, returning later to audit a class on calligraphy. It's this class that he credits with giving him the graceful sense of design that influences ...
-
Posted: October 5th, 2011, 6:30am MDT
A software con #64257;guration management (SCM) system consists of tools and processes used to manage the source code of a project and to assess its state. With these tools, management and developers can do the following: Peruse the source code managed by the SCM system Obtain a local copy of the source code Submit modi #64257;cations made to the source code by developers Understand which changes have been made to the source code b y developers Determine the state of the source code (for example, whether it compiles) Log and track defects associated with binaries created ...
-
Posted: October 2nd, 2011, 10:19pm MDT
Anyone who knows me knows that I am a huge fan of books; I typically read ten at a time, which, as you can imagine, gets cumbersome. When digital books first hit the scene my reaction was iffy; being a writer, I knew the dangers of digital media - my own book had been stolen more times than it had been purchased. That being said, the first time I laid my hands on an e-reader and quot;flipped quot; through my first few pages, I was hooked. No more complaining that I had too many books. No more losing one of the ten I had constantly in rotation because the cleaning lady hates me. Now I could ke...
-
Posted: September 27th, 2011, 6:00am MDT
SQL injection attacks are nothing to sniff at, and Imperva reported that they have accounted for 83 percent of successful hacking-related data breaches since 2005. According to statistics from Privacyrights.org, such hacking resulted in serious losses during that time period. There were 312,437,487 data records lost due to hacking with about 262 million records from various breaches including TJMax, RockYou and Heartland, all of which were SQL injection attacks, noted Imperva's blog post. For its report, Imperva monitored a collection of 30 different web applications over the last nine mon...
-
Posted: September 26th, 2011, 6:00am MDT
It's no secret that the tech landscape is continuing to shift towards a mobile environment as time goes by. Many companies are starting to concentrate on the mobile market to keep up with trends and the ever-growing presence of devices for use on-the-go. With various mobile operating platforms competing against each others, companies and developers must decide where they want to invest their time and money. Apple's iOS and Google's Android platforms are currently the kings, with Microsoft's Windows Phone 7 lagging way behind. With that being said, is Windows Phone 7 really down for the co...
-
Posted: September 21st, 2011, 8:32am MDT
If the name doesn't ring any bells, MongoDB
[www.mongodb.org)] is a highly-scalable, document-oriented database written in C++, which permits you to store data by utilizing a JSON-like representation. This means that you can perform CRUD operations (among others) without having to deal with the pitfalls and mismatch issues of an RDBMS, especially when it comes to handling objects, whose state must be persisted in tables. If you already read the two previous installments of this tutorial, at this stage you should have a clear idea of how to put MongoDB to work for you, as I explained how ...
-
Posted: September 19th, 2011, 11:07am MDT
SolarWinds' initial release of the Application Performance Monitor took place in January of this year. The company launched the product with the hopes of offering systems administrators a comprehensive and affordable solution for monitoring the performance of vital IT services in terms of the server resources they run on (Windows, Unix, Linux), the OS, and application components. SolarWinds' APM continues the tradition of the company's quest to provide IT management software that is both powerful and cost effective, and will likely add to its current client list that includes small businesse...
-
Posted: September 16th, 2011, 8:30am MDT
Matt Bencke, GM at Microsoft, urged developers to get moving with their Mango app submissions in a recent post on the Windows Phone blog. He said: The time to get your Mango apps into Marketplace is now. Existing customers will begin getting their OS update this fall. At a minimum it's worth updating your existing app now so that when customers experience Mango they benefit from 'fast app switching' multitasking, which requires little more than a recompile of the app. If you want to stand out from the crowd, get your apps updated to take advantage of other Mango features like Live Tiles and...
-
Posted: September 15th, 2011, 9:11pm MDT
If you think that the group of RDBMS' out there fall short when it comes to persisting the host of objects that comprise your applications, maybe it is time to get rid of the constraints imposed by relational databases and take a look at MongoDB
[www.mongodb.org),] a schema-less, document-oriented database written in C++, which lets you store your carefully-crafted objects by using a JSON-like representation known as BSON
[bsonspec.org).] Although it's fair to admit that object-oriented databases don't have much of a presence in the terrain of web development, which is in most cas...
-
Posted: September 11th, 2011, 8:56pm MDT
Before we begin, you may want to check out the other two articles I wrote regarding Safari Books Online. The first, a general overview, can be found here. The second, a tutorial on how to use the product, is located here. Additionally, in this article I will be using the trial version of Safari Books Online. If you care to follow along - or would like to try the product yourself - you can sign up here. They are currently offering a special deal exclusively for Developer Shed readers. Take advantage of this 10 day free trial and save 30% for the next six months. All told, Safari Books Online o...
-
Posted: September 9th, 2011, 6:00am MDT
According to the Nielsen survey, smartphones now make up 40 percent of all the mobile phones in the United States. While standard feature phones still hold the majority at 60 percent, smartphones are making steady penetration into the market, which means that manufacturers have plenty of incentive to compete for their attention. Breaking down smartphone ownership reveals that Google's Android OS is currently king, with a 40 percent market share. Apple's iPhone iOS comes in second with 28 percent, and RIM BlackBerry falls into third with 19 percent. Windows Mobile/Phone 7 lags behind with a...
-
Posted: September 8th, 2011, 9:30am MDT
How to sort a result set by an alias, an expression, or a column number Figure 3-18 presents three more techniques that you can use to specify sort columns. First, you can use a column alias that's defined in the SELECT clause. The first SELECT statement in this figure, for example, sorts by a column named address, which is an alias for the concatenation of the vendor_city, vendor_state, and vendor_zip_code columns. Within the address column, the result set is sorted by the vendor_name column. You can also use an arithmetic or string expression in the ORDER BY clause, as illustrated by the s...
-
Posted: September 7th, 2011, 6:00am MDT
The product is said to be the industry's only SQL server defragmentation solution that simplifies the process of pinpointing fragmentation of hotspots through automation. It gives users the power to defragment indexes automatically or when needed, thus helping to improve SQL Server's overall performance. Index fragmentation is one of the major causes of lethargic SQL Server performance. By keeping indexes defragmented, SQL defrag manager v3.0 keeps SQL Server applications running at optimal performance levels. This frees database administrators from having to waste precious time on manual d...
-
Posted: September 6th, 2011, 12:11am MDT
The announcement came during the Salesforce.com Dreamforce '11 conference, which brings hundreds of companies and thousands of customers, partners, and developers together to discuss cloud computing. The timing of the announcement could not be better, as Java support on Heroku was recently made official. New Relic's application performance management tool offers a comprehensive solution for monitoring web applications and is used by a host of businesses, both large and small. The New Relic Standard edition provides 24/7 app and user monitoring and is ideal for smaller projects. It supplie...
-
Posted: September 2nd, 2011, 6:00am MDT
Windows Phone Applist, a site that specializes in tracking statistics for the Windows Phone Marketplace, documented the smartphone platform's latest triumph. Microsoft initially issued tools to app developers in March of 2010, a few months prior to the October 2010 launch of various Windows Phone Devices. The Windows Phone Marketplace reached a count of 11,500 apps in March of 2011, and has quickly exceeded more than double that total with over 30,000 apps currently. Although the sudden growth of Windows Phone 7's app population does show that there is some developer interest in the device...
-
Posted: September 1st, 2011, 9:23am MDT
Without a doubt, RDBMS' (Relational Database Management Systems) rule the world of data persistence. Backed by a huge (and growing) number of manufacturers, which cover a plethoric variety of platforms and environments, relational databases are - in most cases - the default mechanism for storing information in a relatively straightforward manner. However, not all is wonderful in the terrain of RDBMS, since the use of tables isn't always the best way to persist objects (either real or virtual ones). In many use cases (like persisting blog posts), the storage process suffers from an issue common...
-
Posted: August 31st, 2011, 6:30am MDT
How to use the LIKE operator One final operator you can use in a search condition is the LIKE operator, shown in figure 3-15. You use this operator along with the wildcards shown at the top of this figure to specify the string pattern, or mask, that you want to match. The examples in this figure show how this works. In the first example, the LIKE phrase specifies that all vendors in cities that start with the letters SAN should be included in the query results. Here, the percent sign (%) indicates that any characters can follow these three letters. So San Diego and Santa Ana are both include...
-
Posted: August 30th, 2011, 9:03am MDT
Heroku first introduced its Celadon Cedar stack in May. The company claimed that the stack would be able to run any language. With the addition of Java to the mix, Heroku's is solidified even further. Adam Wiggins, co-founder of Heroku, described the latest move in a recent blog post, noting: Java is, by many measures, the world's most popular programming language. In addition to its large and diverse developer base, it offers a huge ecosystem of libraries and tools, an extremely well-tuned VM for fast and reliable runtime performance, and an accessible C-like syntax. Bill Lapcevic, VP o...
-
Posted: August 26th, 2011, 8:37am MDT
Nielsen Smartphone Analytics collected its data during June of this year by installing meters on thousands of smartphones running on the Android operating system. The meters tracked data concerning usage on the phones to give Nielsen researches further insight into how they are actually used. The study found that the average Android user in the United States interacts with the web and uses apps for approximately 56 minutes per day. Of the 56 minutes, 67 percent involves app usage, with the remaining third going to the web in the form of browsing and more. A closer look into the app usage sh...
-
Posted: August 25th, 2011, 8:42am MDT
The official resignation by Jobs does not come as a complete surprise, as he had recently been plagued by various health problems. Jobs turned over Apple's reigns to Cook in January of this year when he was forced to take an indefinite medical leave. It was his third such leave in recent years, but he was determined to return to his position, stating, I love Apple so much and hope to be back as soon as I can. Jobs' unfortunate medical history began in August of 2004, when he had surgery to treat a rare form of pancreatic cancer. The procedure was a success, and Jobs returned to work the n...
-
Posted: August 25th, 2011, 6:30am MDT
How to use the IN operator Figure 3-13 shows how to code a WHERE clause that uses the IN operator. When you use this operator, the value of the test expression is compared with the list of expressions in the IN phrase. If the test expression is equal to one of the expressions in the list, the row is included in the query results. This is illustrated by the first example in this figure, which will return all rows whose terms_id column is equal to 1, 3, or 4. You can also use the NOT operator with the IN phrase to test for a value that's not in a list of expressions. This is illustrated by the...
-
Posted: August 24th, 2011, 8:39am MDT
There is certainly more than one way to backup your Joomla! website, but without a reliable component (or even a built-in one), backing up a Joomla! website is a feat left to more technically savvy individuals. Without a backup component, the only way to reliably backup your Joomla! website is by using complex database and operating system commands. Luckily, a wonderful backup component for Joomla! has been developed called Akeeba Backup
[www.akeebabackup.com] Akeeba Backup is a native Joomla 1.5/1.6 backup component available in two versions: Akeeba Backup Core (free, limited support...
-
Posted: August 23rd, 2011, 6:00am MDT
It's not breaking news that MySQL is by far the most popular open-source RDBMS that exists today. The widespread adoption of the database server stems from a balance of robustness and solid performance; it doesn't hurt to that it also supports a variety of storage engines, which gives users the ability to pick the one that best suits their needs. Unfortunately, not everyone using MySQL is an experienced DBA with a deep background on each storage engine supported by the server. This is especially evident in the terrain of web development, where (in many cases) the design of a project's database...
-
Posted: August 22nd, 2011, 8:34am MDT
In order to maintain a timely release date, Oracle had to ship Java 7 without several advanced features that the company had planned for the platform. While those omissions may be a letdown, it is quite likely that such features could be included in Java 8. Mark Little, the senior director of engineering for Red Hat's middleware business and Red Hat's primary liaison for the Java Community Process, said, Java 8 is supposed to set the scene for the cloud, for a wider deployment arena. According to Little, two key features will be necessary to give Java 8 capabilities for wide-scale cloud d...
-
Posted: August 19th, 2011, 8:49am MDT
Productivity is one of BlackBerry 7's strengths, as it should be. RIM went ahead and made the Document to Go's premium version free on all phones running BlackBerry 7. The feature gives users the ability to view, edit, and compose files in Microsoft Word, Excel, and PowerPoint. Such a move makes sense considering BlackBerry's enterprise-friendly aura. The BlackBerry Balance feature has also been added to the new OS, which helps to organize personal and business information separately when connected to a corporation's BlackBerry Enterprise Server. Security has not been ignored either. With...
-
Posted: August 17th, 2011, 11:54pm MDT
Perhaps better known as quot;The Principle of Least Knowledge quot;, the Law of Demeter
[en.wikipedia.org] is a programming paradigm, which encourages the design of loosely-coupled classes that take advantage only of the functionality offered by their closest collaborators. Although this may sound logical, the truth is that sometimes we tend (either due to ignorance or as a consequence of bad design), to provide our classes with dependencies that aren't actually required, or act as mediators to access the ones that are needed. As with many other concepts of object-o...
-
Posted: August 17th, 2011, 9:00am MDT
How to code the WHERE clause The WHERE clause in a SELECT statement filters the rows in the base table so that only the rows you need are retrieved. In the topics that follow, you'll learn a variety of ways to code this clause. How to use the comparison operators Figure 3-11 shows you how to use the comparison operators in the search condition of a WHERE clause. As you can see in the syntax summary at the top of this figure, you use a comparison operator to compare two expressions. If the result of the comparison is True, the row being tested is included in the query results. The examples ...
-
Posted: August 16th, 2011, 6:00am MDT
This might just be my opinion, but if I had to choose the flashiest star in the sky that is PHP, I'd have to mutter two words: Dependency Injection. Seated in solid logic, DI (or Inversion of Control) is the new kid on the block, which allows you to create modular, highly-testable classes that ask for their collaborators - either in their constructors or setters - instead of looking for them. While I have to confess that I'm a big fan of DI, I admit that there are cases where it can be difficult to figure out what dependencies to inject into a given class. Further more, sometimes we're not car...
-
Posted: August 15th, 2011, 8:02am MDT
Networking and security features have been upgraded, as have the versions of numerous libraries. Developer efficiency has been addressed through language changes that clarify syntax and make code more concise to simplify day-to-day programming tasks. Significant performance increases on the JVM are achieved thanks to improved support for dynamic languages such as JavaScript, Python, and Ruby. Problems can be decomposed into tasks that can be executed in parallel across multiple processor cores with the help of a new multicore-ready API. There's also an improved I/O interface that offers mo...
-
Posted: August 12th, 2011, 8:30am MDT
If the past is any indication, Microsoft isn't exactly warmed up to the idea of spending its time and financial energy into markets where it's bound to struggle. This makes it even all more surprising that Windows Phone/Windows Mobile lags behind its competition, placing fifth in the world smartphone market. 2011 doesn't seem to get much better for Microsoft's mobile platform, as IDC projects that Windows Phone/Windows Mobile will only achieve a 4 percent market share by the end of the year. While the present may not be ideal for Microsoft, the future offers plenty of promise. The release o...
-
Posted: August 11th, 2011, 9:28am MDT
Previously, I published two articles on converting Wordpress posts to PDF files without using a plug-in: Part 1:
[www.seochat.com] Part 2:
[www.seochat.com] In those examples, the scripts worked with one small glitch: they do not have the ability to include the Wordpress post images in the PDF file along with the text content. As a demonstration of how the original application works, feel free to test t...
-
Posted: August 10th, 2011, 9:00am MDT
Wine Configurations and Versions Some Windows programs (particularly games) do not optimally run in all versions of Wine. Ideally, an Ubuntu gamer will research the Wine application database:
[appdb.winehq.org] to determine the optimal Wine version and settings that the game would run. If you need an introductory tutorial about the basics in optimizing your Wine settings for a particular Windows application, you can refer to this tutorial:
[www.devshed.com] In reality, you may be installing more than one Windo...
-
Posted: August 9th, 2011, 8:30am MDT
How to use the DISTINCT keyword to eliminate duplicate rows By default, all of the rows in the base table that satisfy the search condition in the WHERE clause are included in the result set. In some cases, though, that means that the result set will contain duplicate rows, or rows whose column values are identical. If that's not what you want, you can include the DISTINCT keyword in the SELECT clause to eliminate the duplicate rows. Figure 3-9 illustrates how this works. Here, both SELECT statements retrieve the vendor_city and vendor_state columns from the Vendors table. The first statemen...
-
Posted: August 8th, 2011, 12:38am MDT
Compared to the same timeframe last year, the smartphone market grew 73 percent globally during the second quarter of 2011, with approximately 107.7 million units shipped. Android easily held the distinction of the worldwide leader, with a market share of 48 percent. Of the 56 countries that Canalys tracks for its estimates, Android was number one in 35 of them. An estimated 51.9 million Android units shipped during the last quarter, which represents a 379 percent increase over last year. Much of the platform's success can be attributed to impressive releases from vendors such as HTC, LG, ...
-
Posted: August 3rd, 2011, 8:09am MDT
Not that I want to sound pessimistic, but using SQL without understanding the basics of joins is pretty much like trying to drive a car that has only three wheels - you're not getting the most out of the language! That being said,joins are fairly easy to master -at least at a basic level.To prove this,in the course of the introductory part of this series, I developed a few easily understandable examples, which showed how to perform FULL and INNER joins using a couple of sample MySQL tables. If you missed that article or need a refresher, you can find it here:
[www.devshed.com]
-
Posted: August 2nd, 2011, 8:00am MDT
How to use scalar functions Figure 3-7 introduces you to scalar functions, which operate on a single value and return a single value. These functions work differently than the aggregate functions described in chapter 5 that are used to summarize data. For now, don't worry about the details of how these functions work, because you'll learn more about them in chapter 8. Instead, just focus on how they're used in column specifications. To code a function, you begin by entering its name followed by a set of parentheses. If the function requires one or more parameters, you enter them within the p...
-
Posted: July 29th, 2011, 6:30am MDT
Apple's recent institution of new rules concerning publisher apps in its App Store has not exactly been welcomed with open arms. Apps are now prohibited from containing links that allow users to purchase content in the form of e-books, magazine subscriptions, and more via external sources such as company websites. The rule has not only created an inconvenience for app users looking to purchase content, but it has also changed the way in which certain app publishers like Amazon, Barnes amp; Noble, and the Wall Street Journal are doing business through the App Store. Instead of allowing users...
-
Posted: July 28th, 2011, 8:01am MDT
No matter what type of website you have, it's essential to provide an avenue that allows your visitors to contact you. A form provides such an avenue, as your visitors can contact you to offer feedback on your site and its content, plus much more. It's also a great alternative to simply posting your email address on your site, which could attract a lot of spam. Besides having forms that are functional, you should try your best to make them aesthetically pleasing as well to make your site more inviting. AJAX is a powerful tool when it comes to creating forms that are user-friendly and easy t...
-
Posted: July 28th, 2011, 6:30am MDT
How to code string expressions A string expression consists of a combination of one or more character columns and literal values. To combine, or concatenate, the columns and values, you use the concatenation operator (||). This is illustrated by the examples in figure 3-5. The first example shows how to concatenate the vendor_city and vendor_state columns in the Vendors table. Notice that because no alias is assigned to this column, Oracle assigns a name, which is the entire expression. Also notice that the data in the vendor_state column appears immediately after the data in the vendor_city...
-
Posted: July 27th, 2011, 6:30am MDT
Recent advancements in PHP offer the developer a variety of tools to improve the security of login systems. The login script we will be developing consists of the following very important security features: 1.) A Hashed password (SHA-256+ Strong Salt) stored in a MySQL database. 2.) Anti-brute force protection using captcha challenges and denied access for more than X failed attempts relating to a specific IP address. 3.) User registration by providing username and password - protected with a captcha to prevent automated sign-ups. 4.) Protection of user-sessions against session hijacking and...
-
Posted: July 26th, 2011, 6:30am MDT
It's hard to admit, but sooner or later we have to face the facts: most web developers (including myself) are reluctant to write SQL queries from scratch. To be honest, this happens for a logical reason: having so many languages and technologies to deal with at the same time on the client and server-side, it's perfectly understandable that we don't want to waste our valuable time hard coding boring SQL commands that in most cases have been neatly wrapped inside a framework or a library. Having such an evasive attitude with SQL is simply to defer an unavoidable fact: even if you use a framew...
-
Posted: July 25th, 2011, 6:30am MDT
Stimulsoft, a software manufacturer with offices in Russia and Belarus, recently announced the release of its Stimulsoft Reports.Fx for Java program. The software falls in line with Stimulsoft's tradition of producing solutions in the realms of data processing and analysis, giving Java users the ability to generate reports while keeping convenience and compatibility in mind. The release marks the third of its kind for Stimulsoft, as the company has already introduced similar products for Flex and PHP. Aleksey Pchelnikov, Stimulsoft's project manager in charge of the Reports.Fx for Java proje...
-
Posted: March 7th, 2007, 2:00pm MST
The composite pattern is one of the less commonly used patterns in PHP 5. Nevertheless in certain situations it is very helpful. This article the first one in a two-part series will introduce you to the basic concepts of the composite pattern....
Now you can afford a cutting edge Dedicated Server The latest spec servers instantly deplayed, hosted securely in our data centers, private LANs, remote kvm. All with no bandwidth bills - each server has its own dedicated pipe - all from as little as £49 per month. Instant Signup
-
Posted: February 26th, 2007, 2:00pm MST
Among the considerable variety of structural design patterns that can be implemented with PHP 4 and PHP 5 by the way there s one in particular that deserves special attention. It s easy to apply in the context of a given web application and it offers remarkable functionality when it comes to preventing the unnecessary instantiation of different classes. This two-part series covers that pattern....
Now you can afford a cutting edge Dedicated Server The latest spec servers instantly deplayed, hosted securely in our data centers, private LANs, remote kvm. All with no bandwidth bills - each server has its own dedicated pipe - all from as little as £49 per month. Instant Signup
-
Posted: February 21st, 2007, 2:00pm MST
So far we have covered security vulnerabilities that involve form data databases and file systems. In this article we are going to look at authentication and the security issues around it. We will also look at some of the most common attacks in this field....
Now you can afford a cutting edge Dedicated Server The latest spec servers instantly deplayed, hosted securely in our data centers, private LANs, remote kvm. All with no bandwidth bills - each server has its own dedicated pipe - all from as little as £49 per month. Instant Signup
-
Posted: February 20th, 2007, 2:00pm MST
In the previous two articles we discussed how to read and build an RSS document with PHP. In this article we will create an application that uses the concepts discussed in the other two articles. So let s go straight to the coding....
Now you can afford a cutting edge Dedicated Server The latest spec servers instantly deplayed, hosted securely in our data centers, private LANs, remote kvm. All with no bandwidth bills - each server has its own dedicated pipe - all from as little as £49 per month. Instant Signup