CentOS 6: Adjusting the remote desktop resolution without a monitor being connected

H4160-L83370825
If you remote desktop share into a CentOS 6 system without a monitor being connected (i.e. a headless server) the screen resolution defaults to a tiny 800×600. Unfortunately the upstream provider (Redhat) has declined to provide system-config-display for EL6 (see this bug report), making it impossible to set the screen resolution in CentOS6 to something more useable as you would if you had a monitor attached.

The workaround is to use xrandr in a script to change the screen size. Here are the steps involved.

1. Open a terminal window and type xrandr. This will list your various screen devices.

xrandr

You should get something like this

Screen 0: minimum 320 x 200, current 800 x 600, maximum 8192 x 8192
VGA-0 disconnected  (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 disconnected (normal left inverted right x axis y axis)

2. Type cvt with the screen dimensions you want (e.g. 1920 x 1200).

cvt 1920 1200

This should output something like this. Copy everything after “Modline”.

# 1920x1200 59.88 Hz (CVT 2.30MA) hsync: 74.56 kHz; pclk: 193.25 MHz
Modeline "1920x1200_60.00"  193.25  1920 2056 2256 2592  1200 1203 1209 1245 -hsync +vsync

3. Create a new shell script to call xrandr. This script will use xrandr to create a new mode, add the new mode to the screen device, and finally sets the screen output to the device using this mode.

nano setscreen.sh

Paste the copied cvt output information to after the  xrandr newmode line. Adjust the xrandr addmode line to be the name of your device (e.g. VGA-0) and the name of the new mode (e.g. 1920x1200_60.00) . Modify the xrandr output line to be this new mode. Your script should look something like this.

#!/bin/bash
xrandr --newmode "1920x1200_60.00" 193.25 1920 2056 2256 2592 1200 1203 1209 1245 -hsync +vsync
xrandr --addmode VGA-0 1920x1200_60.00
xrandr --output VGA-0 --mode 1920x1200_60.00

Save the script (control-x).

4. Change the script’s ownership and permissions to root and make it executable.

sudo chown root setscreen.sh
sudo chgrp root setscreen.sh
sudo chmod 755 setscreen.sh

5. Run the script to see if it works correctly.

sudo ./setscreen.sh

This should change the remote screen resolution to your desired size (e.g. 1920×1200). It can take a second or two to adjust.

6. To avoid having to run this script manually every time you log into the server, copy it into the /etc/X11/xinit/xinitrc.d/ directory.

sudo cp setscreen.sh /etc/X11/xinit/xinitrc.d/

Now that was so easy Redhat.

A Good Idea Checklist

Sky

I have had quite a bit of discussion about my article Ideas are not Cheap over the last few months and especially around the checklist for judging the quality of startup ideas.

The checklist was my personal list that I use to judge my own ideas and it consisted of 25 points in no particular order with no details. I thought I should do a follow up explaining these points in detail so they would be more useful for others. This rather long article is the result.

Caveats

I am biased towards startup ideas that can be bootstrapped as I believe most founders should be bootstrapping. Not everyone shares my beliefs, so I encourage you to create your own checklist. The real value of having such a list is in helping you think critically about your own ideas, not in claiming you met 15 out of 23 from my list.

Some of the criteria can really only be determined retrospectively (e.g. Criteria 5, 10, 11 & 22). These criteria are still valuable to consider as they help you think deeply about your ideas. You may not be certain if an idea meets a criteria or not, but you will still benefit from careful investigation.

Try to avoid erring on the generous side. If you are unsure if your idea meets a particular criteria then score it as no. Your ideas are your children, but unlike your real children your love for your ideas should be conditional.

There is no hard rule about how many criteria your idea should meet to be good idea. Even so, a rough rule of thumb is if you have less than 10 then keep working on your ideas and if it has more than 16 contact me so we can talk.

This checklist is ordered from most important to least important.

Good Idea Checklist

1. Can you execute the idea within your limitations?

This is the most critical criteria on this list. If the answer is no then the idea is not a good idea. You can have an amazing idea for a multi-billion dollar business, but if you can’t actually execute on it then put it aside and work on something else. For example, I hear many ideas for new social media startups that will be fantastic businesses if the person can get to 10 million users – the problem is they have no realistic plan on how to get to this number of users. Just building a social network that is better than every other social network does not mean people will use it. Facebook is not worth more than $250 billion because it is the best social network ever created, it is worth this amount because it has more than 1.5 billion users that advertisers pay to reach.

An idea you can’t execute on is worthless (to you).

2. Do you have a competitive advantage?

What is it about your idea that gives you an edge? Just being an avid user of SnapChat and Instagram does not give you a competitive advantage making a new photo sharing app. The question you have to ask yourself is do you know something really important about the problem or industry that no one else does? Why should you be the one to succeed when there are thousands of people who are smarter, richer, harder working, and better looking (sorry) that have tried and failed? Why has nobody executed successfully on your idea? If you don’t have good answers to all these questions then you don’t have a competitive advantage and your chances of success are slim.

The good news is you can acquire an edge by studying the problem and industry in depth. If you have an idea for an industry you are unfamiliar with then get a job in that industry. For example, if you have an idea for improving the buying and selling of homes then get your real estate license and work in an agency before launching your business. This will help you learn why things that seem crazy to outsiders are done and it will help you avoid building a product that nobody will buy. Selling will be easier as you will be able to speak the jargon of the industry and won’t come across as some starry-eyed dreamer who has no clue what the industry pain points are.

3. Can you bootstrap the idea?

By this I mean can you build the business without ever needing outside investors, not can you start the business, glue together a brittle demo, and go out and look for investors.

For an idea to be bootstrapped into a viable startup you need revenue above your burn rate before you run out of capital. Unless your kindly uncle is extremely wealthy, this means you need paying customers – ideally you will have your first customers before you launch. I see very few ideas that meet this requirement. If it were easy to build a startup by bootstrapping then there would be no such things as angel investors or venture capitalists.

One thing often overlooked by people when thinking about bootstrapping is they need an idea that will generate enough cash-flow to allow the startup to grow. Rapidly growing businesses require lots of cash and if your sales do not provide this cash-flow then you have a problem.  An idea is only a true bootstrap candidate if it can generate sufficient cash-flow to allow a startup to grow.

I should note that one of the huge advantages of bootstrapable ideas is they help you avoid building products that nobody wants, or more importantly, nobody wants to pay for. If you must get real paying customers right from the start then you can’t spend years and millions of dollars building something that no one needs, or pivoting from one bad idea to another while burning someone else’s money. Bootstrapped startups have to achieve product-market fit quickly or they die. Embrace the focus bootstrapping brings to your advantage.

4. Do you have profitable customers?

Unless you are running a charity, you need profitable customers. It is relatively easy to give something of real value away for free, but in the absence of very patient and understanding investors, you are going to need to make money sooner rather than later. Building a great product, getting users, and exiting by being acquired by a Facebook or Google is not a viable plan. You need profitable customers, or at least a very clear plan to get profitable customers, as early as possible. Never forget that users are not a substitute for customers.

You need to be able to identify and sell to profitable customers. It is desirable if your early customers are as homogeneous in their needs as possible, but you don’t want build on an idea that will only ever target a very narrow market. Many ideas are too narrow  in appeal to be good businesses. It is fine to have as your initial target market Welsh women between the ages of 25 and 35 with a passion for skydiving and needlepoint, but you need to have a plan for expanding your market into other areas such that you have a viable business.

Due to crazy spending fuelled by the venture capital industry, in some markets it is not possible to acquire profitable customers. If the players in your niche are burning truck loads of VC cash buying users then you may not be able to find profitable customers even if your product is far better. For example, in a lot of markets a new food delivery or ride sharing service just won’t be able to charge the true price of providing their service as there are too many competitors burning investor’s cash trying to get scale. Stay out of these markets until the money bonfire burns out.

5. Is the idea hard to replicate?

There is little point building a product that is easy to replicate since a better resourced team can and will come along and steal the market. You want to build products that very few people in the world have the skill or knowledge to make (i.e. where you have a competitive edge – Criteria 2). The only exception are markets where the first mover has a very significant advantage (Criteria 10), but even here being the first mover is just a factor that makes your idea hard to replicate.

6. Does the idea offers high margins that won’t be eroded over time?

This is related to Criteria 5, but it is slightly more subtle and in the long run more important. Startups with high margins can afford to make a lot of mistakes and still succeed. If your margins are 80% then you can mess up almost everything and still succeed, while if your margins are 3% you need to get (almost) everything right. High margins also solve cash-flow problems since every sale is basically money in the bank.

You want a build a business that can sustain high margins. With high margins you can afford to hire fantastic people and provide them with an environment where they will flourish. With a low margin businesses you have to be laser focused on every cent being spent. On top of this it is just so much more fun to work in a high margin business than a low margin one. You want to be worrying about how big to make the Christmas bonus this year, not if you can shave 0.1c off each unit by outsourcing the backend maintenance to some three man shop in Laos.

It is critically important that if you are going to build a startup around high margins that you have a credible plan to avoid your margins being eroded. Ask yourself very critically what is going to stop your margins from being driven down over time? The last thing you want is to build a high margin business (with a corresponding high cost base) and then have to later try to shift to a low cost model because your margins have evaporated. Very few companies can survive this transitions.

7. Does your sales model work?

Ask yourself if your sale model will work at the product’s price point. A high touch sales model (i.e. one with sales staff who chase leads) just does not work for many products if the customer lifetime value is under $1,000. A really common mistake people make is they see a huge demand in the market, know how to make a product that will meet this demand, but only later find they can’t sell the product for the price required to support the required sales model.

The small to medium business (SMB) market is notorious for leading people into this valley of death. There is massive demand by SMBs for better technology products and services — the problem is the lifetime customer value of most SMBs just can’t support the cost of acquiring them.

If you are need to use a high touch sales model to sell and support your product then you need to focus on large customers, or you need to work out a way to be able to sell your product using a low touch model. In some markets it is just not possible to close the gap between the low lifetime value of the customer with the high cost of acquiring the customer. Stay out of these markets no matter how attractive they appear on the surface.

8. Is your idea 100x better than any current product or service?

Most potential customers will stick with the devil they know rather than take the risk on something new. Your idea needs to not just be 10x better, it needs to be 100x better to make people change. Never forget that it has to be 100x better for the person making the decision, not the business or shareholders who will ultimately benefit. Plenty of great ideas have failed that would have helped a company make huge profits because they made life more difficult for the decision maker who had to decide to buy the product. Few decision makers ever lose their jobs for saying no to the new so you need to offer them something fantastic to get a yes.

9. Is your idea sticky?

Does your product or service provide such value to the customer that they will wonder how they lived without it? Will they find it impossible to switch to a new product or service because your product has become totally enmeshed in their processes and habits. If the answer is yes then you have the foundation for a great business.

Facebook is the classic model of this stickiness. Lots of people have made better social networks than Facebook, but the lock Facebook has through the network effect is incredible. If you are going to disrupt Facebook you had better have a product that is at least 100x better (Criteria 8). For a startup it is not likely to be possible to create such a product – even Google failed with Google+ and they had almost infinite resources.

The good news is thinking about the importance of stickiness will help you develop strategies to make your product stickier. Always be thinking about what can you change to lock in your customers, or what can you add to your product make it harder for them to switch to another product.

Just don’t go overboard with this process or you will find you can’t get any customers in the first place. Customers are aware that you want to lock them in and will resist your efforts – make a product too obviously sticky and they will stay away.

10. Does your idea have real and significant first mover advantage?

It is always desirable to have first mover advantage (assuming you are first), the problem is that in most markets first mover advantage does not exist. History is littered with examples of late entrants killing the original pioneers (look at what Amazon did to Book Stacks Unlimited). It is very easy to overestimate how much value there is in being first to market especially if you don’t have access to unlimited resources. If you really do have significant first mover advantage this can be very valuable, but be aware that it is likely a mirage.

11. Is your idea viral?

This criteria is both the second most important and the most difficult to determine in advance. If you have a true viral product of general appeal (i.e. if every new user recruits two or more new users) then all your problems are solved. You don’t need to make money (VC’s will chase you with a checkbook) and eventually a Facebook or Google will buy you out for billions.

The problem is it impossible to know if your product will be viral before launching, or even afterwards most of the time. It is very easy to convince yourself that your idea will go viral (i.e. all your friends say it is a work of genius and it is going to be H-U-G-E), but in most cases it does not happen. It is really, really hard to make a viral product with wide appeal.

If you believe your product will be viral then you need to ask yourself why a stranger would take the time to convince their friends and colleagues to use your product. When someone recommends your product they are investing their ego in your idea so it needs to make the recommender look uber cool / attractive / a genius in the eyes of the person to whom your product is being recommended. Very few ideas can do this. You should always assume, unless you have very good evidence to the contrary, that your product will not go viral beyond a very small niche.

One thing to be very wary of is self-limiting virality. Just like real biological viruses can spread rapidly through a sub-population, yet fail to spread through the general population (HIV is a classic example), ideas can also show the same limited virality. Your great idea might only appeal to 10,000 people in the world. You will launch and see your product spread virally through this niche (small communities talk) only to hit a wall after 6 months once everyone interested in it has been reached. Unless these 10,000 people provide enormous customer lifetime value you will have just created a product that some people love, but which won’t make money. Ask yourself how many people will love your idea so much that they will invest their ego in telling other about it.

12. Is the market the right size?

The right size depends on the funding strategy you are pursuing. If you are looking to raise investor money then the market needs to be in the billions, while if you are bootstrapping you want to avoid these large markets and concentrate on niche markets. The ideal size for a bootstrapped startup is a market around $25 million that will generate profits of $5 million per year. This is too small to attract VC-backed competitors, but large enough to be worth the hassle. There is no point going through the agony and stress of creating a startup if you are only going to earn $100,000 a year in profit. Think big, but not too big.

13. Does your idea fit into an existing market?

It is really hard to create a new product and a new market at the same time. It is much better if you build a product that fits into existing market and is 100x better (Criteria 8) than to be first to market and be banking on first mover advantage (Criteria 10).

14. Will existing market players be indifferent to your idea?

This criteria touches on a series of warnings signs that you want to avoid. Does your product have legal (patent/copyright/IP) issues? Will you threaten the business model of powerful player(s) who are willing and able to crush you? Does your product build on another businesses product or service that can change at any moment locking you out? If you answer is yes to any of these questions you need to have a carefully thought out strategies for how to avoid these dangers.

15. Does your idea create a monopoly?

Monopolies can be highly profitable and very desirable to own. The difficulty is, outside of small niches, that they can be very hard to create and even hard to defend. Ask yourself how you will be able to stop others entering your market? What strategies do you have for stopping a better resource player from stealing your customers?

One of the many advantages of bootstrapping is you can choose markets small enough that defend a monopoly is possible. The VC backed startups just won’t enter a market of $25 million a year. Provided you don’t get too greedy (or lazy) you should be able to retain a monopoly position once established in these small markets.

16. Is your idea simple to explain, but hard to conceive?

This is one of the most misunderstood points from my original article. People assumed that since their idea was hard for them to conceive, and since they can explain the idea, then it must meet this criteria. This is not what I meant (this is my fault). I considered removing this criteria from this list because of this confusion, but it such a valuable feature if true that I decided to keep it but explain it better.

So what do I mean by an idea being simple to explain, but hard to conceive? In some ways it is like a reversing a one-way hash function. It is easy to hash a string, but very difficult (impossible) to reverse the process. An idea that is hard to conceive is one that very few people could have come up with, either because you need to be a genius (unlikely), or they have a very unusual background with just the right combinations of skills and interests. Almost all ideas that are hard to conceive are also hard to explain while almost all ideas that are easy to explain are easy to conceive.

It is a very rare idea that is both hard to conceive and easy to explain. Coming up with one is like reversing a hash function. The value is that it is unlikely that anyone has thought of your idea before, but you don’t face all the problems involved in explain it  – you get all the benefits of complexity with all the benefits of simplicity.

17. Can your idea be sold using a low touch sales model?

If you don’t need to hire shiploads of sales staff to sell your product or service then, all things being equal, your life will be easier. Not only do you avoid all the difficulties involved in managing and motivating sales people, but many more markets will be open to you as your cost of acquiring a new customer will be much lower.

The difficulty is knowing if you can use a low touch sales model before launching. It is very common for people to think that their product will be easier to sell than it really turns out to be. You need to question why you think you can sell using a low cost sales model. Try to get as much advice and feedback from experienced sales people before deciding that this model will work. If products of similar cost and complexity are not sold via a low touch model then it is very probable that you won’t be able to use this model either.

18. Is your idea easy for customers to trial and use?

This one is obvious. Of course the easier it is for a customer to trial your product the more people will, and assuming it offers real value, the more people will buy. The difficulty comes from managing the expectations of potential customers for a product with complexity. If you make a complex product too easy to trial then potential customers can undervalue the product, or misunderstand what it can do. Sometimes less is more while other times more is less.

19. Can your idea be scaled at low cost?

It is common advice for startups to do things that don’t scale. While there is great value in this advice, it is not useful when applied to evaluating ideas. When deciding on the quality of an idea you want to choose ideas that can be scaled at low cost with minimal human labour. Whatsapp is an example of the sort of idea that scales at low cost, Magic is an example of the sort of idea that doesn’t. You really want to build a Whatsapp and not a Magic.

20. Does your idea need low cost labour?

You want to avoid ideas that require low cost labour for two reasons. First, most startups that need low cost labour are low margin businesses with all the problems this entails (Criteria 6). Second, managing large numbers of people is never fun. Unless you want to build an empire, you really want to hire as few people as possible to get the job done. Follow the path of Whatsapp which had 55 employees supporting 900 million users when it was acquired by Facebook. Every person you add to your business will only make your life more complex. Better one really good person paid $200,000 a year than four average people paid $50,000 each.

21. Is your idea of interest to the media?

Your idea is unlikely to be of interest to the media, and if it is, it is likely it will be for the wrong reasons. If you are lucky enough to have an idea that will generate positive press coverage this is great, but don’t lose too much sleep if it doesn’t. In the end it is customers that matter, not if your mother gets to see you on the cover of some magazine in a black turtleneck.

22. Can your idea be sold internationally?

Almost all products can be sold internationally, the real question to ask is your idea suited to international sales. Ideas based on geography, legal frameworks, and specific cultural interests or tastes are less desirable than ideas that have universal appeal. The difficulty with assessing the universal appeal of an idea is that it can be very hard to make this judgement since the world is a big place and we all have a specific and limited cultural frame of reference. It is much more difficult than it seems to know how much international appeal your idea will have and often you will only find out after launching.

23. Will your idea make a dent in the world?

We all only have one life so spend it doing things you care about. If you want to build a startup then build one that will make the world a little better than you found it. It is very unlikely that on your deathbed you will regret not making an extra $100,000, but it is much more likely you will regret not doing the things you really wanted to do. Seize your chances and live a full life.

Most importantly don’t stop thinking.

Execution is just the multiplier of ideas

The Red Warehouse 2003

Derek Sivers wrote a very influential post a few years ago where he suggested ideas are just the multiplier of execution. His execution first model is pretty simple.

Value = Execution x Idea

In Derek’s model the value of execution ranges from $1 for no execution, $1000 for weak execution, $10,000 for so-so execution, $100,000 for good execution, $1,000,000 for great execution, all the way up to $10,000,000 for brilliant execution. His idea multiplier ranges from −1 for an awful idea, 1 for a weak idea, 5 for a so-so idea, 10 for a good idea, 15 for a great idea, and up to 20 for a brilliant idea.

While these values are rather arbitrary, the implication is all the value of a startup is in the execution and the idea only modestly influences the final value.

Execution First Model

While I think there is a lot of utility in looking at the value of a startup as the interaction of the quality of the idea and its execution, making the execution the driver of value has a number of issues.

Discounts the importance of brilliant ideas. Why worry as a founder if your idea is so-so or brilliant if it only makes a 4-fold difference to your ultimate value? In Derek’s model the difference between so-so and brilliant execution is a 1000-fold. Faced with this logic people concentrate on execution.

Encourages a false belief in how much control you have over execution. Founders are prone to thinking that they can control execution quality when they believe execution is everything. The reality is that you are often at the mercy of events. Markets change, competitors come and go, investor interest waxes and wanes, employees leave, etc. There is little you can do except ride out the storms all the while bailing frantically to keep the ship from sinking. Any control you have is limited, often illusory, and transient.

Brilliant ideas are rare, good teams are uncommon. There are far more good teams than brilliant ideas. The level of competency required to implement a brilliant idea is within the skill range of many motivated people. It is the so-so and weak ideas that provide a team with very little room for error or skill deficits – the better the idea the more mistakes you can afford to make during its execution and still succeed. If your idea is so-so (or worse) then you need to have brilliant execution and a lot of luck to have any chance of a large success.

Brilliant execution doesn’t scale. Regression towards the mean causes your team to move towards the industry average for all companies that pay the same wages you do as you grow. When you have half a dozen people you can put together an amazing team, but when you have 600 people they will inherently be pretty close to industry average. Even worse, a team that is brilliant early is often not suited to running the business later, something many founders and investors have found out the hard way. Team and execution quality is dependant on the situation and environment.

Brilliant ideas can scale. For example, the value of the brilliant idea that allowed high quality search (Page Rank) scaled with the growth of Google. It was very valuable when Google was just Larry and Sergey and it is even more valuable today. Google has some amazingly talented people able to execute brilliantly and the average Google employee is likely to be above the industry average, but this is a function of Google’s enormous profitability powered by their ideas. This profitability enables them to pay well above the industry norms in cash and perks. Most businesses don’t have this luxury.

Encourages a belief in the “indispensable man” myth. All founders are prone to falling for this myth and it can colour how they structure and run their businesses. If you believe you are indispensable to the continued success of your startup because execution is everything then this is a problem; if your business has hundreds of employees and it is still critically dependent on you then this is a disaster waiting to happen. Always remember that the graveyards are filled with indispensable men.

Encourages lazy investor thinking. It is relatively easy to judge execution, while it is much harder to judge the quality of an idea. Any investor can listen to a pitch and ask what have you done – what is really hard is to workout if the underlying idea is brilliant or not. The best ideas are often not obvious, nor easy to understand, and doing so requires effort. Why think if you can just instantly dismiss a founder on the basis of execution – after all you can always comfort yourself by saying that nobody knows what startup ideas will succeed or not.

Idea First Model

A better model is to think of the value of a startup as being driven by the quality of the idea multiplied by execution above or below a threshold or hurdle. In this ideas first model anything above good execution is positive and anything below is negative but awful ideas are always negative.

Value = Idea x Execution Hurdle

This model has the following expected outcomes (on average):

  • weak idea x weak/so-so execution = negative value
  • good idea x weak/so-so execution = negative value
  • brilliant idea x weak/so-so execution = negative value
  • awful idea x good/brilliant execution = massive negative value
  • weak idea x good/brilliant execution = low value
  • so-so idea x good/brilliant execution = moderate value
  • good idea x good/brilliant execution = high value
  • brilliant idea x good/brilliant execution = massive value

The most important thing to remember with this model is the expected outcomes are just averages and the actual value of any startup will vary by chance. Sometimes startups with a weak or so-so idea will achieve a high value (i.e. by brilliant execution and luck), but the value of the cohort of similar startups is overall negative – all the failed startups with so-so ideas and less than good execution cancel out the few (by chance) winners.

Since most ideas are so-so or worse, examining successful startups will lead you to the false conclusion that execution is everything since only those with brilliant execution succeed. The successful startups with a brilliant idea and just good execution are just too rare to notice amongst all the successful startups with a so-so ideas, brilliant execution and luck.

The really dangerous startups are those with a brilliant team and an awful idea. These teams can convince investors and employees to commit enormous resources into a doomed concept. The quality of the team and execution can hide this enviable disaster for a long time before the loss is crystallised.

Why do so many VCs and Angels believe ideas as not important?

This is an interesting question. While of course many Angels and VCs do believe ideas are very important, many also don’t. The reason, based on my personal experience of listening to pitches from founders, is all the ideas you hear are awful, to at best, weak. If you are (almost) never pitched a good idea then the only variability seen between investment opportunities is in the execution quality. Since this varies a great deal from team to team, investors are prone to perceiving all the value difference in startups to be due to execution quality.

This model also explains why the VC industry as a whole has poor to negative returns despite putting so much emphasise on track record and team quality. They are trying to pick winners from the pool of good teams using a metric (execution) with no additional predictive value. Execution is a hurdle, not a predictive factor of success. This is similar to the way that Google found that there is no predictive value in how well a new employee performs on the job with how they performed in the interview. The interview is predicative of clearing the hurdle (i.e. getting hired), but other factors not measured in their interview process are the cause of any job performance variability. Put simply, it does not follow that any factor that can help you sort good from bad will help you sort excellent from good.

The few investors that can recognise a good idea (and not just a good pitch) are able to make outstanding returns. Andy Bechtolsheim recognised that Larry and Sergey had a brilliant idea and he reaped the rewards. How many of the show-us-a-business-with-a-12-months-track-record-of-growing-at-20%-a-week investment crowd would have backed a couple of PhD students with little more than a brilliant idea?

The bottom line is that execution is a critical hurdle (it has to be at least good or else success won’t occur), but that the non-chance variation in the value of startups is due to the quality of the idea. A startup with a brilliant idea and good team is worth far more on average than a startup with a so-so idea and a brilliant team. Brilliant ideas are rare, but if you do come across a startup with one then back it even if the team are not proven superstars. You are still going to have more losers than winners, but the winners with brilliant ideas will more than pay for all the losers. The downside is you are going to have to put in more than five seconds of thinking before deciding to invest or not.

Preventing Global Climate Collapse

With the 2015 Paris Climate Agreement finished there has been a bit of discussion on Hacker News about how effective it will be in practice. I have my doubts that it will amount to much effective action, but it did remind me about the talk I gave in 2007 on how we could solve the problem of anthropic climate change via some clever financial engineering.

My basic idea was we shift the cost of stopping greenhouse gas (GHG) emissions onto the people who will really benefit (future generations) by issuing sovereign long term zero coupon bonds. The money from these bonds would be used to buy and shut down GHG emitting assets (oil, gas, coal) and build non-emitting alternatives (wind, solar, etc).

Combining this idea with some simple game theory, we can issuing these bonds today without requiring all countries to agree at once. The basic idea is that we put off allocating costs until when the bonds are due (zero coupon bonds don’t pay annual interest) and that they are ultimately allocated on the basis of the size of the economies at the time the bonds are due (50+ years) along with a discount for a country joining early. This avoids all the problems in deciding who should pay what share today.

If anyone is interested I have attached the slides from this talk. Some of the modelling and facts are a little out of date, but the basic framework is still valid. The major changes are the cost of GHG abatement has come down as wind and solar have got cheaper, and also long term interest rates are much lower than they were in 2007. Both these changes mean that it would cost far less than I estimated back in 2007. Now if we would only do something to solve this problem, not just sign agreements that have zero enforcement.

Preventing Global Climate Collapse Slides 2007

How to Register an Australian Company for Business with the USA Government

If you want to sell anything to a US government entity, or bid on a US government contract, you need to be on the Central Contractor Registration list and to do this you need to open a user account within the System For Award Management (SAM). Like everything the US government does it is an incredibly painful and slow process. These are the steps you need to go through.

  1. Get a D-U-N-S number. In theory if you have an Australian ABN you have an D-U-N-S number, but this does not seem to always be true. If you don’t already have a D-U-N-S number then you just need to complete this form and email to Dun & Bradstreet Australia and in a few days they will email you back your D-U-N-S number. It is free and the form is not too complex, although it does not seem to be well formatted.
  2. Check that the D-U-N-S details for your company are correct. If the details need to be updated (address, phone number, etc) then just send an email from a company email address to D&B at clientservices@dnb.com.au with the changes needed. It is really important that the details with D&B are correct.
  3. Register for a NCAGE number. To do this you need to search for your details on the NATO Codification Tools page. Assuming nothing comes up then you can then fill out the NCAGE Application Form. Most of it is straightforward, except for the Organization Data – Additional Information section. Here you are expected to enter information on your classification. I just completed the 
  4. Confirm your NCAGE application.  Once you have entered everything and submitted the form you will be sent a email that contains a confirmation link you need to click on. An email will be sent to you that explains that your application has been sent to the Australian Department of Defence. The applications appears to be handled by one person in defence, but he is very helpful and friendly. The only thing extra he needed from me was our ABN. The application process is supposed to take two weeks before you get your NCAGE number (mine took a week).
  5. Wait for your NCAGE number to enter the US CAGE system. Once you have a NCAGE number you need to wait for the information to be sent to the USA and be entered into the US CAGE system. This took 12 days for me, but my application did cross over the Thanksgiving period so it might be quicker normally. To know when your company is in the CAGE system you need to check for your details in the Business Identification Number Cross Reference System (BINCS). This site is run by the US military and interestingly my browser considered their https certificate to be invalid. Considering it is impossible to get a .mil domain unless you are part of the US military this is not something to really worry about.
  6. Register with SAM. Once you have your NGAGE and D-U-N-S numbers (and they are in the US CAGE system), then you can begin the process of registering with the System For Award Management (SAM). There is a hard to find, but very helpful, step-by-step guide in Word format (.docx) of what you need to do on the SAM site. To access this guide click on the main HELP tab, then clicking on Demonstration Videos, then click on View Transcript of the video entitled Register a New Entity in SAM to be Eligible for Government Contracts (you can watch the video too, but I prefer instructions in writing)The SAM registration process is long, but pretty straightforward except for a few tricky points. The basic process involves:
    1. Creating a User Account. After clicking on Create User Account you are given the choice of creating an Individual Account or a System Account. Choose Individual Account and then fill in the form. The only tricky part is you need to change the country to Australia before you can enter the correct phone number. Once you submit the form you will be sent a confirmation email which you need to click.
    2. Once you have confirmed your email and logged into the SAM system you need to go to the Register New Entity page which is accessed from the left hand side menu. Click on the START REGISTRATION button. You will be warned you need a DUNS and NGAGE number.
    3. On the Purpose of Registration select Business or Organisation for the What type of entity are you. Select Yes for Do you wish to bid on Contracts.
    4. From this point on rely on the SAM transcript guide as the process gets amazingly complex. Many of the questions don’t apply to an Australian company and a lot of the questions you can push off into the future by just selecting you will supply the information with a specific bid later. The big one to watch out for is don’t put anything in the Taxpayer Identification Information field unless you want to deal with the IRS. There does not seem to be anyway of registering a Australian bank account so you will need to choose to have any payment mailed to you with a cheque unless you happen to have a US bank account.
  7. Wait for your registration to be approved. This was actually quite efficient and it only took 12 hours with my application. You will be sent an email letting you know when you are approved. You do have to renew your registration in a little less than 12 months so mark this down in your diary. You can also update any information about your company later by logging into the SAM system and selecting Update.
  8. Profit!

Update for 2016

I have gone through the renewal process and it is pretty straightforward. SAM sends you an email reminder a month out and you just have to follow the instructions in the email. The only issue is you have to reset your password as SAM expires your password after 180 days (why is beyond me). Other than that it is just a lot of clicking through confirmation pages that everything is the same as last year – the whole things takes around 30 minutes.

Saving split mayonnaise when you don’t have any more eggs

I was making Caesar Salad last night and managed to split the mayonnaise while making it – this is pretty easy to do if you add too much oil too fast. The simple way to fix this problem is just to start again with a new egg and slowly whisk back in the split mayonnaise – the only requirement for this rescue is that you have an extra egg.

Of course as fate would have it I had no more eggs. At this point I was faced with making an emergency trip to the shops to buy more eggs, but then it occurred to me to see if I could rescue the split mayonnaise with dijon mustard. I tipped out the split mayonnaise, added around a teaspoon of dijon mustard to the jar, and then slowly added back the split mayonnaise while whisking the whole time. Thankfully it worked and I ended up with nice unsplit mayonnaise. The flavour was not too bad either.

Ideas are not cheap

fourclosedshops_mid

It is a cliche in the tech industry that startup ideas are cheap and all that matters is execution. The thinking is that it doesn’t really matter what you do, it just matters that you work really hard and pivot until you get product-market fit.

The truth is the vast majority of ideas are worse than worthless because they are simply bad ideas. Bad ideas will sometimes work because of luck or effort, but good ideas are much, much more likely to succeed. Life is too short to work on bad ideas.

You are probably saying to yourself right now that this is pretty obvious and how does knowing good ideas are important help me find good ideas, or know if my ideas are any good? To answer these questions it is best to split the problem into two; first, what is a good idea and second, how to generate good ideas?

What is a good idea?

A good idea must be able to be executed by you within your limitations. An idea that you can’t execute (for whatever reason) is a bad idea. Beyond this critical requirement, good ideas will have as many of the following features as possible (these are listed in no particular order).

  • Require little, or no money, avoiding the need for outside investors (i.e you can bootstrap).
  • Is simple to explain, but hard to conceive. For those of you who have a biology background PCR is the classic example of this.
  • Is not being worked on by anyone else (i.e. no direct competitors).
  • Easy for customers to trial and use (i.e. low barriers to selling).
  • Fits into an existing market so you don’t have to create both a new product and a new market at the same time.
  • Is not dependent of the actions of others (e.g. does not build on Twitter’s API).
  • Has no legal issues – you don’t want to spend the next 20 years in litigation with everyone.
  • Cannot be easily replicated.
  • The first mover has a major advantage.
  • Is a natural monopoly that can be defended. Ideas that have a strong network effect are often natural monopolies.
  • Has a high R0 index (i.e. is viral).
  • Offers high margins that won’t be eroded over time.
  • Solves an interesting and/or important problem that will make your mother proud (i.e. make a dent in the world).
  • Provides your customers with such significant value that they will wonder how they once lived without it.
  • Is sticky – your customers won’t switch to other products. Ideas that have a strong network effect are sticky.
  • Is 100x better than any current product or service.
  • Can be sold without expensive sales staff (i.e. low touch sales model).
  • Can be adapted to be used in other markets (i.e. build narrow and expand later).
  • Generates sufficient cashflow to enable your company to expand as fast as you want without needing external investors.
  • Doesn’t threaten any well-established powers who are able and willing to crush you.
  • Is of interest to the media (free PR).
  • Has a narrow target market that can be identified and reached.
  • Is not dependent on the use of low cost labour.
  • Can be scaled to support millions of users at a low cost.
  • Can be sold internationally.

This is a pretty tough list and no idea in history has ever met all of them, but the more of these your idea has then the better the idea. Which ones are the most important will depend on your idea and personal desires, but you can assume that if it does not tick at least 7 or 8 then it is not a really good idea.

The points on this list that people are most likely to disagree with are those concerning avoiding external investors. For some this is not important, but for me it is very desirable that any idea be able to be bootstrapped. Even if you have no objection to taking money from outside investors, it is still good for an idea to require as little outside money as possible and as late in the process as possible. You want to be talking to investors when you don’t need their money; any investment is just to diversify your risk, or to allow you to grow faster than you might have done. Investors should be “nice to have”,  not a “must have”.

I have left off some things from this list that are considered important by the VC industry like being in a rapidly growing market, having the potential to be a unicorn (i.e. be worth over a billion dollars), or being in “hot” area. The reason why I don’t consider these important is that investor fashion won’t turn a bad idea into a good idea (it might get you VC money though), and it is too hard to predict what the market will do when it is rapidly growing and changing. While you might get lucky and get everything right, you run the very real risk of being too early, too late, or just plan wrong, without knowing until it is too late. As for the need to become a unicorn, it is important to remember that the decline in the hedonistic value of money is very rapid. Ask yourself how much happier you will be if you are worth $100 million verses $20 million. For most people $20 million is more than enough.

Edit. I have posted an updated checklist with much more detail to help you work on what is a good idea.

How to generate good ideas?

This is one is harder. Good ideas are rare and even the most talented people will not have many (most will have none). My best advice is to think a lot about big existing problems. These are problems that if solved will unlock massive value. If you can provide huge value to a customer then you can succeed with an idea that might be weak in other areas.

Think about markets with significant information asymmetries. These are markets where either the buyer or seller (or both) lack the information they need to come to the best price. A simple example of this type of market is the second hand car market. Because the seller knows much more about the history of the car than the buyer, the buyer pays below the cars true worth to make up for the very real risk of ending up with a lemon. Sellers get less than they should for good cars and buyers are at risk of buying a dud. Closing this information gap can unleash massive value for both buyers and sellers which can be captured by the right idea.

I should mention that asymmetrical markets often exist because there are powerful forces that benefit from this asymmetry and who will not take kindly to any attempt to disrupt their business model (banking is a good example). If there are powerful forces involved in keeping a market asymmetrical, then you need to think carefully about how you can enter the market without waking the sleeping dragons. One way is to appear benign and unthreatening on the surface while you build up the resources to be able to move rapidly into the market once ready (the blitzkrieg approach). Another is to pursue a seemingly unrelated market at first and then switch to your desired market when strong.

Think about existing processes that are expensive. Any activity that requires a lot of money or time will have inherent inefficiencies, that if removed, will unlock sufficient value to be a good idea. For example, for most people finding the right home is very costly in both time and money. If you can workout a way for people to be able to find their ideal home in a much more efficient manner then you will be unlocking huge value which can be captured by a good idea. The key is to make sure the value can be captured by your business, since unless you are running a non-profit, unlocking value that can’t be captured is not a good idea.

Don’t copy others – no more Uber for x, or Tinder for y. Everyone can bring up the counterexamples of Google and Facebook as being “me-too” successes, but these two companies were the first to get search and social right respectively. With Google you could actually find the content you wanted (not keyword-stuffed spam), while Facebook allowed you to socialise online without feeling like you were hanging out in a troll-filled ghetto. They might have appeared to be following others, but in reality they were leading the way.

Learn about everything you can, especially from outside your current expertise domain. I have had many idea come to me while learning about totally new areas where I recognised that a problem in one domain had already been solved in another domain but nobody had yet noticed. Often a good idea is just a case of noticing what has already been done and applying it to a new area.

Don’t be worried about borrowing/stealing a good idea. It does not matter if you had the idea or not as long as you were the one that first recognised that it was a good idea. For what it is worth I have never has an idea stolen, only the credit after it had been proven.

Don’t forget that some good ideas only need one small tweak to turn them from a bad idea into a good idea. AirBnB is a classic example of this. Their original idea of a website to enable you to find strangers to sleep on an air mattress in your living room was a terrible idea. What made AirBnB a good idea was providing free professional photographers to their customers (landlords). This made the properties they listed look much better than their competitors listings and kicked off a virtuous circle that got more landlords to list and people to rent the properties. All it took was one small change to unleash massive value.

Write down your ideas and think often about what you can change so that you make them better. A good idea will rarely arrive fully-formed and may take years to be worked into a winner. For example, the idea I am working on for my next venture I first had 15 years ago. I felt it was a cool idea at the time, but since I could not see any way of monetizing the concept so I left it to mature. Three months ago I finally thought of way that would enable me to make money using it and it now meets 10 of my good idea requirements. I am spending around 20% of my time planning and knowledge gap filling to get the idea ready for execution. There is no guarantee it will succeed, but it has more chance than a Tinder clone focused on left handed people (“swipe left not right”).

Most importantly, don’t stop thinking.

Why I kept my startup in Australia and why it was crazy

Radial Road
There has been great some discussion of late about tech startups in Australia. Alan Downie of Macropod has posted a couple of interesting articles on this topic (Why we kept our Startup in Australia and Funding an Australian Startup) which generated a really good discussion on Hacker News if this is a good idea or not. I am firmly of the opinion that trying to run a technology company in Australia is crazy, yet here I am almost 16 years later doing exactly this and making (at least to my satisfaction) a success of it.

So why did I keep Nucleics in Australia?

To answer this question I really need to provide some background. The history of Nucleics is rather long with all the twists and turns you would expect for a startup that has lasted this long. Nucleics began in a blaze of success back in 1999 out of an idea I had while finishing up my PhD. The late 90s were the time of the genomics boom (this was a parallel boom to the original dot.com boom) where anything to do with the human genome project was seen as the future. After bootstraping Nucleics from nothing (just me at the bench) we managed to sell our first product (ASIN) to a large US biotech company, and then again to a large Japanese company in early 2000.

Thinking this business stuff was easy, I poured all the money back into Nucleics and we rapidly expanded and so by mid 2001 we had 8 Ph.D level scientist, 3 full time developers, and 3 B.Sc level research assistants all working feverishly developing a whole suite of amazing genomics tools (a number of these became products such as CounterTrace, UniSeq, and dLUTE SEQ). While things were not always without drama, money and sales came so easy I thought running a biotech company was simple and all we needed to do is keep creating great products and we would conquer the world (yes hubris). We discussed about moving Nucleics to the USA and we had some venture capital interest there too, but I stupidly thought that I could do it all remotely from Australia – why move Nucleics, let’s prove that it can be done in Australia and be (very) local heroes.

Downfall

Like all good Greek tragedies the gods only build you up so they can cut you down. In my case 9/11 happened and everything came to a grinding halt. All the deals we had been negotiating froze, businesses and facilities couldn’t make any purchasing decisions – everyone said you have great products, but we can’t commit to anything new now, etc, etc. Nucleics rolled along burning enormous amounts of cash (scientists while cheap, are not that cheap) and I sat there hoping that at any moment now someone is going to sign and we will be saved. VC or Angel money proved impossible to find in Australia for a business like Nucleics, and after speaking to far too many people, I came to the conclusion that there were a lot of people in Australia who enjoyed pretending to be venture capitalists, but who really wanted to be merchant bankers.

Through enormous hustle I managed to raise some much needed cash out of a couple of our potential customers (I basically convinced them that if they didn’t pay up front there would be no product), but eventually even this money ran out. I was forced to lay everyone off, put Nucleics into hibernation, and find something else to do. It was all very depressing as I felt that if it was not for my ego we would have moved to the USA, raised enough cash to get through the 9/11 block, and have gone on to become the huge success we could/should have been. I thought a lot about the mistakes I had made and despaired at my stupidity.

Redemption

I managed to land an academic job at La Trobe University at the end of 2004. They were happy for me to bring what remained of Nucleics – at this stage it was just a shell with a lot of lab equipment and reagents. While I was still feeling rather down about what had happened with Nucleics, I at least had an income and a lot of spare time on my hands. This was because the lab the university was supposed to have organise for me was not ready – it was still the same bare concrete room filled with junk and dust that had been shown to me 6 month earlier – the only change had been the addition of even more junk.

Since I had no lab and no hope of getting a lab anytime soon (it eventually took more than 2 years to finish and even then they got it was wrong) I wondered what I could do? My only idea was bioinformatics since I did have a laptop and a desk. My problem was I knew nothing about software development and knew no one who did. I didn’t even know where to start so I wandered over to the library and starting pulling random books on software development off the shelf and began reading. As anyone who has ever taught themselves a totally new field will know, it is completely daunting at the beginning since nothing makes sense and even getting a simple hello world program to run seems impossible. I kept at it and found it was not as bad as it first seemed. Since molecular biology and software development are such different fields there are relatively few people skilled in both areas which leaves a lot of low-hanging fruit to explore. By the time my lab was ready I was feeling that the whole delay had been a huge opportunity rather than a disaster.

Rebirth

Nucleics during this time (2004 to 2007) was comatose; not dead, but not really doing anything either. I started looking through our old lab books to see what I could rescue. Coming across the source code our developers had written I thought that maybe I could make something useful out of it and PeakTrace was born (PeakTrace is a better basecaller that allows scientists to get much more useful DNA sequence data out of the raw instrument files). I started slowly in my spare time and it began selling to customers around the world. Demand continued to grow for PeakTrace (along with other variants and spin-offs like PeakTrace RP and QualTrace) until it reached the point where I thought it was silly for me to continue at the university. I quit (gave up tenure) and went back full-time to Nucleics. We have continued to grow and acquire new customers to the point where in many markets the majority of sanger DNA sequencing being performed uses our software. If you are a scientist and would like to try it yourself you can trial peaktrace here for free.

Lessons

If you have managed to get this far you can see why I think it is crazy to try and run a tech startup in Australia. By doing so you are just making it so much hard for yourself than it needs to be. There are very few real venture capitalist here (i.e. those willing or able to take on real risks) and even fewer angels (lots of devils though). The Australian market is small and you will run into our cultural cringe pretty quickly (Nucleics still only has two Australian customers despite a lot of effort on my behalf). We are a long way from the rest of the world (you will really hate flying after a very short amount of time), and even something as simple as making a phone call to a customer involves staying up past midnight. Probably the most important reason to leave is you miss out on all those little things that happen that you need to know in order to be able to respond dynamically to events. When Nucleics was in its early days I would often learn about critically important details long after we should have because we just weren’t on the ground in the USA and Europe when we needed to be.

Advice

If despite all of these pitfalls you, like me, want keep your startup in Australia then the question becomes when can you stay and when should you go? The answer really depends on the sort of startup (and life) you want to build. Australia has a lot of great things that make living here fantastic, but many of these are not very conducive to running a tech startup. Here is a brief list to consider.

What startups should leave Australia?

  • Those that need lots of any VC funding.
  • Those that aspire to be a unicorn.
  • Those that require “high-touch” sales.
  • Those that are “me-too” – e.g. facebook for cats, uber for x.
  • Those that are “hot” or hype-driven.
  • Those that can only succeed by growing faster than their competition.

What startups can stay in Australia?

  • Those where the founders really want to stay for personal or family reasons.
  • Those that are bootstrapped and don’t need external funding.
  • Those that have a real and unique product that is not just hype.
  • Those where lifestyle is more important to the founders than success in the media.

You might see a bit of a pattern here. Australia is a great place to create what might be called a “traditional” business focused on making something real that generates a profit. If you want to do this then Australia can be fantastic as we have a decent pool of amazingly talented people who can get things done. Australian tech companies like Blackmagic, Fastmail, Paydirt, Aconex and Macropod (to name just a few) have proven it can be done here when there is the will. It won’t be easy and it won’t be fast, but you can make something worthwhile here if you really try. I do still advise you leave if you want to give yourself the greatest chance of success – it really is crazy to stay.

How to complete the W-8BEN-E Form for Australian Companies

Point Piper 1907 Mid
The IRS seems to be over just making the life of Americans a misery and they have decided the whole world should experience their special attention. If you are a foreign business with no presence in the USA, but you have US customers, you need to complete and provide your customers with a copy of the W-8BEN-E Certificate of Status of Beneficial Owner for United States Tax Withholding and Reporting (Entities).

This form is eight long pages of IRSese with such easy to understand terms as “Nonparticipating FFI (including a limited FFI or an FFI related to a Reporting IGA FFI other than a registered deemed-compliant FFI or participating FFI)”. If anyone know what this means please post, because nobody at the IRS seems to know – at least nobody who answers the phones.

When faced with completing this form for the first time it is near impossible to know what you need to fill in and the IRS instructions are as clear as mud. To save other poor Australians the nightmare of completing the W-8BEN-E form here is my step-by-step guide for standard Australian companies (i.e. those owned and run by Australians) of what you need to do.*

*Disclaimer. I am not a USA tax lawyer or accountant! Use this guide as a starting point for knowing what you need to do and always consult a professional. Do not use these instructions if you are a US citizen or have a US company branch.

Edit (2016). The IRS updated their form in 2016 so I have updated the instructions. Amazingly they have made the form even more complicated – there really is no form too complicated that the IRS can’t make it worse.

Edit 2 (2017). Once again the IRS has updated the form in 2017 and so the tread mill continues. I am sure everyone will be surprised to learn it is even more complex.

Edit 3 (2019). The IRS has made the form even more confusing again so I have updated the instructions. Thanks to the IRS for making this post evergreen.

Step 1. Get the W-8BEN-E form
1. You can download the W-8BEN-E from the IRS website. If the form has moved then just google for it – the IRS seems to like to move forms around on their website fairly regularly.
2. Print out the form as it is easier to fill it in by hand and scan.

Step 2. Complete Part I
Question 1. Write your full business name (eg. “xyz pty ltd”)
Question 2. Write “Australia”
Question 3. Leave blank
Question 4. Tick “Corporation”. Don’t tick the “yes” or “no” box for the line “If you entered disregarded entity, partnership, simple trust, or grantor trust above, is the entity a hybrid making a treaty claim? If “Yes” complete Part III.”
Question 5. Tick only “Active NFFE. Complete Part XXV”
Question 6. Write your registered business address in Australia
Question 7. Write your mailing address in Australia. If it is the same as 6. then just write “As Above”.
Question 8. Leave blank
Question 9a. Leave blank
Question 9b. For “Foreign TIN” write in your company’s ABN.
Edit. Technically, your company’s tax file number is the TIN, but some sources suggest that you supply your ABN, not TFN (others say TFN). I am much happier to supply people with my ABN rather than TFN. I suspect in the end it does not matter too much since the ATO has the ability to crossmatch your ABN and TFN – the whole point of this form is for the IRS and ATO to share data on company income.
Question 10. Leave blank.

That is the easy page 1 taken care of! Now to page 2.

Step 2. Complete Part III
Question 14a. Tick the check box and write “Australia”.
Question 14b. Tick the check box “The beneficial owner derives the item (or items) of income for which the treaty benefits are claimed, and, if applicable, meets the requirements of the treaty provision dealing with limitation on benefits. The following are types of limitation on benefits provisions that may be included in an applicable tax treaty (check only one; see instructions):”
On the 14b. sub-question choose: “Company with an item of income that meets active trade or business test”. This is assuming most of your business activity is in Australia.
Question 14c. Leave blank
Question 15. Write “Article 7, Paragraph 1” for the claiming provisions line; “Zero” for the % rate; and “Business Profit” for the type of income line. For the explanation write “Australian entity with no US permanent establishment deriving business profit not subject to withholding tax under the USA-Australian tax treaty. Skip to page 7.
Edit. For non-Australian companies you should be able to find the corresponding article number for your country’s tax treaty with the USA (the treaties are all listed on the IRS website). You will need to read through your tax treaty to find the right article to use (look for the article concerning “business profit”). For example, in the UK-USA tax treaty the article number is the same as Australia’s (Article 7).

Step 3. Complete Part XXV
Question 39. Tick the check box (assuming the three points are true which should be the case if you are a standard Australian company).
Skip to page 8.

Step 4. Complete Part XXX
Sign the form, print your name, and write the date with dashes. Don’t forget to use the crazy USA system of putting the month first.
Tick the box that says that you have the capacity to sign (assuming you do).

Step 5. Scan
Scan the document. To keep the size manageable scan it as a B&W document at 200 dpi and save as a pdf file (it should be under 500 KB). You can then email this when you send invoices to your USA customers. The form is supposed to be valid for 3 years.

/s Now wasn’t that simple! Thank you IRS for making this form so easy and providing such clear and simple to follow instructions /s.

Simple POSIX Semaphore Library for Windows

dandenongs 1889

I had a recent need to control access of one of my programs to a hardware device – basically the hardware can only handle a certain number of simultaneous connections before it starts returning garbage. POSIX semaphores are a really elegant way of handling this as you just create a semaphore and then put a semi_wait call before every critical code section and a sem_post call at the end of the critical code. This way you can control the number of simultaneous calls of the critical code no matter how many parallel processes or threads are running.

The only problem with POSIX semaphores is they are not natively supported on Windows (Windows has a entirely different semaphore system). Since my program is cross-platform I wanted a simple Windows-compatible POSIX semaphore library I could just drop in on my Windows builds and avoid a whole series of #ifdef #else conditionals. I managed to find a full Windows POSIX thread library (libpthread), but it was way more complex than what I needed and it does not build on Windows XP (I unfortunately still need to support Windows XP/2003). I was able to use the library as a starting point for making a very simple POSIX semaphore library. My cut-down library provides a simple drop in replacement for all the POSIX semaphore functions on Windows and just requires the inclusion of the header file in any project you might want to use it in. It is not identical to semaphores on linux, but it does the job.

You can download the simple windows semaphore library from my github repository. I hope it is of help for someone else.