Archive for Development

Configuring Apache Locally

If you are working on different projects locally then you might want to access them with the project name in the browser without providing the localhost prefixing it, just like how a production environment URL would look like. Apache is an amazing web server that can front end a web application irrespective of technology (except for .Net as far as I know). Apache can be configured to work with other application servers and the request routed to them appropriately. But most of the scripting language based web application such as PHP can work directly from Apache using the appropriate module plugin. Setting up Apache on your local development environment to configure and host the projects locally will provide an environment that resembles production and will also help learn Apache. Here is a good article “Setting Up Multiple Apache Local Web Sites On Your Computer” that provides details of how to do it.

Blink this Configuring Apache Locally at blinklist.com    Bookmark Configuring Apache Locally at blogmarks    Bookmark Configuring Apache Locally at del.icio.us    Digg Configuring Apache Locally at Digg.com    Fark Configuring Apache Locally at Fark.com    Bookmark Configuring Apache Locally at Furl.net    Bookmark Configuring Apache Locally at NewsVine    Bookmark Configuring Apache Locally at reddit.com    Bookmark Configuring Apache Locally at Simpy.com    Bookmark Configuring Apache Locally at Spurl.net    Bookmark Configuring Apache Locally with wists    Bookmark Configuring Apache Locally at YahooMyWeb

Comments      Cosmos

Dynamic Code Generation

How do you customize a feature? Customizations that will involve user initiated feature? While this does not mean that a user can create a feature out of the air but under the context of the application’s domain features could dynamically adopt to a user’s need. One example here could be offering promotions or additional inputs based on users past usage history and an appropriate user interface to highlight it. A template based engine could exactly do that by generating source during the runtime. The inputs to a template engine is a data model that feeds the input data and a template that provides where to use this data and on the fly an engine uses these inputs and provides an output. Apache Velocity is a java based template engine that can generate source during runtime. Use the following resources to get started with Apache Velocity.

Blink this Dynamic Code Generation at blinklist.com    Bookmark Dynamic Code Generation at blogmarks    Bookmark Dynamic Code Generation at del.icio.us    Digg Dynamic Code Generation at Digg.com    Fark Dynamic Code Generation at Fark.com    Bookmark Dynamic Code Generation at Furl.net    Bookmark Dynamic Code Generation at NewsVine    Bookmark Dynamic Code Generation at reddit.com    Bookmark Dynamic Code Generation at Simpy.com    Bookmark Dynamic Code Generation at Spurl.net    Bookmark Dynamic Code Generation with wists    Bookmark Dynamic Code Generation at YahooMyWeb

Comments      Cosmos

Issue Tracking System

When executing a project keeping track of the issues from the quality control team as well as keeping track of issues from customers/users is the key to making sure that they are prioritized and fixed. Having a manual system for such a need can be vulnerable for human errors as well as chances of missing them is high. An issue tracking system is a must for every organization. An issue tracking system should not only be available for the project team but should also be accessible for the customers/users to post the issues they find. There are many open source as well as commercial issue tracking systems available. This recent article in JavaWorld “What issue tracking system is best for you?” discusses three issue management tools, Bugzilla, JIRA and Trac. Another open source tool that is quite good is Mantis which is a PHP based open source issue management tool. Nevertheless technology doesn’t matter but selecting a right issue tracking tool that will fit your organization as well as help customers post the issues through a system is a must.

Blink this Issue Tracking System at blinklist.com    Bookmark Issue Tracking System at blogmarks    Bookmark Issue Tracking System at del.icio.us    Digg Issue Tracking System at Digg.com    Fark Issue Tracking System at Fark.com    Bookmark Issue Tracking System at Furl.net    Bookmark Issue Tracking System at NewsVine    Bookmark Issue Tracking System at reddit.com    Bookmark Issue Tracking System at Simpy.com    Bookmark Issue Tracking System at Spurl.net    Bookmark Issue Tracking System with wists    Bookmark Issue Tracking System at YahooMyWeb

Comments      Cosmos

How to be a Programmer

Thanks to my friend Kanmani who sent me a link that has information how to be an effective programmer. In fact TechMasala’s foundation series of posts main objective is also to list down certain technical as well as soft skills to be an effective programmer. The document covers tips and best practices under the categories of personal and team skills for a beginner, intermediate and advanced programmer. “How to be a Programmer: A Short, Comprehensive, and Personal Summary” is a good read for every programmer.

Blink this How to be a Programmer at blinklist.com    Bookmark How to be a Programmer at blogmarks    Bookmark How to be a Programmer at del.icio.us    Digg How to be a Programmer at Digg.com    Fark How to be a Programmer at Fark.com    Bookmark How to be a Programmer at Furl.net    Bookmark How to be a Programmer at NewsVine    Bookmark How to be a Programmer at reddit.com    Bookmark How to be a Programmer at Simpy.com    Bookmark How to be a Programmer at Spurl.net    Bookmark How to be a Programmer with wists    Bookmark How to be a Programmer at YahooMyWeb

Comments      Cosmos

Closures

When an expression or a block of code is passed as a parameter to a function or method then the piece of code that gets passed is called a closure in programming language terms. Closure is not something new and has been supported in programming languages like Smalltalk, Lisp, Python etc. A closure is like nameless functions within functions. Closures are supported in Ruby and are called blocks. A simple closure example in Ruby would be,

5.times {puts “Hello World”}

This prints “Hello World” five times. This code is the equivalent of the below code,

for i in 1..5
puts “Hello World”
end

Complex closures can be tricky to understand but once a developer gets the point how it works it could simplify or complex depending on the problem in hand and where it is applied. Some programming languages like Java don’t support closures yet. Is closures really handy or inconvenience? Read this article “Crossing borders: Closures” for more insights.

Blink this Closures at blinklist.com    Bookmark Closures at blogmarks    Bookmark Closures at del.icio.us    Digg Closures at Digg.com    Fark Closures at Fark.com    Bookmark Closures at Furl.net    Bookmark Closures at NewsVine    Bookmark Closures at reddit.com    Bookmark Closures at Simpy.com    Bookmark Closures at Spurl.net    Bookmark Closures with wists    Bookmark Closures at YahooMyWeb

Comments      Cosmos

Rails Performance

When it comes to the production environment it is a real test for the application as the users start using the application. It is very important that the performance of the application is something that has to be proactively measured and is a continuous constant effort to get the production environment fine tuned to the need. As far as Rails is concerned there are few insights here and there on the scalability and performance of the application. Stefan Kaes has written a package called Railsbench consisting of some Ruby and shell script code that can do some performance measurement of Rails application. Complementing the plugin is this article by Stefan on “A Look at Common Performance Problems in Rails” that talks about some common performance problems. But as mentioned by Stefan in the article some analysis of the performance of the application is necessary to apply the relevant changes to the application.

Blink this Rails Performance at blinklist.com    Bookmark Rails Performance at blogmarks    Bookmark Rails Performance at del.icio.us    Digg Rails Performance at Digg.com    Fark Rails Performance at Fark.com    Bookmark Rails Performance at Furl.net    Bookmark Rails Performance at NewsVine    Bookmark Rails Performance at reddit.com    Bookmark Rails Performance at Simpy.com    Bookmark Rails Performance at Spurl.net    Bookmark Rails Performance with wists    Bookmark Rails Performance at YahooMyWeb

Comments      Cosmos

Visual Desktop Effects for Linux

I had posted a reference article “Vista - To go or not to” where I had mentioned that if everything what you need to work on is available on a desktop operating system that comes for free then why pay so much for an operating system such as Vista. Well if you say that Windows has cool visual effects that can be unmatched, hold on, watch this YouTube video “Don’t Buy Windows Vista - Get Ubuntu for free“. Though the windows manager for linux add-on Beryl project is in its earlier stages, it is there. More good things on the visual effects to come on the Linux desktop systems. A significant advantage is that they work on a regular PC that doesn’t require hi-fi system configuration.

Happy Weekend!

Also see - “Linux Desktop Based Development Environment“.

Blink this Visual Desktop Effects for Linux at blinklist.com    Bookmark Visual Desktop Effects for Linux at blogmarks    Bookmark Visual Desktop Effects for Linux at del.icio.us    Digg Visual Desktop Effects for Linux at Digg.com    Fark Visual Desktop Effects for Linux at Fark.com    Bookmark Visual Desktop Effects for Linux at Furl.net    Bookmark Visual Desktop Effects for Linux at NewsVine    Bookmark Visual Desktop Effects for Linux at reddit.com    Bookmark Visual Desktop Effects for Linux at Simpy.com    Bookmark Visual Desktop Effects for Linux at Spurl.net    Bookmark Visual Desktop Effects for Linux with wists    Bookmark Visual Desktop Effects for Linux at YahooMyWeb

Comments      Cosmos

JUnitEE

JUnit is a great tool for unit testing Java applications but it is little difficult to apply it and test the flow from a web application perspective. Particularly say you have unit tests for your DAO you will have to use the JDBC driver connection class to connect to the database and cannot test through JNDI as it requires a server environment. Try JUnitEE. From the site,

JUnitEE provides a TestRunner which outputs HTML and a servlet which can be used as an entry point to your test cases. Building your test harness as a standard J2EE web application means:

  • Your tests are packaged conveniently into a .war file which can easily be moved between servers; you can leave the .war file in the main .ear file and simply avoid enabling the test web application on the production server.
  • Your test classes will be dynamically reloaded by the app server (assuming your server supports this).
  • Your test cases look just like your production code, and can use the same beans (or whatever) you use as a facade for your EJBs.

Blink this JUnitEE at blinklist.com    Bookmark JUnitEE at blogmarks    Bookmark JUnitEE at del.icio.us    Digg JUnitEE at Digg.com    Fark JUnitEE at Fark.com    Bookmark JUnitEE at Furl.net    Bookmark JUnitEE at NewsVine    Bookmark JUnitEE at reddit.com    Bookmark JUnitEE at Simpy.com    Bookmark JUnitEE at Spurl.net    Bookmark JUnitEE with wists    Bookmark JUnitEE at YahooMyWeb

Comments (2)      Cosmos

Next entries » · « Previous entries

Creative Commons License  This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.