Categories
Innovation

Startup: a hypothetical scenario

Picture yourself in the following situation. You’ve come up with what you think is a cool idea for a so-called web 2.0 site. Furthermore, you’ve managed to convince some VC types to invest some (pre-)seed funding – enough to develop a public beta. You developed a quick and dirty proof-of-concept to show the VCs, but now it has to be thrown away. You have to start development on the real thing from scratch.

The question is, what technologies, programming languages, tools and platforms are you going to use to implement your idea? Language-wise, do you go for Python, Java, PHP, Ruby, or something else? If you take the PHP route, how do you ensure maintainability in the long term? If decide on Java, do you use JSP, Velocity or Freemarker? Would you use Struts or Spring? Do you need any of these frameworks at all? Do you run on Linux, Free BSD, Windows or Mac OS X Server? Why?

To make this question at least partly answerable, imagine for the moment we’re just considering the presentation tier, and not any of the back end magic. Also imagine that what you’re developing is similar to one of today’s social networking sites (Facebook, Bebo, MySpace or something), and that visualisations (e.g., of directed graphs) might need to be generated dynamically from data in the back end. You can assume that the beta version will have a small number of types of dynamically generated pages (less than 10, say) but later versions will end up with many more.

Answers along the lines of “It’s much of a muchness, so I would choose X, Y and Z because they’re what I know”, “I’d choose X, Y and Z because the newly graduated computer science students I’d have to hire are most likely to be comfortable with those” and “X, Y and Z are nice but too expensive for my startup, so I’d choose A, B and C instead” are completely acceptable.

I’ve already got some great input from my closest friends (at least the programmers among them), but I’d like to get some responses from a wider audience. I’m hoping some ex-DSTC engineers/researchers might have an opinion on this; you don’t need to have worked at a startup to give useful feedback!

I’m asking this question out of pure curiosity, nothing more, and I have my own feelings on this (represented by the sample answers above). Please leave your answer as a comment below.

Categories
Random observations

Python

Newsflash: Python would be okay if whitespace wasn’t meaningful beyond separating tokens. List comprehensions are kind of nice.

Categories
Innovation

Death by bigness

Big companies will slowly suck the life out of you. That’s one way of summarising Paul Graham‘s latest essay. To maximise your freedom, he says, join a start-up or start one yourself. It’s a theory that I find very appealing.

Categories
Random observations

Gary Busey: bizarre

This is bizarre. Ryan Seacrest of KIIS FM and E! was doing an interview of Jennifer Garner and Laura Linney at the Oscars when Gary Busey interrupted the interview and kissed Garner on the neck. The next day, Busey calls Seacrest on his radio show and, well, I’m not going to try to explain it. Just listen to it. Watch the Oscars incident first…

… then visit this site and click the first “play” button on the right.

Credit to the Breakfast program on Triple J for bringing this to my attention a few weeks back.

Categories
Random observations

The Book Depository

Karen came across a fantastic online book store called The Book Depository. Its prices are highly competitive. But the best part is that they offer free shipping worldwide. We’ve already ordered five books from them: That’s Not My Puppy; That’s Not My Lion; Dear Zoo; The Art of the Start; and Programming Collective Intelligence. They arrived separately, but all within a week, in well padded packaging. One word of caution: be sure to visit the right web site. It’s http://www.bookdepository.co.uk/, NOT http://www.thebookdepository.co.uk/.

Categories
Eco-philo-pol

A contrarian view on climate change

I’ve put this here, not because I agree with it, but because this kind of thing frequently goes unreported by the mainstream media. To me, this is worthy news, even if it’s not particularly good science.

Manhattan Declaration on Climate Change

“Global warming” is not a global crisis

We, the scientists and researchers in climate and related fields, economists, policymakers, and business leaders, assembled at Times Square, New York City, participating in the 2008 International Conference on Climate Change,

Resolving that scientific questions should be evaluated solely by the scientific method;

Affirming that global climate has always changed and always will, independent of the actions of humans, and that carbon dioxide (CO2) is not a pollutant but rather a necessity for all life;

Recognising that the causes and extent of recently observed climatic change are the subject of intense debates in the climate science community and that oft-repeated assertions of a supposed ‘consensus’ among climate experts are false;

Affirming that attempts by governments to legislate costly regulations on industry and individual citizens to encourage CO2 emission reduction will slow development while having no appreciable impact on the future trajectory of global climate change. Such policies will markedly diminish future prosperity and so reduce the ability of societies to adapt to inevitable climate change, thereby increasing, not decreasing, human suffering;

Noting that warmer weather is generally less harmful to life on Earth than colder:

Hereby declare:

That current plans to restrict anthropogenic CO2 emissions are a dangerous misallocation of intellectual capital and resources that should be dedicated to solving humanity’s real and serious problems.

That there is no convincing evidence that CO2 emissions from modern industrial activity has in the past, is now, or will in the future cause catastrophic climate change.

That attempts by governments to inflict taxes and costly regulations on industry and individual citizens with the aim of reducing emissions of CO2 will pointlessly curtail the prosperity of the West and progress of developing nations without affecting climate.

That adaptation as needed is massively more cost-effective than any attempted mitigation and that a focus on such mitigation will divert the attention and resources of governments away from addressing the real problems of their peoples.

That human-caused climate change is not a global crisis.

Now, therefore, we recommend —

That world leaders reject the views expressed by the United Nations Intergovernmental Panel on Climate Change as well as popular, but misguided works such as “An Inconvenient Truth.”

That all taxes, regulations, and other interventions intended to reduce emissions of CO2 be abandoned forthwith.

Agreed at New York, 4 March 2008

My note: The International Conference on Climate Change is sponsored by the Heartland Institute, which is a libertarian think tank, and may be partly funded by oil companies. The conference was attended by over 500 people.

Categories
Random observations

Dressing for work

Ricky fashionProceed with caution: Ricky writes about fashion!

Lately I’ve noticed that I tend to dress differently for work depending on what I’ve got on my agenda for the day. Knowing that I’ve got something particular to do on a particular day is an improvement on the past for a start, and I put this partly down to GTD. Anyway, I seem to dress very casually (sometimes shorts and sandals) when I’ve got coding to do, colourfully when there’s an internal meeting to attend (e.g., a brainstorming session) or when I’ve got artsy/communications type stuff to do, and a bit more formally when I’ve got meetings with external parties. Dressing in a particular way seems to help me to get into the right frame of mind for the task at hand. This is a change from university days when shorts and sandals were the norm.

Today I’m wearing my stripy purple shirt with the sleeves rolled up and Hard Yakka drill trousers: a compromise given I started the day with a staff meeting and finished it in the coding trenches.

Categories
Random observations

Unit testing

Okay, I have something to confess: my record on using testing frameworks to debug software is not good. In fact, my record might show that pretty much all the testing I’ve done in the past has been conducted on an ad hoc basis, using a combination of debugger and strategically placed “print” statements. The only time I can remember having used a proper testing framework with repeatable tests was at Sun Labs as an intern, and that was because it was already set up for me. Perhaps it is common for a researcher to have shoddy testing procedures in place – I don’t know. All I know is that mine have been bad.

JUnit in EclipseFor the first time, I’m using the JUnit framework to conduct repeatable tests, and I’m doing this from within the Eclipse IDE. On the first day of use, it’s already paid dividends, quickly honing in on problems in my code. Running JUnit in combo with the debugger has proved especially useful. The only reason I decided to look into testing frameworks was because I’ll probably be handing this code over to someone else to work on soon, and that provided an incentive to be a bit professional about the way I’m doing my coding work. I should mention that it took absolutely no time at all to set up my environment, though it can take a little bit of time to get each unit test just right.

Of course, none of this will come as any surprise to many of the readers of this weblog (i.e., that researchers might have questionable software engineering practices and that repeatable tests are good).

Categories
Random observations

Ricky 1, go card 0

go card
So I bought a Translink go card yesterday. Up to now I’d been using paper weekly tickets, but because I work at home on Wednesdays, this wasn’t the most cost-effective solution. 10-trip savers would have been the best option, except that I sometimes catch the train. So go card it is. My first experience with the go card was good for me, but not so good for Translink: the card readers on the bus were not operational. Free ride. I love the go card.