The Australian Government’s Carbon Pollution Reduction Scheme

Carbon Trading.  Maybe you’ve heard about it, maybe you haven’t.  The idea of carbon trading is simple:  Each business is given a certain amount of carbon trading credits by default.  The more your business pollutes the environment with carbon emissions above the agreed limit, the more credits you are required to buy.  Thus, low carbon-emitting companies can sell their excess carbon credits to those companies that pollute more, and make more profit, and the dirtier businesses must pay for their greater pollution levels.

The Australian Government has embraced the idea of carbon trading tightly with both arms, and released a white paper in December 2008 that states how the government is going to reduce carbon pollution by 15% (of year 2000 levels) by the year 2020, and a 60% reduction by 2050, using a carbon pollution reduction scheme.  The execution of this scheme, however, requires a 1000+ page document to be understood, just so that Aussie businesses and the government can even begin to get the ball rolling!  It is not overly complex, but in my opinion it is going to take time to successfully understand, set up and implement.  There will be those who will find ways to exploit the system, as always, and undoubtedly there will be victims.

As an accounting student, I think the notion of adding carbon trading to my skill set is exciting.  “Green Accounting” or “Green Auditing” have become recent new professions that merge environmentalism and sustainability with accounting practices.  However, the notion of walking into a company and auditing their production facilities for carbon pollution and deliver bad news of illegal levels of emissions to struggling business owners during these times of recession may be a bit difficult for someone like myself to do, personally.  I suppose you take the bad with the good in this case, and focus on the future.

Those involved with tourism and hospitality would no doubt be supporters of the carbon trading initiative, since their respective industries and profits depend on the existance of the natural wonders around them.  As a resident of the Cairns region, global warming would have huge catastrophic effects on both the residents and the industry here.  Can we imagine if the Great Barrier Reef no longer existed in 5-10 years?  Or if our houses were washed away by flash floods similar to those seen by the recent cyclone Ellie?  Perhaps we need to start planning ahead to avoid negative consequences that may result from carbon pollution and global warming right now.

The white paper produced by the government has the following main sections (divided into two downloadable volumes), which I will link to future articles as I write them after my readings:

  1. The Policy Context
  2. The Need for Action
  3. Shaping a Global Solution
  4. National Emissions Trajectory and Target
  5. A Framework for the Carbon Pollution Reduction Scheme
  6. Coverage
  7. Reporting and Compliance
  8. Carbon Markets
  9. Auctioning of Australian Carbon Pollution Credits
  10. Setting Scheme Emissions Caps
  11. Linking the Scheme to International Markets
  12. Assistance to Emissions-Intensive Trade-Exposed Industries
  13. Assistance to Strongly Affected Communities
  14. Tax and Accounting Issues
  15. Transitional Issues
  16. Governance Arrangements and Implementation
  17. Household Assistance Measures
  18. Climate Change Action Fund
  19. Comlementary Measures

As mentioned, I will be reading the paper and commenting on each section over the next few weeks, time permitting.  Comments are welcome, as discussion and feedback can only help everyone’s understanding on this new behemoth of a topic.

Electric Car Conversion

No doubt most people have probably heard of Zero Emissions Vehicles or Electric Vehicles (EVs) already, given the dire situation that we are facing with regards to the impacts of global warming, the global economic crisis, and rising oil prices.  Such vehicles are a sane alternative to an insane trade-off between smog, toxicity and convenience.  Or at least that is what the enviromentalists-turned-electrical-engineers (or vice versa) keep telling us in the press.  So having read numerous articles about how electric vehicles can save people both money and promote a cleaner, safer environment, I thought I’d dive in and start to learn about how to convert a regular gas/petrol car to an electric vehicle.

My reasons for contemplating electric car conversion is due to several factors.  Firstly, electric cars are much cheaper.  You completely eliminate gas bills, pay as little as $1 per week to recharge for up to 200 miles of driving distance, while also receiving tax refunds in some countries.  In the USA, the IRS gives generous tax credits to EV owners.  Not only are EVs cheaper, but they are less of a headache to maintain.  Finally, EVs don’t emit heat and pollution like gas cars do, helping to reduce global warming.

There are many resources available on the internet that can be useful; however some of these are very technical, and seem in some cases to cater to those with Master’s degrees in Electrical Engineering or equivalent technical abilities.  Others, like Peter Millward’s “Electricity4Gas” and Convert-2-EV seem to focus on teaching beginners like myself on how to convert gas cars to electric with simple instructions.  At present I am still undecided as to which of the two publication packages to buy – both are around AUS$80 – so until my decision is made I will continue doing a little more research.

There exist Electric Car Conversion Kits for popular models of cars that are ideal for conversion…  these include for example the Geo Metro and older Ford and Porshe models.  However these tend to be pricey.  The cheaper Ford Electric Conversion Kits can run from anywhere starting at $6,000 upwards in price.  There are also generic kits for various car makes and models out there as well, but the cost of these kits can definitely be a barrier to most.

If I get more into building my own EV, and I get the time and resources to do so, then I will post more follow ups to this entry.  For the moment, I’m belieiving the hype.

Alternative Method for Copying Databases in SQL Server 2005 Management Studio

How’s this for an awesome post… nevermind global warming, subprime mortgages or national healthcare, this one tops them all: How to easily port that database that you’ve been working on remotely on a hosted web server to your own machine using SQL Server 2005 Management Studio.

Why on earth am I writing this? Because I was trying to do a “Copy Database” in SQL Server 2005 Management Studio for the past hour, and kept getting permissions errors from my web host when using SMO. So in case I forget (likely), I wanted to write some steps for myself. It’s late and I’m too lazy to paste pictures. Just use your imagination on this one:

HOW TO DO IT:

  1. Open SQL Server 2005 Management Studio, and Connect to the database that you will transferring from
  2. Create a new database to copy to
  3. Right-Click on the database you will be copying, select “Tasks” -> “Export Data”
  4. Choose all tables and follow the prompts to Export the data and tables from the original database to the newly created db
  5. After the export finishes (will take a few minutes, most likely) check to make sure all tables, views, stored procs etc have been installed
  6. Right-click the original copy database, select “Tasks”->”Generate Scripts”
  7. Follow the prompts, choose to generate the script into a query for ease
  8. Copy the generated script to your clipboard
  9. Select the new database, open a new query, and paste the generated script into this query.  The query will be run on the new database.
  10. Run the new script.  There will be errors, because the script will not be able to replace existing tables.  We are only running the script to install objects that don’t hold data, such as views and stored procedures.
  11. Check to ensure all the original tables, views, stored procs etc are now in the new database
  12. Close all scripts, don’t save unless you really want to
  13. Feel good about yourself

Well that’s it. I hope you learned a lot in those few seconds of reading my rather ad-hoc instructions. Now if you don’t mind, I’m going to try and tip toe over my roommates dogs and get a cup of joe.

Peace

Why I’ll Always Love San Francisco

Forgive me, but I’m having a Kleenex moment. Yes, the emotions are broiling forth, as I’ve been reminiscing about the last 3 years of my life in the San Francisco Bay area. It wasn’t always roses and sunshine, but it was adversity, success and awakening on a lot of levels for me. So I’m busting out with a list of why I’ll always love San Francisco:

Reasons Why Shan Will Always Love San Francisco

  • San Francisco welcomes people who do not fit into mainstream society with open arms. She always has, and always will. You can never be too extreme for San Francisco, because there is always someone more extreme than you just around the corner.
  • It’s very multicultural, to the point of absurdity. You can travel to most of the world just by visiting different suburbs of San Francisco. Russian Hill, Chinatown, Little Italy, Oakland, Berkeley, the Mission. My fondest memories will be learning about Chinese, Indian and even Brazilian cultures from the friends that I made there.
  • If you have a new idea, you will get support for it in San Francisco. It is entrepreneur heaven. People there embrace new ideologies as if they were gold. Ideas are what San Fran famously produces. Look at the iPod: Made in China, DESIGNED in California.
  • Lots of jobs there for tech people. As a computer science graduate in Arizona, I got my first job with Vertigo Software in Point Richmond, in the Bay Area. Those guys were a crew of elite programmers that were kind enough to give a guy with an average GPA a break. And once I arrived there, the breaks didn’t stop coming. Even if I were to move back to the Bay Area some day, I know that I won’t have trouble finding a good job in San Fran.
  • There is an air of ethics there that transcends religion, politics and even sex. You just don’t make life hard for people that are different than you, that seems to be the unspoken rule.
  • Lots, I mean lots, of organized activities. The main activity being long distance running. If you are a marathon runner, then move to the Bay Area. It seems like every week there is a race with hundreds of participants somewhere in the Bay.

There are a lot of problems in San Fran. Let’s not ignore the fact that SF has the highest rate of AIDs and homelessness in the USA, as well as earthquakes, gangs, environmental pollution, and insane housing costs. But if you use your brain and think outside the box, life there can be quite enjoyable.

Just don’t buy a house there at the moment. If you don’t know what I’m talking about, research “sub-prime mortgages” :) .

Creating DotNetNuke 4 Modules with LINQ

DotNetNuke is awesome, I can’t believe I have lived without it for these many years as a .NET developer. It’s a plug-and-play website with tons of useful features that you can simply insert into content panes in a matter of seconds. Things like blogs, surveys, shopping carts, reports… you name it, there will already be a DotNetNuke module available online for it.

What is a DotNetNuke module? It’s a feature that you add to a DotNetNuke site; for example, FAQ is a module you drop into your DNN site once its installed on the site correctly. Similarly, shopping carts, blogs and surveys are also built-in modules that come with DNN 4 when you install the site on a web host.

But what happens if you want to create your own module? Good question. That’s what I’m about to find out from Michael Washington’s tutorial:

http://www.adefwebserver.com/dotnetnukehelp/LinqTutorial/LinqTutorial2.htm

The tutorial also gives you hands on experience with LINQ, for anyone (like myself) that doesn’t have much exposure to the technology.  Here are the basic steps for creating DotNetNuke 4 Modules with LINQ:

  1. Setup Your Project
  2. Create Tables
  3. Setup the Module
  4. Create LINQ to SQL Class
  5. Create the Module
  6. Create the Code-Behind
    1. Code-Behind for LINQ Datasource Control
    2. Code-Behind for Add My Listing Link
    3. Code-Behind for the Gridview (if any)
    4. Add additional Methods to the Code-Behind
  7. Create the Module Definition

Is An MBA Worth It?

There are already countless articles on this topic posted on the web already, I admit. This post is purely for the selfish purpose of reassuring myself why I am spending roughly $20k on an MBA here at James Cook University in Australia. Perhaps someone else out there in cyberland may benefit from this reassurance? In any case, here goes:

Reasons for getting an MBA:

  1. Money: Apparently you will be making on average $10k-30k more than my counterparts with undergrad degrees, and this is not counting the fact that you may be working in IT. Experience in the world of information technology pays off in itself, but having a master’s degree in business earns an even fatter paycheck for IT professionals (1).
  2. Career Advancement: an MBA is still important to reach senior management ranks within most companies(2).
  3. Self-Improvement: Leadership skills, managment skills, networking skills… even if you choose the non-profit world, the possibilities of being a big dog in your field seem more real than without education in these areas.
  4. Networking: I haven’t even started the MBA program yet, and already people seem to be hooking me up with business opportunities and contacts after learning that I am doing an MBA. Just meeting people and telling them what are you doing opens doors for you, it’s remarkable.
  5. More opportunities: A fellow undergrad student in the USA once told me that the more you study, the more you can “see” the world for what it really is. He added that getting an MBA is like moving up to a higher floor of a building and seeing more of the world below you (he probably wanted me to take this comment both literally as well as philosphically). I must agree with him – if you gain a general understanding of how businesses work and why they make the decisions that they do, then you can use this knowledge to help the business profit, rather than simply working hard in your assigned job and hoping that the business does well enough for you to get your $4k pay rise every year.
  6. Fewer Hours Working: Think about it – you are a manager, and you are getting other people to do your work for you. If you have the management and personable skills necessary to get people to work for you, then you don’t have to do the work yourself! My managers have all told me that they work less than 40 hours per week. They are very talented individuals, however it is their influence and ability to communicate effectively with people, along with their understanding of the business that makes their lives easier, not, for example, how talented at programming they are.
  7. Learn How to Start or Fine-Tune Your Own Business : This is perhaps a primary reason why many people pursue the MBA.
  8. Greater Job Security: MBAs are in demand, regardless of what jealous people tell you.
  9. Credibility: Especially among peers. Unfortunately there is that “part of the club” executive type feel, but it is useful for gaining respect.
  10. Communication Skills: Effective communication is supposedly learnt through various projects and presentations in an MBA program (3).
  11. Real-World Applications: MBA students can apply their studies to their work.

References:

(1) http://www.newswise.com/articles/view/512170/?sc=dwtr
(2) http://www.quintcareers.com/MBA_degree.html
(3) http://www.cio.com/article/122508/_Reasons_Why_You_Should_Get_an_MBA/3

Things Every Software Development Contractor Should Know

After recently moving to Cairns, Australia, I’ve noticed that most of the software development houses here contract their development work out rather than hire full-time employees. It is more cost effective for these places to contract than to deal with paperwork and a human resources department, especially since most business comes in the form of building websites for small tourism and hospitality companies.

I’ve never been a contractor in my life, but have been very interested in the prospect since I first heard of other people doing it. The dream of living on some remote tropical island while coding away (compare that to the life to Ian Fleming, who wrote most of the the James Bond novels in Jamaica!) has no doubt crossed my mind many times. However, there are some realities to doing contract work, as I’ve been finding out. Here are some of the major pointers to keep in mind as a software development contractor:

  • Know what you are worth as a contractor. Remember that you aren’t getting your pay divvied up into medical insurance, flexible spending accounts or a retirement plan anymore if you were previously working as a full-time employee, so ask for a little more than you would as a full-time employee because you will now have to pay for these expenses yourself.
  • Get everything in writing, and make sure they start paying you once they agree to hire you for your services. Know exactly how and when you’ll be paid before you start your work. Some companies just want to troll for information on how to plan a project, then lure contractors in with their requests for detailed quotes, only to shaft them once they learn how to do it themselves based on the quote! Keep your mouth shut on the details of how to do a project, that’s why they’re paying you!
  • Read the contract thoroughly, and make sure you answer any questions that you have ahead of time so that you aren’t wasting time later wondering about it. If there are tasks involved that you think you can’t get done in the given time, make sure that you let the hiring company know about this. You have to begin what you start once you sign a contract, so make sure you are only agreeing to do things that you can actually do and are not being a cowboy.
  • Come up with new ideas for more work. During every contract, always try and keep an eye on the next one. Identify areas of their business that could use custom developed solutions and present those ideas to those that hired you.
  • Don’t fall into the rolling contract trap, where you are utilized as simply an extra resource to fix a temporarily permanent shortage. These types of contracts have seen perfectly good developers stay on Fortran projects for 15 years, and see them miss out on the opportunity to acquire new skills like .NET and Java as a result. Enough said!
  • You typically have to supply your own tools. Remember that MSDN subscription that your former company let you play around with while you were employed as a full-time employee? Well now you have to pay for it, unless your contractee is generous and specifies that they want you to use their tools.
  • You can sub-contract your work to other people if you can’t do it yourself, or if you are lazy, or have other projects and want to manage more work for others and move into a business analyst role.
  • Use a consulting/contracting firm if you want peace of mind. These guys get paid to look for jobs for you. They will also take a good cut of your pay, but if its a good contract, then it shouldn’t matter too much. If you get the job done, then they will keep looking for work for you, and all you have to do is stay in touch with them. I personally prefer contracting firms like Robert Half Technology as opposed to looking for contract work myself, just because contracting firms are full time smoothers, and I am a full time programmer with less personable skills! Reality bites, but you can make comfortable compromise if you’re willing to.
  • Remember that depending on the contract, you will be taxed as a contract worker and not as a company employee during the contract period, so take into account withholdings and manage your money like a regular human resources department would – put some into retirement, some into savings, some into a decent health plan, etc.

In Australia, you can get certain tax breaks provided you pass the “Results Test” or 80% of your business comes from more than 1 client.  The Results Test is simply answering “yes” to the three questions:

  • Under your contract or arrangement, is the personal services income paid to achieve a specified result or outcome?
  • Do you have to provide the tools or equipment necessary (if any) to do your work? (If no tools or equipment are required, answer YES.)
  • Are you liable for rectifying defects in your work?

I can answer “yes” to these quesitons, and therefore am not affected by the New Business Tax System Act of 2000.  This gives me more items to make tax deductions on while doing business (see http://www.ato.gov.au/businesses/content.asp?doc=/content/15900.htm&page=13&H13)

Alternative Careers for Software Engineers

Let’s face it, software engineers sometimes burn out. An old electrical engineer once told me that on average, software engineers last about 5 years before they make a career change. I’m not sure if that is true, but I’ve witnessed several software professionals make career changes over the past few years due to the strain and long hours of the job. Working in a job using primarily your brain and fingers can only lead to fatigue sooner or later for many people; it is inevitable.

I took the Princeton Review’s Career Test to find other careers that someone like myself could enter into, and the results of my test are below. I believe these careers are good alternatives for ex-software engineers, since they involve patience and critical thinking:

Manager: Get an MBA and develop leadership skills and business savvy, maybe even start your own business.
Teacher: For those that enjoy educating others, this is a high respect/ low pay alternative.
Scientist: You may have to invest some time into learning science theory if you only have IT qualifications or experience.
Business Analyst: If you can handle dealing with clients and the business end of software, this is a great new job.
Technical Writer: Blogging addicts take note – technical writing still pays well!
Author: Being an author is hard work, since it’s very competitive because everyone enjoys doing it. I’d expect a pay decrease with this one.
Accountant/Auditor: With the mathematical skills and attention to detail software development brings, this seems doable.
Actuary: See Accountant.
Astronomer: Very competitive and low paying, unless you’re really really smart.
Bookkeeper: See Accountant.
Court Reporter: Can you type fast? Good! You’re hired!
Dental Lab Technician: In fact, any lab technical work is suitable for ex software people.
Economist: I know one software engineer that is in love with this topic. Bill Gates even digs this job! Go on, ask him for yourself!
Financial Aid Officer: [no info]
Financial Analyst: See Accountant.
Foreign Exchange Trader See Investor.
Health Care Administrator Admin work requires more people skills. Can you put on a happy face?
Office Manager See Manager.
Sommelier: aka Wine Steward. Can you act posh?
Surveyor: If you long for the outdoors and want to rub shoulders with construction workers, this seems like the ticket.
Corporate Lawyer: You’ll need to go back to University and do a bar exam. But you’ll be richer!
Business Valuator: Not sure about this one.
Financial Planner: See Accountant.
Internet/Intranet Technologies Manager: Instead of writing the code, you can manage it… maybe?
Geneticist: Another science-heavy commitment.
Hospital Administrator: See Health Care Administrator.
Quality Assurance Engineer: If you’re stick of building software, then you can test it instead.
Research Technician: This would be really fun if you like exploring records,documents,etc.
Small Business Owner: Find something that people need, and supply it. Simple, really!
Systems Administrator: Do an MCSE certification, or a systems admin diploma at Uni.
Systems Analyst: This seems like you’d need a deeper understanding of computer systems in order to be successful.
Venture Capitalist/ Investor: Choose the right stocks and cross your fingers.
Auditor: See Accountant.
Consultant: Make sure you know your stuff.
Food Service Manager: See Manager.

The Search for Unlimited High Speed Internet in Cairns

I recently moved back to Cairns, Australia, about a month ago, after living in the USA for the last 10 years. It’s been humid and windy since I got back, with random heavy showers and thunderstorms every few days. Quite a change from the mild chill and warmth of the San Francisco Bay area, and the dry heat of Phoenix!

After being spoilt with unlimited high speed cable broadband internet service while living in the States, it was quite a shock to arrive in Cairns and discover that all of the internet service providers in the Cairns put huge download limitations on their customers, on top of offering slower internet connections in general. For the last few weeks I have been ripping my hair out trying to get a service similar to the high speed cable internet I got from Comcast and Cox in the USA, but to now avail. It seems like most people here are still using ADSL with bandwidth/download/speed limitations here.

I feel like I have technologically devolved. No more speedy downloads of trial software, all nighters watching YouTube, online gaming binges or speedy Skype conversations! Oh Kevin Rudd’s new Broadband minister, where are thou?

Use the Right Power Supply for PC Parts Purchased Overseas

I learned a valuable lesson while building a new PC with parts from both the USA and Australia the other day – always make sure you use a transformable power supply that can step down or step up to the right voltage that your motherboard needs! A lot of newer power supplies sold in Australia are the 500W types that only supply 240v as input and do not have the ability to step down to 110v input for US motherboards, so check the specs before you buy a power supply. I almost burned out my motherboard by using a power supply that couldn’t transform between the US standard 110v input and the standard Australian 240v input!

If you hear a high-pitched “squeal” being emitted when you first turn on a newly built system, then you should shut off the power immediately. More than likely, the sound is being emitted from the capacitors on the motherboard freaking out because they are being overloaded with too much voltage. Another sure-fire sign is onboard motherboard cooling mounts heating up abnormally.