Articles by

Python: Importing Packages

Importing and working with modules is a little different in Python than some other languages you may be familiar with, and since we are using it for some 3DChat technology—and hopefully in the future by using Django for more web applications—I would like to explain some of those differences. You import a module in Python by using the appropriately named 'import' keyword. Let's say we have a project with a directory structure like this: /FooProject | |--- Application.py |--- Connections.py |--- /Parsers * | * |--- __init__.py * |--- JSON.py * |--- XML.py * |--- Reader.py Our main code is in Application.py. It is what we run to execute the whole thing. I don't know what the application does, but apparently it does some parsing of JSON and XML. So likely ...

0 Comment   |   Posted in Python,blog January 20, 2010

Scheduling Linux Apps

Executing Programs On A Schedule The Linux scheduling application is known as cron. Cron is your friend when you want a program to run at a specific time every day, or at multiple times during the day. The primary schedule is kept in a file known as crontab on most systems. A relatively normal location for this file is /etc/crontab. It is a text file that looks a bit odd, but is easily managed to create a variety of ways to get stuff to run when you want it to on a regular basis. A sample crontab file: SHELL=/bin/sh PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin MAILTO=root # # check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly # -*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1 */5 * * * * root run-parts /etc/cron.fivemin 59 * * * * root rm -f /var/spool/cron/lastrun/cron.hourly 10 2 * * * ...

0 Comment   |   Posted in System Administration,applications,blog January 08, 2010

Labs Projects – Our Process

Whether you're building a vast social networking portal with web-based access and multi-platform client software or a five-page informational website for your new business, the process we follow to successfully execute projects fits the same guidelines. It starts with a broad discussion about your goals. What is the business plan? Who is the target audience? What is the platform? From there, we will drill down into the mission critical requirements for an initial release. Our team of experts will discuss what potential issues may arise and do in-depth research on software and concepts related to your project. We'll then prepare a detailed proposal outlining deliverables and conveying our understanding of the project. Once the project is awarded we'll document the system and design data structures, interface wireframes, and process flows. This stage is crucial. A well-designed and documented system is more efficient, scalable, and secure. System architecture also acts as a ...

0 Comment   |   Posted in Products October 03, 2009

Database Definition Languages

Intro Keeping your application code updated with the latest version is fairly easy these days. Version control systems such as CSV, Subversion, and Git are everywhere and are very efficient at keeping all your code files inline. However, keeping your database changes in sync with your code is more of a challenge. The following document is a work in progress, outlining the challenges and solutions we've come up with in keeping our distributed applications well managed in a source control system. That means the ENTIRE application, the code and data all living together in perfect harmony. Current Direction Our current train of thought is to pursue a standard database definition language (DDL) that keeps our core data structures in a standard ASCII format that can be easily managed with code-centric version control systems. We'll graft on a definition for version information to be attached to tables, indexes, ...

0 Comment   |   Posted in Database,blog July 08, 2009

MySQL Introduction

MySQL is a common database for web based applications, primarily because it is free and there is a lot of community support for the database. The most recent version of MySQL (v5 as of this writing) has even added some "big boy" features to help create robust database applications. MySQL Versions The current release of MySQL is 5. Notice from MySQL AB... End of Product Lifecycle Active development and support for MySQL database server versions 3.23, 4.0, and 4.1 has ended. However, for MySQL 4.0 and 4.1, there is still extended support available. For details, see http://www.mysql.com/company/legal/lifecycle/#calendar. According to the MySQL Lifecycle Policy (see http://www.mysql.com/company/legal/lifecycle/#policy), only Security and Severity Level 1 issues will still be fixed for MySQL 4.0 and 4.1. Please consider upgrading to a recent version (MySQL 5.0 or 5.1). Linux Command Line Commands Some basic MySQL commands you can execute from the Linux command line are shown ...

0 Comment   |   Posted in Database,MySQL,blog June 08, 2009

PostgreSQL Introduction

Intro Possibly the most robust freeware DB on earth. Some argue better than MySQL even though MySQL has a much larger following. From the makers PostgreSQL is a powerful, open source relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), and Windows. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL92 and SQL99 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among ...

0 Comment   |   Posted in Database,PostgreSQL,blog May 08, 2009