More servicesWindows Live
HomeHotmailSpacesOneCare
 
MSN
Sign in
 
 
Spaces home  मनोज अग्रवालPhotosProfileFriendsMore Tools Explore the Spaces community

मनोज अग्रवाल

Thanks for visiting!

Public folders

Folders shared with the world
There are no music lists on this space.
8/20/2008

Free e-book: Writing Secure Code, Second Edition, by Michael Howard and David LeBlanc

Writing Secure Code
Discover the best practices for writing secure code and stopping malicious hackers in their tracks—direct from the top security experts at Microsoft! For one week only, you can download the e-book of Writing Secure Code, Second Edition for free. This offer requires a valid Windows Live ID and the access code 7234-N4E8-4995. Activate your access code by August 28, 2008. Download the e-book today!

Detailed instructions:
1) Go to http://www.microsoft.com/learning/access
.
2) Type your access code. (The code is case sensitive.) You will need to accept the License Agreement before you can proceed. Click Send.
3) You will be prompted to sign in using a valid Windows Live ID. If you already have a profile on Microsoft.com, use that Windows Live ID. If you do not have a Windows Live ID, use the options on the page to sign up for one.
4) On the Thank You page, click My Learning to access the e-book.
5) On the My Learning page, scroll to the E-Reference section. Click on Writing Secure Code, Second Edition to access the e-book.

After activating the access code with your Windows Live ID, you can either download the e-book files to your computer or return to the Microsoft Learning website to access the e-book online. Online access is limited to one year from the date of activation. To access the e-book online,
simply go to http://learning.microsoft.com/Manager/default.aspx and sign in using your Windows Live ID. Then click My Learning in the left navigation area to access this e-book again.

7/23/2008

Top 10 Concepts That Every Software Engineer Should Know

Top 10 Concepts That Every Software Engineer Should Know

Written by Alex Iskold

The future of software development is about good craftsmen. With infrastructure like Amazon Web Services and an abundance of basic libraries, it no longer takes a village to build a good piece of software.

These days, a couple of engineers who know what they are doing can deliver complete systems. In this post, we discuss the top 10 concepts software engineers should know to achieve that.

A successful software engineer knows and uses design patterns, actively refactors code, writes unit tests and religiously seeks simplicity. Beyond the basic methods, there are concepts that good software engineers know about. These transcend programming languages and projects - they are not design patterns, but rather broad areas that you need to be familiar with. The top 10 concepts are:

  1. Interfaces
  2. Conventions and Templates
  3. Layering
  4. Algorithmic Complexity
  5. Hashing
  6. Caching
  7. Concurrency
  8. Cloud Computing
  9. Security
  10. Relational Databases

10. Relational Databases

Relational Databases have recently been getting a bad name because they cannot scale well to support massive web services. Yet this was one of the most fundamental achievements in computing that has carried us for two decades and will remain for a long time. Relational databases are excellent for order management systems, corporate databases and P&L data.

At the core of the relational database is the concept of representing information in records. Each record is added to a table, which defines the type of information. The database offers a way to search the records using a query language, nowadays SQL. The database offers a way to correlate information from multiple tables.

The technique of data normalization is about correct ways of partitioning the data among tables to minimize data redundancy and maximize the speed of retrieval.

9. Security

With the rise of hacking and data sensitivity, the security is paramount. Security is a broad topic that includes authentication, authorization, and information transmission.

Authentication is about verifying user identity. A typical website prompts for a password. The authentication typically happens over SSL (secure socket layer), a way to transmit encrypted information over HTTP. Authorization is about permissions and is important in corporate systems, particularly those that define workflows. The recently developed OAuth protocol helps web services to enable users to open access to their private information. This is how Flickr permits access to individual photos or data sets.

Another security area is network protection. This concerns operating systems, configuration and monitoring to thwart hackers. Not only network is vulnerable, any piece of software is. Firefox browser, marketed as the most secure, has to patch the code continuously. To write secure code for your system requires understanding specifics and potential problems.

 

8. Cloud Computing

In our recent post Reaching For The Sky Through Compute Clouds we talked about how commodity cloud computing is changing the way we deliver large-scale web applications. Massively parallel, cheap cloud computing reduces both costs and time to market.

Cloud computing grew out of parallel computing, a concept that many problems can be solved faster by running the computations in parallel.

After parallel algorithms came grid computing, which ran parallel computations on idle desktops. One of the first examples was SETI@home project out of Berkley, which used spare CPU cycles to crunch data coming from space. Grid computing is widely adopted by financial companies, which run massive risk calculations. The concept of under-utilized resources, together with the rise of J2EE platform, gave rise to the precursor of cloud computing: application server virtualization. The idea was to run applications on demand and change what is available depending on the time of day and user activity.

Today's most vivid example of cloud computing is Amazon Web Services, a package available via API. Amazon's offering includes a cloud service (EC2), a database for storing and serving large media files (S3), an indexing service (SimpleDB), and the Queue service (SQS). These first blocks already empower an unprecedented way of doing large-scale computing, and surely the best is yet to come.

7. Concurrency

Concurrency is one topic engineers notoriously get wrong, and understandibly so, because the brain does juggle many things at a time and in schools linear thinking is emphasized. Yet concurrency is important in any modern system.

Concurrency is about parallelism, but inside the application. Most modern languages have an in-built concept of concurrency; in Java, it's implemented using Threads.

A classic concurrency example is the producer/consumer, where the producer generates data or tasks, and places it for worker threads to consume and execute. The complexity in concurrency programming stems from the fact Threads often needs to operate on the common data. Each Thread has its own sequence of execution, but accesses common data. One of the most sophisticated concurrency libraries has been developed by Doug Lea and is now part of core Java.

 

6. Caching

No modern web system runs without a cache, which is an in-memory store that holds a subset of information typically stored in the database. The need for cache comes from the fact that generating results based on the database is costly. For example, if you have a website that lists books that were popular last week, you'd want to compute this information once and place it into cache. User requests fetch data from the cache instead of hitting the database and regenerating the same information.

Caching comes with a cost. Only some subsets of information can be stored in memory. The most common data pruning strategy is to evict items that are least recently used (LRU). The prunning needs to be efficient, not to slow down the application.

A lot of modern web applications, including Facebook, rely on a distributed caching system called Memcached, developed by Brad Firzpatrick when working on LiveJournal. The idea was to create a caching system that utilises spare memory capacity on the network. Today, there are Memcached libraries for many popular languages, including Java and PHP.

5. Hashing

The idea behind hashing is fast access to data. If the data is stored sequentially, the time to find the item is proportional to the size of the list. For each element, a hash function calculates a number, which is used as an index into the table. Given a good hash function that uniformly spreads data along the table, the look-up time is constant. Perfecting hashing is difficult and to deal with that hashtable implementations support collision resolution.

Beyond the basic storage of data, hashes are also important in distributed systems. The so-called uniform hash is used to evenly allocate data among computers in a cloud database. A flavor of this technique is part of Google's indexing service; each URL is hashed to particular computer. Memcached similarly uses a hash function.

Hash functions can be complex and sophisticated, but modern libraries have good defaults. The important thing is how hashes work and how to tune them for maximum performance benefit.

 

 

4. Algorithmic Complexity

There are just a handful of things engineers must know about algorithmic complexity. First is big O notation. If something takes O(n) it's linear in the size of data. O(n^2) is quadratic. Using this notation, you should know that search through a list is O(n) and binary search (through a sorted list) is log(n). And sorting of n items would take n*log(n) time.

Your code should (almost) never have multiple nested loops (a loop inside a loop inside a loop). Most of the code written today should use Hashtables, simple lists and singly nested loops.

Due to abundance of excellent libraries, we are not as focused on efficiency these days. That's fine, as tuning can happen later on, after you get the design right.

Elegant algorithms and performance is something you shouldn't ignore. Writing compact and readable code helps ensure your algorithms are clean and simple.

3. Layering

Layering is probably the simplest way to discuss software architecture. It first got serious attention when John Lakos published his book about Large-scale C++ systems. Lakos argued that software consists of layers. The book introduced the concept of layering. The method is this. For each software component, count the number of other components it relies on. That is the metric of how complex the component is.

Lakos contended a good software follows the shape of a pyramid; i.e., there's a progressive increase in the cummulative complexity of each component, but not in the immediate complexity. Put differently, a good software system consists of small, reusable building blocks, each carrying its own responsibility. In a good system, no cyclic dependencies between components are present and the whole system is a stack of layers of functionality, forming a pyramid.

Lakos's work was a precursor to many developments in software engineering, most notably Refactoring. The idea behind refactoring is continuously sculpting the software to ensure it'is structurally sound and flexible. Another major contribution was by Dr Robert Martin from Object Mentor, who wrote about dependecies and acyclic architectures

Among tools that help engineers deal with system architecture are Structure 101 developed by Headway software, and SA4J developed by my former company, Information Laboratory, and now available from IBM.

2. Conventions and Templates

Naming conventions and basic templates are the most overlooked software patterns, yet probably the most powerful.

Naming conventions enable software automation. For example, Java Beans framework is based on a simple naming convention for getters and setters. And canonical URLs in del.icio.us: http://del.icio.us/tag/software take the user to the page that has all items tagged software.

Many social software utilise naming conventions in a similar way. For example, if your user name is johnsmith then likely your avatar is johnsmith.jpg and your rss feed is johnsmith.xml.

Naming conventions are also used in testing, for example JUnit automatically recognizes all the methods in the class that start with prefix test.

The templates are not C++ or Java language constructs. We're talking about template files that contain variables and then allow binding of objects, resolution, and rendering the result for the client.

Cold Fusion was one of the first to popularize templates for web applications. Java followed with JSPs, and recently Apache developed handy general purpose templating for Java called Velocity. PHP can be used as its own templating engine because it supports eval function (be careful with security). For XML programming it is standard to use XSL language to do templates.

From generation of HTML pages to sending standardized support emails, templates are an essential helper in any modern software system.

1. Interfaces

The most important concept in software is interface. Any good software is a model of a real (or imaginary) system. Understanding how to model the problem in terms of correct and simple interfaces is crucial. Lots of systems suffer from the extremes: clumped, lengthy code with little abstractions, or an overly designed system with unnecessary complexity and unused code.

Among the many books, Agile Programming by Dr Robert Martin stands out because of focus on modeling correct interfaces.

In modeling, there are ways you can iterate towards the right solution. Firstly, never add methods that might be useful in the future. Be minimalist, get away with as little as possible. Secondly, don't be afraid to recognize today that what you did yesterday wasn't right. Be willing to change things. Thirdly, be patient and enjoy the process. Ultimately you will arrive at a system that feels right. Until then, keep iterating and don't settle.

 

 

Conclusion

Modern software engineering is sophisticated and powerful, with decades of experience, millions of lines of supporting code and unprecidented access to cloud computing. Today, just a couple of smart people can create software that previously required the efforts of dozens of people. But a good craftsman still needs to know what tools to use, when and why.

6/8/2008

Upcoming Webcasts (Aspiring Architects, .NET Framework 3.5)

Aspiring Architect Series 2008

June 16th, 2008 – 12:00 p.m. to 1:00 p.m. – Introduction to the aspiring architect Web Cast series
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380836&Culture=en-CA

June 17th, 2008 – 12:00 p.m. to 1:00 p.m. – Services Oriented Architecture and Enterprise Service Bus – Beyond the hype
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380838&Culture=en-CA

June 18th, 2008 – 12:00 p.m. to 1:00 p.m. – TOGAF and Zachman, a real-world perspective
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380840&Culture=en-CA

June 19th, 2008 – 12:00 p.m. to 1:00 p.m. – Services Oriented Architecture (Web Cast in French)
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380842&Culture=en-CA

June 20th, 2008 – 12:00 p.m. to 1:00 p.m. – Interoperability (Web Cast in French)
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380844&Culture=fr-CA

June 23rd , 2008 – 12:00 p.m. to 1:00 p.m. – Realizing dynamic systems
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380846&Culture=en-CA

June 24th, 2008 – 12:00 p.m. to 1:00 p.m. – Web 2.0, beyond the hype
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380848&Culture=en-CA

June 25th, 2008 – 12:00 p.m. to 1:00 p.m. – Architecting for the user experience
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380850&Culture=en-CA

June 26th, 2008 – 12:00 p.m. to 1:00 p.m. – Conclusion and next steps
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032380852&Culture=en-CA

.NET Framework 3.5: Create Connected Applications

MSDN Webcast: ADO.NET Data Services Overview (Part 1 of 2) (Level 100)

Tuesday, June 17, 2008, 11:00 A.M.–12:00 P.M. Pacific Time

MSDN Webcast: geekSpeak: Workflow Services in .NET 3.5 with Jon Flanders (Level 200)

Wednesday, June 18, 2008, 12:00 P.M.–1:00 P.M. Pacific Time

MSDN Webcast: Calling Services from Silverlight 2.0 with Jon Flanders (Level 300)

Monday, June 23, 2008, 9:00 A.M.–10:00 A.M. Pacific Time

MSDN Webcast: ADO.NET Data Services Overview (Part 2 of 2) (Level 100)

Tuesday, June 24, 2008, 11:00 A.M.–12:00 P.M. Pacific Time

MSDN Webcast: Windows Workflow Communication in Depth with Matt Milner (Level 400)

Thursday, June 26, 2008, 9:00 A.M.–10:00 A.M. Pacific Time

4/27/2008

50 Ways to Help the Planet

01

1. CHANGE YOUR LIGHT
If every household in the United State replaced one regular lightbulb with one of those new compact fluorescent bulbs, the pollution reduction would be equivalent to removing one million cars from the road. Don't like the color of light? Use these bulbs for closets, laundry rooms and other places where it won't irk you as much.

 

Moon

2. TURN OFF COMPUTERS AT NIGHT
By turning off your computer instead of leaving it in sleep mode, you can save 40 watt-hours per day. That adds up to 4 cents a day, or $14 per year. If you don't want to wait for your computer to start up, set it to turn on automatically a few minutes before you get to work, or boot up while you're pouring your morning cup 'o joe.

 

02

3. DON'T RINSE
Skip rinsing dishes before using your dishwasher and save up to 20 gallons of water each load. Plus, you're saving time and the energy used to heat the additional water.

 

02

4. DO NOT PRE-HEAT THE OVEN
Unless you are making bread or pastries of some sort, don't pre-heat the oven. Just turn it on when you put the dish in. Also, when checking on your food, look through the oven window instead of opening the door.

 

02

5. RECYCLE GLASS
Recycled glass reduces related air pollution by 20 percent and related water pollution by 50 percent. If it isn't recycled it can take a million years to decompose.

 

diaper pin

6. DIAPER WITH A CONSCIENCE
By the time a child is toilet trained, a parent will change between 5,000 and 8,000 diapers, adding up to approximately 3.5 million tons of waste in U.S. landfills each year. Whether you choose cloth or a more environmentally-friendly disposable, you're making a choice that has a much gentler impact on our planet.

 

clothespin

7. HANG DRY
Get a clothesline or rack to dry your clothes by the air. Your wardrobe will maintain color and fit, and you'll save money. Your favorite t-shirt will last longer too.

 

Star!

8. GO VEGETARIAN ONCE A WEEK
One less meat-based meal a week helps the planet and your diet. For example: It requires 2,500 gallons of water to produce one pound of beef. You will also also save some trees. For each hamburger that originated from animals raised on rainforest land, approximately 55 square feet of forest have been destroyed.

 

Fork and knife

9. WASH IN COLD OR WARM
If all the households in the U.S. switched from hot-hot cycle to warm-cold, we could save the energy comparable to 100,000 barrels of oil a day. Only launder when you have a full load.

 

Napkin

10. USE ONE LESS PAPER NAPKIN
During an average year, an American uses approximately 2,200 napkins—around six each day. If everyone in the U.S. used one less napkin a day, more than a billion pounds of napkins could be saved from landfills each year.

 

Paper

11. USE BOTH SIDES OF PAPER
American businesses throw away 21 million tons of paper every year, equal to 175 pounds per office worker. For a quick and easy way to halve this, set your printer's default option to print double-sided (duplex printing). And when you're finished with your documents, don't forget to take them to the recycling bin.

 

Newspaper

12. RECYCLE NEWSPAPER
There are 63 million newspapers printed each day in the U.S. Of these, 44 million, or about 69%, of them will be thrown away. Recycling just the Sunday papers would save more than half a million trees every week.

 

Gift

13. WRAP CREATIVELY
You can reuse gift bags, bows and event paper, but you can also make something unique by using old maps, cloth or even newspaper. Flip a paper grocery bag inside out and give your child stamps or markers to create their own wrapping paper that's environmentally friendly and extra special for the recipient.

 

Water

14. RETHINK BOTTLED WATER
Nearly 90% of plastic water bottles are not recycled, instead taking thousands of years to decompose. Buy a reusable container and fill it with tap water, a great choice for the environment, your wallet, and possibly your health. The EPA's standards for tap water are more stringent than the FDA's standards for bottled water.

 

Shower!

15. BAN BATHTIME!
Have a no-bath week, and take showers instead. Baths require almost twice as much water. Not only will you reduce water consumption, but the energy costs associated with heating the water.

 

brush

16. BRUSH WITHOUT RUNNING
You've heard this one before, but maybe you still do it. You'll conserve up to five gallons per day if you stop. Daily savings in the U.S. alone could add up to 1.5 billion gallons--more water than folks use in the Big Apple.

 

Shower

17. SHOWER WITH YOUR PARTNER
Sneak in a shower with your loved one to start the day with some zest that doesn't come in a bar. Not only have you made a wise choice for the environment, but you may notice some other added...um...benefits.

 

Shorten

18. TAKE A SHORTER SHOWER
Every two minutes you save on your shower can conserve more than ten gallons of water. If everyone in the country saved just one gallon from their daily shower, over the course of the year it would equal twice the amount of freshwater withdrawn from the Great Lakes every day.

 

Tree

19. PLANT A TREE
It's good for the air, the land, can shade your house and save on cooling (plant on the west side of your home), and they can also improve the value of your property. Make it meaningful for the whole family and plant a tree every year for each member.

 

Vvvvrrrooooom

20. USE YOUR CRUISE CONTROL
You paid for those extra buttons in your car, so put them to work! When using cruise control your vehicle could get up to 15% better mileage. Considering today's gasoline prices, this is a boon not only for the environment but your budget as well.

 

Weee

21. SECOND-HAND DOESN'T MEAN SECOND-BEST
Consider buying items from a second-hand store. Toys, bicycles, roller blades, and other age and size-specific items are quickly outgrown. Second hand stores often sell these items in excellent condition since they are used for such a short period of time, and will generally buy them back when you no longer need them.

 

Globey

22. BUY LOCAL
Consider the amount of pollution created to get your food from the farm to your table. Whenever possible, buy from local farmers or farmers' markets, supporting your local economy and reducing the amount of greenhouse gas created when products are flown or trucked in.

 

This is a thermometer

23. ADJUST YOUR THERMOSTAT
Adjust your thermostat one degree higher in the summer and one degree cooler in the winter. Each degree celsius less will save about 10% on your energy use! In addition, invest in a programmable thermostat which allows you to regulate temperature based on the times you are at home or away.

 

MMmmmmm, coffee

24. INVEST IN YOUR OWN COFFEE CUP
If you start every morning with a steamy cup, a quick tabulation can show you that the waste is piling up. Invest in a reusable cup, which not only cuts down on waste, but keeps your beverage hot for a much longer time. Most coffee shops will happily fill your own cup, and many even offer you a discount in exchange!

 

Thre and back

25. BATCH ERRANDS
Feel like you spend your whole week trying to catch up with the errands? Take a few moments once a week to make a list of all the errands that need to get done, and see if you can batch them into one trip. Not only will you be saving gasoline, but you might find yourself with much better time-management skills.

 

switch

26. TURN OFF LIGHTS
Always turn off incandescent bulbs when you leave a room. Fluorescent bulbs are more affected by the number of times it is switched on and off, so turn them off when you leave a room for 15 minutes or more. You'll save energy on the bulb itself, but also on cooling costs, as lights contribute heat to a room.

 

Mow

27. GREENER LAWN CARE
If you must water your lawn, do it early in the morning before any moisture is lost to evaporation. Have a few weeds? Spot treat them with vinegar. Not sure if you should rake? Normal clippings act as a natural fertilizer, let them be. If you've waited too long, rake by hand — it's excellent exercise.

 

Basket

28. PICNIC WITH A MARKER
Some time in between the artichoke dip and the coleslaw, you lost track of your cup, and now there are a sea of matching cups on the table, one of which might be yours. The next time you picnic, set out permanent marker next to disposable dinnerware so guests can mark their cup and everyone will only use one.

 

Celly

29. RECYCLE OLD CELL PHONES
The average cell phone lasts around 18 months, which means 130 million phones will be retired each year. If they go into landfills, the phones and their batteries introduce toxic substances into our environment. There are plenty of reputable programs where you can recycle your phone, many which benefit noble causes.

 

Wrenching

30. MAINTAIN YOUR VEHICLE
Not only are you extending the life of your vehicle, but you are creating less pollution and saving gas. A properly maintained vehicle, clean air filters, and inflated tires can greatly improve your vehicle's performance. And it might not hurt to clean out the trunk—all that extra weight could be costing you at the pump.

 

No Mommy!

31. RECYCLE UNWANTED WIRE HANGERS
Wire hangers are generally made of steel, which is often not accepted by some recycling programs. So what do you do with them? Most dry cleaners will accept them back to reuse or recycle. (Cue Joan Crawford.)

 

Chug

32. CHOOSE GLASS BOTTLES OVER ALUMINUM CANS
The energy required to produce a single 12 oz. aluminum can from virgin ore is enough to produce nearly two new 12 oz. glass bottles. So the next time you buy a six-pack of beer, opt for glass bottles over aluminum cans. The manufacturing energy conserved could power your television through two Sunday NFL games.

 

Homeward bound

33. TELECOMMUTE
See if you can work out an arrangement with your employer that you work from home for some portion of the week. Not only will you save money and gasoline, and you get to work in your pajamas!

 

Eternal flame

34. KEEP YOUR FIREPLACE DAMPER CLOSED
Keeping the damper open (when you're not using your fireplace) is like keeping a 48-inch window wide open during the winter; it allows warm air to go right up the chimney. This can add up to hundreds of dollars each winter in energy loss.

 

junk

35. CUT DOWN ON JUNK MAIL
Feel like you need to lose a few pounds? It might be your junk mail that's weighing you down. The average American receives 40 pounds of junk mail each year, destroying 100 millions trees. There are many services that can help reduce the clutter in your mailbox, saving trees and the precious space on your countertops.

 

Light a candle light a match step down step down watch your heel crush crush

36. CHOOSE MATCHES OVER LIGHTERS
Most lighters are made out of plastic and filled with butane fuel, both petroleum products. Since most lighters are considered "disposable," over 1.5 billion end up in landfills each year. When choosing matches, pick cardboard over wood. Wood matches come from trees, whereas most cardboard matches are made from recycled paper.

 

Yellow pages

37. LET YOUR FINGERS DO THE WALKING—ONLINE
Consider if you really need a paper phone book. If not, call to stop phone book delivery and use an online directory instead. Some estimate that telephone books make up almost ten percent of waste at dump sites. And if you still receive the book, don't forget to recycle your old volumes.

 

give

38. GIVE IT AWAY
Before you throw something away, think about if someone else might need it. Either donate to a charitable organization or post it on a web site designed to connect people and things, such as Freecycle.com.

 

Wash

39. GO TO A CAR WASH
Professional car washes are often more efficient with water consumption. If everyone in the U.S. who washes their car themselves took just one visit to the car wash we could save nearly 8.7 billion gallons of water.

 

02

40. PLASTIC BAGS SUCK
Each year the U.S. uses 84 billion plastic bags, a significant portion of the 500 billion used worldwide. They are not biodegradable, and are making their way into our oceans, and subsequently, the food chain. Stronger, reusable bags are an inexpensive and readily available option.

 

Fly

41. FLY WITH AN E-TICKET
The cost of processing a paper ticket is approximately $10, while processing an e-ticket costs only $1. In the near future, e-tickets will be the only option, saving the airline industry $3 billion a year. In addition to financial savings, the sheer amount of paper eliminated by this process is commendable.


 

Click

42. DOWNLOAD YOUR SOFTWARE
Most software comes on a compact disc, and more than thirty billion compact discs of all types are sold annually. That's a huge amount of waste, not to mention the associated packaging. Another bonus to downloading your software is that it's often available for download at a later date when you upgrade to a new computer or are attempting to recover from a crash.

 

Who uses answering machines?

43. STOP YOUR ANSWERING MACHINE
Answering machines use energy 24 hours a day, seven days a week. And when they break, they're just one more thing that goes into the landfill. If all answering machines in U.S. homes were eventually replaced by voice mail services, the annual energy savings would total nearly two billion kilowatt-hours.


 

I like my sugar with coffee and cream

44. SKIP THE COFFEE STIRRER
Each year, Americans throw away 138 billion straws and stirrers. But skipping the stirrer doesn't mean drinking your coffee black. Simply put your sugar and cream in first, and then pour in the coffee, and it should be well mixed.

Determined to stir? Break off a piece of pasta from the cupboard. You can nibble after using it, compost, or throw away with less guilt.

 

Woof

45. FIND A BETTER WAY TO BREAK THE ICE
When a big winter storm heads our way, most of us use some sort of ice melter to treat steps and sidewalks. While this makes the sidewalks safer for people, it may pose a hazard for pets who might ingest these products. Rock salt and salt-based ice-melting products can cause health problems as well as contaminate wells and drinking water. Look for a pet-safe deicer, readily available in many stores.


Swab 

46. USE COTTON SWABS WITH A PAPERBOARD SPINDLE
Some brands of cotton swabs have a paperboard spindle while others are made of plastic. If 10% of U.S. households switched to a paperboard spindle, the petroleum energy saved per year would be equivalent to over 150,000 gallons of gasoline.

 

Compute

47. PAY BILLS ONLINE
By some estimates, if all households in the U.S. paid their bills online and received electronic statements instead of paper, we'd save 18.5 million trees every year, 2.2 billion tons of carbon dioxide and other greenhouse gases, and 1.7 billion pounds of solid waste.

 

Stop me oh oh oh stop me

48. STOP PAPER BANK STATEMENTS
Some banks will pay you a dollar or donate money on your behalf when you cancel the monthly paper statements you get in the mail. If every household took advantage of online bank statements, the money saved could send more than seventeen thousand recent high school graduates to a public university for a year.

 

Battery

49. USE RECHARGABLE BATTERIES
Each year 15 billion batteries produced and sold and most of them are disposable alkaline batteries. Only a fraction of those are recycled. Buy a charger and a few sets of rechargeable batteries. Although it requires an upfront investment, it is one that should pay off in no time. And on Christmas morning when all the stores are closed? You'll be fully stocked.

 

Shout it out

50. SHARE!
Take what you've learned, and pass the knowledge on to others. If every person you know could take one small step toward being greener, the collective effort could be phenomenal.

1/24/2008

Create your own passport size photos

www.epassportphoto.com lets you easily convert any of your digital picture into a valid passport size photograph.
 
You pick a country and then select whether you need the photo for a visa, passport or applying for a citizenship. Then upload the digital photo, crop and you immediately get a printable strip of 6-8 photographs for free.
 
Very useful, and time saving.
1/2/2008

Download Free Visual Studio 2008 eBooks

Courtesy MS Press (Click on the following images to download)
 
Ajax   Linq   silverlight
12/27/2007