Search This Blog

Monday, February 28, 2011

A simple way to flush memcache

Here is a simple way to flush the data stored in memcache

telnet localhost 11211
Connected to localhost.
Escape character is ‘^]’.
Connection to localhost closed by foreign host.

Thursday, February 24, 2011

How to Apologize to Your Boss for Missing a Deadline

Deadlines are a reality of working in any business, and some people are better with them than others. Missing deadlines can not only upset your boss or other superiors, but could also cost you your job. Apologizing before your boss brings the situation up with you can persuade your boss to give you a chance to complete the project, and give you another chance to prove that you have learned from your mistake. Making sure that you apologize will also show your boss that you respect him and the deadlines he imposes.

Read Full Article @: How to Apologize to Your Boss for Missing a Deadline |

How to Handle a Missed Deadline

I’ve been self-employed for almost 4 years and never once had I missed a client deadline. However, last week I came uncomfortably close. So close, that I was prepping myself for the “we’re not gonna make it” speech. What was I to say? How was I to approach the client? There’s no doubt that they would be angry and even though I had been doing everything in my power to meet the timeline, it was looking grim.
Luckily, in the last second, I made the cut without time to spare. By this time, I had a whole plan worked out as to how I was going to approach a possibly difficult client situation. Instead of wasting my series of steps and never thinking about it again (hopefully…), I decided I’d turn it into a post. Truth be told, the first thing I did was jump on the Internet and run a search on, “how to handle missed deadlines.” I didn’t get much help and I kept thinking, “Why are there no better resources for this kind of thing? What am I supposed to say?”
Now, if you’re in the position I was in last week (and hopefully you aren’t), my prepared plan may serve as a resource for you.

What to Do When a Deadline Can't Be Met

Missed deadlines can be expensive and disastrous for any business. If you are behind schedule and may miss an established deadline, here are some tips to remedy the problem.

If deadlines were met all the time, it would be a perfect world. Customers would be satisfied; you would be happy, and your company’s bottom line healthy.
Alas, this is not the case. The realities of life can sometimes cause you to miss deadlines. An urgent work assignment can come up unexpectedly or something in your personal life may demand immediate attention. You then try to break your neck catching up, even foregoing sleep and subsisting on coffee for days, which might just compound the problem.

You can see it now: irate customers barking on you on the phone for failing to deliver the promised product or service on time. Or customers checking on you every hour to know the progress of your assignment. Worse, customers may leave you for failing to accomplish the agreed terms of service on time. Some may even impose penalties.  
Missed deadlines, more so if done regularly, can be expensive and disastrous for any business. In fact, it can become a black eye on your record.
If you are behind schedule and may miss an established deadline, here are some tips to remedy the problem:

Read Full Article @

Quick Command - To find php files with Syntax Error

If you have hundreds & thousands of php file and if you have to find a file which syntax error then it is a nightmare.

Here is a ultra simple + quick command to find list of php file(s) which have syntax error

find ./ -name *.php -type f -exec php -l {} \; | grep -v "No syntax errors detected"

Wednesday, February 23, 2011

The UML Class Diagram: Part 1

So, what is a class diagram? Imagine you were given a task of drawing a family tree. The steps you would take would be:
  • Identify the main members of the family
  • Determine how they are related to each other
  • Identify the characteristics of each family member
  • Find relations among family members
  • Decide the inheritance of personal traits and characters
A class diagram is similar to a family tree. A class diagram consists of a group of classes and interfaces reflecting important entities of the business domain of the system being modeled, and the relationships between these classes and interfaces. The classes and interfaces in the diagram represent the members of a family tree and the relationships between the classes are analogous to relationships between members in a family tree. Interestingly, classes in a class diagram are interconnected in a hierarchical fashion, like a set of parent classes (the grand patriarch or matriarch of the family, as the case may be) and related child classes under the parent classes.
Similarly, a software application is comprised of classes and a diagram depicting the relationship between each of these classes would be the class diagram.
By definition, a class diagram is a diagram showing a collection of classes and interfaces, along with the collaborations and relationships among classes and interfaces.
A class diagram is a pictorial representation of the detailed system design. Design experts who understand the rules of modeling and designing systems design the system's class diagrams. A thing to remember is that a class diagram is a static view of a system. The structure of a system is represented using class diagrams. Class diagrams are referenced time and again by the developers while implementing the system.
Now you now know what a class diagram is. But, how does a class diagram relate to the use case diagrams that you read about in the earlier article? When you designed the use cases, you must have realized that the use cases talk about "what are the requirements" of a system. The aim of designing classes is to convert this "what" to a "how" for each requirement. Each use case is further analyzed and broken up into atomic components that form the basis for the classes that need to be designed.
However, besides use cases, the artifacts of a project, such as stakeholder requests, (signed off) requirement documents, functional specifications, and a glossary of terms for the project serve as other important inputs to the discovery of classes.
We will now see what the components of a class diagram are, and how to create a class diagram.


PHP_CodeSniffer is a PHP5 script that tokenises PHP, JavaScript and CSS files to detect violations of a defined coding standard. It is an essential development tool that ensures your code remains clean and consistent. It can also help prevent some common semantic errors made by developers.

Read Full Details @

Getting Started with Continuous Integration

Imagine that you've just fixed a bug in your application's code and checked the fix into the project's source code repository. How much do you know now? If all you know is that the fix worked on your machine, you're playing with fire. If you've run the fix through a suite of integration tests and are confident that it didn't break anything else in the project's code, you're doing much better: your process is under control. But would you believe that you can do better than that? There are some teams that know that the new checkin passes the integration tests, that the tests cover the entire codebase, that the project's coding standards are being followed, and that there's no excessive duplication in code. And they know this after every checkin. Best of all, they know this without human intervention: a little icon in their system tray turns red if anything goes wrong, and stays happily green otherwise. At any time, they can visit a Web page on their local intranet to check up on the current state of the code.
The technique behind this seeming magic is called continuous integration, and it's not as difficult to set up as you might think. In this article I'll show you how the pieces fit together for a simple .NET continuous integration server that will help you monitor the quality of your own coding efforts in real time.

Open Source Continuous Integration Tools

The introduction of a continuous integration paradigm into the aforementioned cycle fixes the integration problem. CI allows you to know almost immediately if the build process or QA or anything else failed due to a change in the code as a result of a bug. If a developer checks in a piece of code that breaks the build process, you want to know that as soon as possible. For instance, if your integration tests fail after a developer changes an interface, you want to know that right away.
In continuous integration, when code is checked in, the repository is built, basic (or even advanced) tests run, and a new drop is ready for further QA. Some open source tools can help bring this concept to your SEL.

phpUnderControl - Continuous Integration for PHP

phpUnderControl is an addon application for the continuous integration tool CruiseControl, which integrates some of the best PHP development tools. This project aims to make your first steps with CruiseControl and PHP as easy as possible. Therefore phpUnderControl comes with a command line tool that performs all modifications to an existing CruiseControl installation.

Read Full Details @

Simple Test for PHP

The following assumes that you are familiar with the concept of unit testing as well as the PHP web development language. It is a guide for the impatient new user of SimpleTest. For fuller documentation, especially if you are new to unit testing see the ongoing documentation, and for example test cases see the unit testing tutorial.

Using the tester quickly

Amongst software testing tools, a unit tester is the one closest to the developer. In the context of agile development the test code sits right next to the source code as both are written simultaneously. In this context SimpleTest aims to be a complete PHP developer test solution and is called "Simple" because it should be easy to use and extend. It wasn't a good choice of name really. It includes all of the typical functions you would expect from JUnit and the PHPUnit ports, but also adds mock objects. It has some JWebUnit functionality as well. This includes web page navigation, cookie testing and form submission.

Web Application Component Toolkit

The Web Application Component Toolkit is a framework for creating web applications. WACT facilitates a modular approach where individual, independent or reusable components may be integrated into a larger web application. WACT assists in implementing the Model View Controller pattern and the related Domain Model,Template ViewFront Controller and Application Controller patterns.
The WACT framework is developed with the philosophy of continuous refactoring and Unit Testing. WACT encourages these activities in applications based on the framework. WACT uses Simple Test as a unit testing framework.

Rephlux - A Continuous Integration Tool for PHP

What Is Rephlux?

Rephlux is a PHP based tool for running a continuous testing/build process on your project and taking action based on the outcome of your tests. It is inspired by the Java based CruiseControl[1]. It is free software, licensed under the GNU GPL (see the file COPYING for details).
Rephlux is aimed at distributed developments and developments within larger teams. It was built for use on the development of the Web Application Component Toolkit[2], a PHP project on SourceForge, with the aim of providing something more useful than the SourceForge nightly builds.

What Will It Do For Me?

Cut out some headaches and automate some repetitive jobs.
Rephlux should be run as a scheduled job during application development. On each run:
  • It checks your source code repository for changes since the last successful run - reporting on any revisions
  • If changes are detected it checks out a working copy of your source code and runs arbitrary scripts that you define, followed by your test script
  • It generates failure reports if your test script fails
  • If the tests pass it will run user-defined scripts for eg. document generation, creating a tarball distribution, deploying the app to your server, etc.
The major aim of the program is to regularly do something if all of your tests are passing.


  • Linux only
  • Only knows about Simpletest[3], and requires a custom reporter to be used in place of the Simpletest default CLI reporter (some very untested support for the Simpletest reporter is now available)
  • Only knows about CVS[4]
  • Only runs/parses a single test script
  • RSS reports only
  • Limited debugging output
  • Very ragged round the edges
  • Probably has some horrendous flaw that I haven't quite noticed yet
It still needs a lot of work (see the TODO) - so please contact me if you can help out.
If any of the above are a problem for you stop reading now and check back in six months ;)

Read Full Details @

The Best Continuous Integration Tools

In modern enterprise development, a complex project scope is very common. In this article, I will talk about the latest continuous instigation tools such as Apache's Continuum, Cruise Control (CC), and Hudson; all of them are designed to deal with project complexity, streamline build process, and report issues with the code as soon as they occur. They are perfect for use in an enterprise environment with large to medium size teams, may require a dedicated machine, and provide visual dashboards. These tools also enforce the process of continuous integration and are tightly coupled with a source control system, such as CVS, Subversion, and so forth. They may also simplify code maintenance and reduce the number of the issues that need to be fixed during the QA cycles.

The Continuous Integration Process Defined

The term "continuous integration" refers to a process that builds and tests code on a frequent basis. It was coined by Martin Fowler and Kent Beck, who first wrote about this process near the turn of the millennium.
The continuous integration servers constantly monitor source code repositories and as soon as new changes/commits are detected, they initiate a new build cycle. The build cycle actually involves code compilation and, in addition, may involve various tests and code analysis. If the process encounters errors, it may notify the build master or the culprit who checked in broken/invalid code.
The process can be summarized in these four steps:
  1. Team members check in code artifacts into the source control repository.
  2. The automated build server constantly monitors the repository.
  3. New code is continuously checked out [by this server].
  4. A new project build is continuously integrated and any issues are reported in real time.
There is much more to this concept and to the actual implementation of these automated build servers&mdahs;or continuous integration tools—such as definitions of best practices for the code structure, check-in locations, and so on. For instance, the process specifies that all working code should be in the main branch (trunk) of the code repository, and even though various tools can work with multiple branches, it is not recommended to do that.

Why You Should Implement Continuous Integration in Your SDLC

With the prevalence of distributed computing, software integration becomes a vital point of any software project these days. The challenge of any large software project is finding problems early and often. A continuous integration (CI) environment allows us to detect problems from build to unit test to basic deployment. If a change breaks the process, CI allows us to find out immediately and fix the problem before it simmers for days or even longer.
Many organizations have realized that the continuous integration paradigm is required to be agile and able to meet business demands. To that end, their development teams have created their own processes and tools/scripts to automate the build and test processes as much as possible. Such tools/scripts are at times difficult to build, costly and time consuming. Today, however, a number of free and open-source CI tools are available to help with the build and test aspects of a developer's job.
In this article, I present the pain points that CI helps alleviate and then survey a pair of the best known open source CI tools that can help you implement CI in your organization.

Three Ways Developers Can Leverage Cloud Computing

The rise of cloud technologies has given the developer immense resources not known in the past. You can now bring unprecedented richness to your application by hooking into cloud resources.

Read Full Article @

Creating Use Case Diagrams

The Use case diagram is used to identify the primary elements and processes that form the system. The primary elements are termed as "actors" and the processes are called "use cases." The Use case diagram shows which actors interact with each use case.

A use case diagram captures the functional aspects of a system. More specifically, it captures the business processes carried out in the system. As you discuss the functionality and processes of the system, you discover significant characteristics of the system that you model in the use case diagram. Due to the simplicity of use case diagrams, and more importantly, because they are shorn of all technical jargon, use case diagrams are a great storyboard tool for user meetings. Use case diagrams have another important use. Use case diagrams define the requirements of the system being modeled and hence are used to write test scripts for the modeled system.

So who should normally be involved in the creation of use cases? Normally, domain experts and business analysts should be involved in writing use cases for a given system. Use cases are created when the requirements of a system need to be captured. Because, at this point no design or development activities are involved, technical experts should not be a part of the team responsible for creating use cases. Their expertise comes in use later in the software lifecycle.

Read Full Article @

Tuesday, February 22, 2011

A Comprehensive List of UML (Unified Modeling Language) tools

A Comprehensive List of UML (Unified Modeling Language) tools can be found at Wikipedia @ Click Here

There are tools which can automatically generate PHP code plus there are tools which can reverse engineer PHP code to generate Class Diagram

BOUML - a UML tool for PHP code generation

BOUML is a free UML 2 tool box allowing you to specify and generate code in C++JavaIdl,Php and Python.
BOUML runs under Unix/Linux/SolarisMacOS X(Power PC and Intel) and Windows.
BOUML is very fast and doesn't require much memory to manage several thousands of classes, see benchmark.
BOUML is extensible, and the external tools named plug-outs can be written in C++ or Java, using BOUML for their definition as any other program. The code generators and reverses are ones of the pre-defined plug-outs included in the BOUML distribution. Seefeatures.

Google's Android 3.0 'Honeycomb' Released

Google has released the SDK for their tablet OS, Android 3.0 'Honeycomb.' Google states on its developers' blog that the APIs are final, and you can now develop apps targeting this new platform and publish them to Android Market. The new API level is 11.Read Full Article @ Slashdot

Friday, February 18, 2011

The World's 50 Most Innovative Companies - 2011

An artificial heart and its lightweight power drive. A better airline for Brazil. Chocolate from Madagascar and a soccer shirt made of plastic water bottles. A fashion leader escaping its pattern, a smelter, and that little coupon startup in Chicago that's suddenly worth billions. All this from one simple word: innovation.
The 50 companies on our 2011 list have chosen a unique path. Today's business landscape is littered with heritage companies whose CEOs battle their industry's broken model with inertia, layoffs, lawsuits -- anything that squeezes pennies and delays the inevitable. How many of these companies will be dominant in 2025? Few.
That world will be ruled by the kinds of companies on this list. They're nondogmatic, willing to scrap conventional ideas. (A mere 30-second TV ad? Let's do 200 online videos in two days, say the creatives at Wieden+Kennedy.) They're willing to fail. (Google's search team runs up to 200 experiments at any one time.) They know what they stand for. (By making home-viewing as easy as possible, Netflix walloped Blockbuster, which thought its business had something to do with stores.)
This is a list full of surprises, even though our No. 1 pick is no surprise at all. Apple itself was once written off; but the company restored innovation to its proper place, and as you'll see when you open the gatefold to the right, our entire economy has benefited as a result.

Linux File Permissions - Sticky Bit

The most common use of the sticky bit today is on directories. When the sticky bit is set, only the item's owner, the directory's owner, or thesuperuser can rename or delete files. Without the sticky bit set, any user with write and execute permissions for the directory can rename or delete contained files, regardless of owner. Typically this is set on the /tmp directory to prevent ordinary users from deleting or moving other users' files. This feature was introduced in 4.3BSD in 1986 and today it is found in most modern Unix systems.

Read Full Details @ Wikipedia

Visit an architect. On the first visit, right after shaking your hand, she unrolls plans for a house. "Here are some sketches..."

Wait. That's backward.

Sketches for what? How do you know if I want a house or an office building? How am I to judge these plans? Is it a mind reading exercise?

The most effective way to sell the execution of an idea is to describe the use case first. And before you can do that, you need to have both the trust of your client and enough information to figure out what would delight them.

Then, describe what a great solution would do. "If we could use 10,000 square feet of space to profitably service 100 customers an hour..." or "If we built a website that could convert x percent of ..." or "If we could blend a wine that would appeal to this type of diner..."

After the use case is agreed on, then feel free to share your sketches, brainstorms and mockups. At that point, the only question is, "does this execution support the use case we agreed on?"

Don't show me a project, a website, an ad buy or an essay without first telling me what it's supposed to do when it works properly. First, because I might not want that result. And second, how else am I supposed to judge if it's good or not without knowing what you're trying to do...

Too often, we're in such a hurry to show off what we'd like to build we forget to sell the notion of what we built it for.

Read Full Article @ Seth's Blog

Familiarity breeds respect

It's nice to sign a letter, "sincerely yours," but far more powerful, I think, to sign it, "with respect." It says something compelling about the recipient, something earned.

I realized the other day that I'd been working with the trio of Megan, Corey and Gil at Squidoo for five years, since we founded the company. And that I've been with Anne, my trusted bookkeeper, for more than ten years, David at GTN for almost as long, and Lisa, my agent, for more than seventeen. In an amazing bit of time travel, I've been doing projects with my friend Red for more than thirty.

Over time, you don't just come to trust valued colleagues like these, they also earn respect. Once you understand someone's sensibilities and goals, it's natural to see the world through their eyes and to embrace their motives and tactics. Once you've seen their work under pressure and in quieter moments, you get a sense for what they believe in. In a world of quick projects and short engagements, this sort of relationship is priceless.

It's easier than ever to start relationships that can turn into ones like these. Just as hard as it has ever been to make them last.

Read Full Article @ Seth's Blog

On pricing power

If you’re not getting paid what you’re worth, there are only two possible reasons:
1. People don’t know what you’re worth, or
2. You’re not (currently) worth as much as you believe
The first situation can’t happen unless you permit it to. If you’re undervalued, then you have a communication problem, one that you can solve by telling accurate stories that resonate.

Far more likely, though, is the second problem. If there are reasonable substitutes for your work, and those substitutes are seen as cheaper, then you’re not going to get the work. 'Worth' in this case means, "what does it cost to get something like that if something like that is what I want?"

A cheaper substitute might mean buying nothing. Personal coaches, for example, usually sell against this alternative. It’s not a matter of finding a cheaper coach, it’s more about having no coach at all. Same with live music. People don't go to cheaper concerts, they just don't value the concert enough to go at all.
And so we often find ourselve stuck, matching the other guy's price, or worse, racing to the bottom to be cheaper. Cheaper is the last refuge of the marketer unable to invent a better product and tell a better story.
The goal, no matter what you sell, is to be seen as irreplaceable, essential and priceless. If you are all three, then you have pricing power. When the price charged is up to you, when you have the power to set the price, there is a line out the door and you can use pricing as a signaling mechanism, not merely a way to make a living.

Of course, the realization of what it takes to create value might break your heart, because it means you have to specialize, take risks, create art, leave a positive impact and adopt generosity in all you do. It means you have to develop extraordinary expertise and that you are almost always hanging way out of the boat, about to fall out.
The pricing power position in the market is coveted and valuable... The ability to have the power to set a price is at the heart of what it means to do business profitably, so of course there is a never-ending competition for pricing power.

The curse of the internet is that it provides competitive information, which makes pricing power ever more difficult to exercise. On the other hand, the benefit of the internet is that once you have it, the list of people who want to pay for your irreplaceable, essential and priceless contribution will get even longer.

Right-click here to download pictures. To help protect your privacy, Outlook prevented automatic download of this picture from the Internet.

Thursday, February 17, 2011

The comScore 2010 Mobile Year in Review

comScore presents the inaugural Mobile Year in Review report, a look at the top trends in mobile throughout 2010 and their implications for the coming year. The report looks across the U.S., EU5 and Japan, providing insights on the dynamic mobile ecosystem:
  • How did market enablers (3G penetration, smartphone adoption and unlimited data plans) impact the growth of mobile media in 2010?
  • What were the year’s top device trends, how have smartphone devices changed the market?
  • In what ways does mobile media consumption vary across geographies?
  • How did browser and application usage drive content consumption, and which content categories saw the largest gains?
  • What role did social media play in the growth of mobile in 2010?
  • How are consumers using mobile media to stay connected, how has daily consumption changed?

Micro Stock

Micro Stock is a small and easy to install PHP script. It retrives stock quotes from Yahoo. You just need to upload the file set your requested company and it displays the actual stock quote.

Get Source Code From

Storing multidimensional arrays in a file

In this tutorial I will show you how to store a multidimensional array in a file and how to retrieve these data. With this method you can imitate a very basic database functionality.

Read Full Article @

Wednesday, February 16, 2011

Tuning Apache and PHP for Speed on Unix

Here is my compilation of tips on how to optimise Apache on Linux for PHP and CGI programs. These tips can also apply to Perl and Python. Links will open in a new window.
Also read my essay Optimizing PHP for a more in depth coverage of these issues with case studies.
To tune well, you need to benchmark your Web server. You can get some benchmark figures usingApacheBench (ab) or httperf. If you are an OS agnostic like me, I recommend using Microsoft's excellent free Web Application Stress Tool (WAST - requires M'soft Windows). WAST is more flexible than ab because it allows you to define different GET parameters for each thread. This is important because it allows you to simulate multiple PHP sessions via the PHPSESSID GET parameter. Avoid benchmarks involving PHP sessions when using ab as the sessions will become an artificial bottleneck. More info on using WAST with PHP.
To monitor the Apache server, I use the command top d 1 which displays CPU and memory usage of all processes on the machine, and apachectl status.

Aspect-oriented Software Development and PHP

Object oriented approach has been popular for a number of years. Its advantages can hardly be visible within short-term projects, yet any major long-term one simply cannot do without it. Object-oriented programming languages provide the tools necessary to present business logic in a demonstrable form. Today UML Class diagram ( does suggest itself even on the stage of developing the system logic.
Demonstrable business logic makes it easier for new participants to join in, helps to save time for those developers that come back into the project at later stages. It also considerably reduces the number of mistakes. But is implementing object-oriented approach enough to develop the demonstrable business logic? Obviously not. To create smart object-oriented programme architecture is not an easy task – unless you were able to successfully implement methods described in the book by Martin Fowler called Refactoring: Improving the Design of Existing Code.
Yet even now one can find not encapsulated functionality (crosscutting concerns) in a number of various classes (logging, caching, synchronizing, tracing, monitoring, debugging, run a security check, start a transaction, open a database connection). AOSD (aspect-oriented software development, is capable of organizing this kind of program logic.

Tuesday, February 15, 2011

Building Modular XHTML Web Pages with PHP

A series of labs describing the process of building modular, structured and valid XHTML Web pages using the PHP server-side scripting language.

Semantic data extraction for Creating Dynamic XHTML

This tool, geared by an XSLT stylesheet, tries to extract some information from a HTML semantic rich document. It only uses information available through a good usage of the semantics defined in HTML.
The aim is to show that providing a semantically rich HTML gives much more value to your code: using a semantically rich HTML code allows a better use of CSS, makes your HTML intelligible to a wider range of user agents (especially search engines bots).
As an aside, it can give clues to user agents developers on some hooks that could be interesting to add in their product.

Model–View–Controller (MVC) is a software architecture,[1] currently considered an architectural pattern used in software engineering. The pattern isolates "domain logic" (the application logic for the user) from theuser interface (input and presentation), permitting independent development, testing and maintenance of each (separation of concerns).

Read Full Details @

The PHP coder's top 10 mistakes and problems

Seeing the number of problems and mistakes PHP coders encounter repeatedly I set out to make this list of the 10 most common problems and mistakes done by PHP coders.

Read Full Article @

Thursday, February 10, 2011

Google Analytics for Mobile

The Google Analytics Mobile Apps SDKs make it easy to implement Google Analytics in your mobile apps. The SDK can be downloaded and used on iOS and Android application platforms, and you can get a detailed report of activity within your mobile apps via the standard Google Analytics dashboard.
If you're building for WAP-based phones or other low-end mobile devices, a set of code snippets is available for several popular server-side languages that enable you to use Analytics, even when JavaScript isn't supported.

Google Public DNS Servers Launched

Today, Google has announced the launch of their free DNS resolution service. Many ISPs and 3rd party provider such as OpenDNS snoops around or send traffic to ad servers. However, Google promises not to play with end users and send the exact response his or her computer expects without performing any blocking, filtering, or redirection that may hamper a user's browsing experience. In other words Google will not hijacking your traffic on non-existent domain name and it will follow strict RFC standard.

Read Full Article @

20 Linux Server Hardening Security Tips

Securing your Linux server is important to protect your data, intellectual property, and time, from the hands of crackers (hackers). The system administrator is responsible for security Linux box. In this first part of a Linux server security series, I will provide 20 hardening tips for default installation of Linux system.

Read Full Article @

My 10 UNIX Command Line Mistakes

Anyone who has never made a mistake has never tried anything new. --Albert Einstein.
Here are a few mistakes that I made while working at UNIX prompt. Some mistakes caused me a good amount of downtime. Most of these mistakes are from my early days as a UNIX admin.
All men make mistakes, but only wise men learn from their mistakes -- Winston Churchill.

20 Linux System Monitoring Tools Every SysAdmin Should Know

Need to monitor Linux server performance? Try these built-in command and a few add-on tools. Most Linux distributions are equipped with tons of monitoring. These tools provide metrics which can be used to get information about system activities. You can use these tools to find the possible causes of a performance problem. The commands discussed below are some of the most basic commands when it comes to system analysis and debugging server issues such as:
  1. Finding out bottlenecks.
  2. Disk (storage) bottlenecks.
  3. CPU and memory bottlenecks.
  4. Network bottlenecks.

How To Set Caching DNS Server

This is an simple & excellent tutorial to setup a local caching DNS server on a Linux machine