Posts Tagged OpenSource

"Django 1.0 Website Development" Released

My author copies of "Django 1.0 Website Development" have arrived. This is the second edition of my Django book. Django is a framework for building web applications in Python. This book explains how to assemble Django's features and take advantage of its power to design, develop, and deploy a fully-featured web site.

Django 1.0 Website Development

The new edition has been updated to Django 1.0. The key topics that the reader will learn from the book are:

  • Register users through a user authentication system and manage them efficiently.
  • Restrict user access to certain pages and protect against malicious input.
  • Create tags to allow site visitors to classify, view, and share content easily.
  • Create own administration interface for proper monitoring of the web site.
  • Enhance user interface with AJAX.
  • Enable voting and commenting on content, and display popular content to site visitors.
  • Build user networks; add friend management and invitation features for social networking.
  • Create unit tests to automate the testing of code.

The full table of contents is available.

The book is available in paper and PDF formats at Packt Publishing. It is also available from all major book sellers like Amazon.

Writing the book and revising it have been an enjoyable experience for me. The feeling of accomplishment when my copies arrived is satisfying. I sincerely hope that readers find the book interesting and useful. If you have questions or comments, don't hesitate to email me!

More photos of the book are available at my Picasa web albums.

Firefox Summit 2008, Day 2

The main news piece for day 2 in the Firefox Summit 2008 is that everyone is now trapped in the small town of Whistler after that a rock slide cut off the highway that connects Whistler with Vancouver. Fortunately, nobody was injured because of this. However, clearing the massive boulders that are blocking the highway will take 5 days according to official sources. Since the summit ends this Thursday, most attendants need to go to the Vancouver Airport on Friday to catch flights to their home countries. The cause of this rock slide is unclear at the moment, but there are people in the summit who are speculating whether a company whose name starts with an 'M' is behind all of this. A bug was filed in Bugzilla to track the issue, and some of the currently-proposed solutions involve riding bears, taking boats, or taking helicopters. In reality however, we will most likely end up going through a different route that takes around 8 hours in a bus.

Read more »

Firefox Summit 2008, Day 1

The Firefox Summit 2008 started today in the city of Whistler, BC, Canada. Around 400 contributors to the Mozilla project gathered to meet, share thoughts and discuss the 3.0 release of Firefox and plan for the next releases. I'm attending the summit as the Arabic localizer. I will post a daily highlight of the summit on my blog, so let's start with day one.

Firefox Summit 2008

Read more »

A Collection of Vim Tips

Vim is one of the most popular text editors for Linux and Unix systems. Its text-based interface may look intimidating for newcomers, but underneath it there is a wealth of functionality to be learned. Experienced Vim users often feel much more productive using Vim than GUI-based text editors.

I've been using Vim on a daily basis for years to do a wide range of tasks, from casual editing of short text files, to managing large programming projects, and every now and then I come across a new feature that considerably helps in some aspect of text editing. For this reason, I decided to compile a list of such Vim tips in this post.

Read more »

TurboGears Tutorial: Social Bookmarking Application

Those interested in web development may have heard about the Model-View-Controller software pattern by now. This pattern emphasizes on separation of application's data model, UI (view), and control logic. The concept itself isn't new and has been around since 1979, but recently there have been many successful implementations of the pattern in the domain of web development.

While exploring the available MVC frameworks, I decided to learn TurboGears, which is a Python framework. I viewed many webcasts and documents, then decided to practice my newly-gained knowledge by writing a basic del.icio.us-like social bookmarking application in TurboGears. Now I'm documenting my work as a tutorial, hoping that other TurboGears newcomers would find something useful in it.

Read more »

Python Challenge

A while ago I came across the Python Challenge. It is a series of programming challenges that require writing short programs in order to advance through levels. The creator(s) of the site put a lot of effort into it. The challenges are a lot of fun to solve, and the whole thing is very addictive.

If you are interested in learning the Python programming language, I suggest that you read the tutorial and start solving the challenges. It will be a great learning experience. If you do know Python, the challenges still have a lot to offer on the educational and fun fronts. It will make you explore a variety of libraries and programming domains.

Most of the levels can be solved with other programming languages as well. However, solving them in Python makes the programmer experience the beauty of Python, its power, and ease of use.

To sum up, if you enjoy programming, the Python Challenge is for you. I don't remember having so much fun on a website in a long time.

Tips to Secure Linux Workstation

If you have a Linux workstation with a direct connection to the Internet, you need to take certain measures in order to protect it from attacks. This article contains configuration information and tips on how to protect your machine. The article is applicable to all popular Linux distributions.

Read more »

Subversion - A Quick Tutorial

Subversion is a version control system that is widely used by many Open Source projects such as Apache and GCC. Subversion started as a project to implement features missing in CVS. Subversion commands are very similar to CVS. It's very easy to switch for CVS users. Most of the time it's a matter of replacing cvs with svn. The following is a tutorial and cheat-sheet to help you get up and running in Subversion quickly.

Read more »