Feb 08

Future of Web Apps – Ryan Carson

How to Build an Enterprise Web App on a Budget
Ryan Carson – DropSend

Definitely the most practicaal – reall figures and good advice.

Why it’s important

What’s the big deal? you don;t have to be big anymore…this has changed the landscape

Why now – broadband; people are comformatble with web apps. They provide ‘common aps’ such as mail; hardware is cheap; open source is cheap. Does not understand why you spoend money on a .Net app – why spend the money

Whats enterprise: mass market >1000 users

On a budget??? Under £30k

Dropsend – used for sending and storing large files – without having to explain FTP. 9500 users in 2 months; 5 servers; desktops apps with API; PHP. AJAX, MySQL

The most improtant thing: ensure your idea is financially viable; use common sense; be cautious about projections; are you still in business at 65%??? Aim for profit – not aquisition; forget about the bubble – if your stuff is good it’ll work

Budget: Diff budgets for diff apps;

Branding and UI: £5000 (with friends discount!)
Development: £8500 (Plum Digital Media) – offered some equity to reduce costs
Desktops apps: £2750
XHTML/CSS: £1600
Hardware: £500
Hosting/Maintenance £800/month – for 5 boxes – maintenance as well. can afford outages. a 99.9% uptime cost is far greater. Need to know what your company needs
Legal: £2630
Accounting: £500
Misc: £1950
Trademark: £250 (do it before you finish branding – you may not get your preference)
Merchant account: £200
Payment Processor: £500

Total: £25,680
Spread out over a long time, make sure you plug into cash flow

They had a size business – the Carson Workshops

The Reality: took them about a year to save the cash; use the time to learn and work at becoming mature as a company

Building a Team on the Budget: no money, so how to build a team? Don’t go to rockstarts, go for quiet talent; offer a small percentage of equity (2-5%); ask people for recommendations; outsource – but India did not work for them.

Scaleability on a budget: buy just enough hardware to laucnh (basecamp launched on 1 server). Don;t go overboard – wait to see the success; build it so it scales; plan but don’t obsess;

How to keep it cheap: don’t spend money unless you have to; No stationery – they wasted £1000; don’t do new shiny machines; no luxuries; no frou-frou features; before you spend £25 check yourself

How to keep it cheap: make deals; give a small % away; barter services or ads; use IM/Skype; do as much as possible yourself – wireframing – wireframing-marketing-bookkeeping-copywriting; get friends to help – usability testing; shop around – the first hosting cost was £12k/month

Pessimism has its place: you’ll go 10% over budget, three months over schedule, plan and ensure in cashflow plans

lawyers are expensive! always, every single time. Terms of Service – £1000; contracts for freelancers – £800; Privacy Policy – £15; (clickbox can give some cheap legal docs); Barter! take the free consultations

Cheap software is your friend: Project Management = basecamp; Bugtracker = Trac; Meetings = Skype and AIM; Version Control = Subversion; LAMP

Cheap Hardware: cheap box for dev £200

Marketing – don’t spend money: Blogs; word of mouth; viral; writing – articles in magazines;

VC? You may need it: if you need to expand quickly; if you canpt wait to save the cash; you need a really good reason to go that way – why give up 25-50%

Feb 08

Future of Web Apps – Shaun Inman

Shaun Inman : 10 Reasons Why You Need to Build an API

still no spelling – it may be tidied later

mint.com

What is an API: a documented means of interacting from one application to another. A successful one obscures the storage format and the retrieval process

Don’t change it – people rely on and you’ll annoy them

API = hole in the wall (ATM) – an interface with your bank
Who has an API – ‘everyone’

so why API???

1. Increase brand awareness. THe user cares what the API can be used for. Lots of people use it gives lots of brand exposure
2. Allows user to own their own data
3. Builds goodwill with developers – saves people having to do the same thing over and over
4. Perfect excuse for a community
5. Solving prgramming problems with an API in mind can improve code quality – clarify the mental model
6. Simpify the reuse of data
7. Allows others to extend the functionality of your application
8. Alternate input mechanismes – eg desktop software
9. Unanticipated applications for your data
10.Turn your programme into a platform. People build tools based on your API and it becomes a necessity.

Feb 08

Future of Web Apps – Ruby on Rails

David Heinemeier Hansson – Happy Programming with Ruby on Rails.

Still my typing sucks!

Introducing a Silver bullet…MOTIVATION

motivation has a stronger influence on productivity than any other factor (this falls into the No Shit Sherlock statements…but it’s too easily forgotten)

Motivation comes from happiness. SO you need to optimise your tools for happiness.

Beautiful code makes David happy

Your application is not a unique snowflake. most of the time you are not special. most of the work revolves around the same details as everyone else. so Ruby on Rails tries to optimise the mundane, keeping it standard – allowing the special stuff to be outside and focused on.

Convention over configuration: keep things the same where you can..

and all the note taking stops as David goes through some code….

definitely getting lost – mainly about assumptions beinbg used for conventions so you reduce what you need to write in code..and let the code framework make assumptions.

‘Flexibility is overated’…flexibility can reduce power.

‘Constraints are liberating’ – make things easier. follow people and then build on it.

Most developers find themselves with 2 voices – devil or angel. Environment influences the size of the voice. The devil says do it the easy way..you can always come back. The angel suggests you do the right thing..test, convention etc.

‘PHP is the devil’ – its easier to do the hacks and to do sloppy stuff. It’s easier to be sloppy under pressure. It bites you later.

…back to code…back to no note taking…

Why beautiful code: you feel the hurt if don’t use, you appreciate agile, you appreciate test; you can skip the vendor;

www.rubyonrails.org

Feb 08

Future of Web Apps – Tom Coates

Tom Coates: Designing Web 2.0-native Products for Fun and Profit

Update: The Presentation can be found on plasticbag.org – which sort of makes these notes redundant.

This was one of the most enjoyable presentations of the day. Despite Tom commenting on the URC channel through the previous 2 that all his ideas had gone, the concepts were presented in a fun and confident manner.

Live Notes: (which ‘;ve now tidied up a little)

the key characteristic of web2.0: 2 things – rounded corners and graded fills
cool font! – it’s Alega light as he states at the end (running joke of the day…who had what font)

What is the web changing into?

Web2.0: is a buzzword, a conference, a marketing challenge, a new bubble – they attempt to apply order to chaos – we lable things. We want to structure it. The web is chaos. Lots of layers in what is happening. Tech/business models/design/behaviour. We2.0 is not big enough – the church is too broad and the term will fragment.

We are moving from web pages linked to data connected by APIs It was siloed, CMS, published pages; Links, linearish….

to ‘a huge accumulation of testicles’ – the data is aggregated and joined, not the pages. data sources, services exploring and manipulating and ways that users can connect them together. to mashups – to a web of data. Eg Astronewsology – what happened to people by starsigns..and what should have happened based on their horoscopes!! (this was a mashup created by Tom of news and horoscope information) So by adding data together, they enhance each other. You get a network effect.

Every service you create can build on top of all the previous services..and the new service enhances everything that is already out there. (on the shoulders of giants….)

Consequences: massive creative possibilities, increased innovation, more competition, increased componentised and specialised services

Money to be made?????: APIs to drive people to stuff; development can be done by others – more attractive with less centralised development. Syndicated content as a platform. Turn the API into pay for services – thinks there will be an explosion in this.

If you don’t open – you’ll end up in a backwater and things will just go on around you. Open and do things faster, betterm simpler.

So what to build?

So how can I add value to the aggregate web? – Data, service to use and connection – 3 areas of focus

Data sources are in a land grab race…info and data is key to success. Owning and using data is core service.

Architectural Principles

Recommended reading – Matt Biddulph: The application of weblike design to data

Components: sources, representations, ids, distribution, interaction and rights framework

1. Look to add value to aggregate data – combine, recut, add things
2. Build for users, developers and machines. People who just want to use, who need a service; people who design and develop, how do you get them intererested; keep it consistent so machines can read
3. Start design with data and not with pages. Get data right..they feed on each other. Data right allows expansion. Design data in web like ways that can be manifested in pages
4. Identify first order objects and make them addressable. What are the core things that people will reference. like: events, people, programmes,
5. use readable, reliable and hackable URLS. be permament, 1-1 relationship with concepts; use heirarchies if ness, do no reflect the underlying technology; reflect strcuture of data, be human readable, be – or expose-identifiers (but this conflicts with previous presenters who cautioned against too much identifiers). Good URLS are beautiful and a mark of design quality! The URL love was so enthusiastic that it inspired Patrick to make this picture!
6. Correlate with external identifier schemes…or coin a new standard.
7. Build list views and batch manipulation interfaces. Three core types of pages first order (a flickr photo) slice of data to navigate btw core – photos from contacts – interface for batch manipulation – the organising pages on Flickr
8. Create parallel data services using standards All the views can be queried via APIS. eg microformats, XML, RSS, etc
9. Make your data as discoverable as possible

Feb 08

Future of Web Apps: Flickr

Cal Henderson – Flickr

10 reasons to love web2.0

Flickr – Awsome
Web2.0 – kinda awesome
Birthday – in SanFran on Friday. they’re 2

Passionate users are important…they care about building Flickr – gets people to like it. They need to get people to care about it by caring themselves.

Difference btw what users want and what they need. Watch the doing not jus the saying. Undersntad the bahaviour

Collaboration: the first incarnation was an online game…Flickr was built on the same tech, with social network idea was there There’s incentive to get your friends to sign up to share. Collaborative tagging means that you can add your tags to friends photos. Let’s the organsied people in your network gives you value (with less effort)

Aggregation: shows the latest; combines things; latst photos from your contacts. You can slice by tags, by geotag, interestingness etc. Create different views

Open APIS: we always mean web services APIs. Created APIs for them selves and then let other people to use it. Otehr people can build your interfaces…allows people to build great aps around FLickr etc. Increases creativity. Allows cool aps. Allows the edge cases. If you don’t provide the API, people are going to do it anyway – but in a way that hurts you more

Clean URLS: expose the logical structure? USe Mod_Rewrite in apache. Does not have to point to anythng on a server…the server can translate from URL to a file name – keep things simple. Make them guessable. Design in from the beginning. You may need to scale – how do you do it if URLS designed badly

AJAX: worst name for a technology ever. It could really just be called A. Not really about XML, or JS, it’s about A in any format. Need a strong API to leverage this in the best way. USed to streamline the interactions they had on Flickr – reducing page reloads. Keeps context etc.

Unicode: (features a picture of the Rosetta stone). Internationlisation comes first, localisation comes later. Think glbal from the beginning.

Desktop Integration: RSS etc. Different desktop apps work with Flickr, eg to upload photos. Use APIs, get round things that suck on web Browser and otehr platform integrations can also help, improve the user experience. Integrate with email – commonest app for people to use. Easy mechanism for people to use. On mobile as well. (‘Flickr private machnaism is stupid and they should not have had it’) Use the esixitng structures

Mobile: there are some standards and sometimes people use them. The browsing experience will always be poor – too small a screen. It;s not just a case of re-presenting the content -it’s thinking about how to present the content in a different way.

Open data: Import and export.let people leave – give access for people to control their data and get it out. Not just the photos they’ve uploaded, but all the metadata that has been added to the photo on the web. ANd people have built on this as well to improve the service.

Open Content: some companies ‘own’ the data you upload. Flickr states that it still belongs to the user. They can control the usage. (well, try to) CC Licence being pushed.

http://iamcal.com/talks

Feb 08

Future of Web Apps – Delicious Things we’ve learnt

I’m sitting here with about 800 other people at the Carson Workshops summit on the Future of Web Apps. This will be a bad attempt to take notes – unedited or spellchcked

Joshua Schachter = things we’ve learnt.

Browsers – browser compatibility issues drives you nuts.
Header issues cause pain.

Scaling: don’t do it! Whatever you predict is not going to be the real problem. Design databases – really understand the ins and outs..set up a monitoring service. Use caching as much as possible – minimise hitting the database.

Abuse: wait to see what breaks before you fix it. Use a proxy – manage the resources. Figure out some kind of throttling

APIs..build. Make them easy to get into and out of – more people will use them

Identifiers: don’t expose internal identifier, expecially if sequential or conputatable – people will scrape the database. Lots of hits – have to build in defence mechansims.

Features: what you leave out is as important as waht you leave in. Don;t try and be all things within a app. Try and build features that people use, rather than what they ask for. Understand the why…what’s the real problem.

RSS: put them everywhere they can be – its a default way of getting info. Really need to understand the headers/caches etc to reduce hits to the database. RSS traffic is the largest on delicious

UR:S: make sure they follow the use of the site. They’ll be spread around, make them easily sharable.

Surprises: look for interesting behaviour – users can surprise you, do you amplify, ignore or damp user behaviour

Passion: solve a problem that you really have. Delicious was built to solve the problem of finding things in his link file

Release: get things out there – everyday you don;t have something in the world, yoou’re not picking up users and followers, you;re not picking the users brains. Get it out soon

Attention: give it, populise things. Works out well if population is small and biased in the saem way. Increase the population the bias drifts – and the overlal ‘popular’ is less popular to more people.

Spam: the opposite of attention. Undersntad what you are buildingo reduce attracting the spammers. Reduce the feedback to spammers – keeop them guessing about what is happening.

Tags: useful for recall, OK for discovery, awful at distribution. Not all metadata is tags. Don’t make it difficult. Beware librarians – ‘official’ tags – set heirachies. Impossible in a social network.

Motivation: why should people go there – what does it do for me. Expect the user to be selfish and build it for them. There’s no user 2 if user 1 does not have their needs met. (this has to be key for all technologies – why does it help me). If people are motivated to use it, that woill build evagelism.

Effort: make sure it’s in the right place. Targetthe effort.

Measurement: watch your system carefully. Intuition is guesswork backed by numbers. Look at everything. Measure behaviour rather than claims.

Testing – user testing is ‘pretty important’ make sure what happens with a user is what you expect. Ensure all the eam can watch the testing – get everyone to believe what is being said. Let people ‘play’ don’t set it up too formally.
Language: you have to speak the users languages. Bookmarks – if you used NEtscape or FF. IE it’s favourites. See what your audience use

Registration: don;t make users register before they can see your site. give them as much access as possible to see what the site does. registration is a big barrier..entice first. Show rather than tell.

Design Grammar: work out the best UI – understand how people use sites now and keep something similar. Don;t surprise people and do something diffiernet – understnad what wnet before

Morals – develop a sense of morals. It’s the users data…don’t abuse it. Dat is really purged from system and not kept in a log.

Infection: enable evangelism. Invade every communication stream you can find. Look for viral vectors.

Communities: understand community dynamics – but you can’t necessarily set up to drive a community. The community can be emergent. Many community dynamics suck…

FONT: the IRC channel seemed to be enthalled by the font in this presentation..this feels like a running theme today

Feb 08

Win a year’s commute

Passenger Focus, the ‘independent rail consumer watchdog’ is running a competition where the prize is a annual season ticket plus the honour of doing a fortnightly blog for their website, talking about the travelling experience.

I’m not sure at all I’d like to be called a ‘consumer’ of rail services – I prefer passenger or customer. And the competition appears to be asking for a certain kind of person – the ones who will blog about the issues: “We need your views so that we can campaign for a better railway.” I gave a positive resons for entering..but I wonder if the winners will have a negative bias.

Feb 07

Ultimate Flight

Last year, Steve Fossett made the first solo non-stop flight around the world. This year, he tries to go one better by attempting the longest flight ever made – targetting 26,000 miles, 3000 miles more than last year. The plane carries 18,000 lbs of fuel and needs 10,000 ft to take off, so it’s using the NASA runway at the Kennedy Space Centre. You can follow progress on the the attempts webpage; alternatively, download trackers for your mobile from Keni for that always connected feeling.

Feb 07

Gervais Podcast Record

As reported in the Guardian, Ricky Gervais’s podcast (as hosted by the Guardian) is hitting records when it comes to downloads. Since starting in December, there have been 2.9million downloads, an average of 294,755 per episode. WOnder what the hosting/bandwidth charge is?

Feb 06

New York Dining

I’m trying to choose a restaurant in New York for a visit at the end of the month for an end of project party (assuming we get the website live by then!). Searching for ‘New york restaurant’ gives me 112 million results on google and even the organic results look like advertisment driven pages. This is definitely an area where personal recommendation and word of mouth is a far easier way of getting to a choice…time to try and narrow things down.

Feb 06

Superbowl Ads

I’ve probably watched more TV ads today than I normally do in a week. Google and AOL both have a collection of ads that were shown in the US showing of the Superbowl last night. I’ve seen lots of build-up for what appears to be the prime placement for TV ads every year, including releases of ‘banned ads’. There’s some nice ads in that selection – I particularly like the Bud Streaker 😉

There’s nothing similar that I can think of in the UK for a whole load of ads grouped together. THere’s press about individual ads being launched (the ad break in Coronation St appears to be favourite) but nothing that can compare on such a scale.

Feb 06

Hi Calories

The Metro today features a high calory desert that is getting food campaigners up in arms – despite first appearing on the BBC food site over 2 years ago. It may be tied into the news that chocolate companies are going to increase the amount of information on packs to ensure we are educated about the damage we are going to do to a diet. Which means if you try and cook the Snickers Pie (I still mentally call these Marathons when I see the package) you’ll be able to tell what the 1250 calories per slice are doing to you. The pie is made up of mascarpone, soft cheese, caster sugar, eggs and 5 Snickers bars – all mixed together and just melted. A mix that may be just too much for me.

But it could be the perfect thing to cook for my sister as a treat. She’s just had a baby boy, the first male born into the direct family for 60 years – so something to celebrate. I have 2 sisters, 2 aunts, 2 nieces and 5 female cousins.

Feb 02

Wiki Wednesday

Last night I wandered along to Wiki Wednesday, where Ross dropped in on his way back from Helsinki. This was a focused gathering, so I think most people had a chance to to talk to everyone there. There’s definitely a group of people I keep bumping into at these type of sessions, like Sarah and Ian. Some new people to me were Tom and Julian . One of the topics was the stabilisation and productionisation of wiki software – making the installation a lot easier and making the use of them far more WYSIWYG. I’ve shown wikis to people at work who just ‘use’ computers, use Word etc and there is always a reluctance to edit, to attempt to use the required syntax to do formatting. If that can be made a lot simpler, then some of the behavioural change will be easier. Another set of conversations were about geting people to use systems like wikis internally, what sort of information could you seed the idea with. A favourite was definitely the lunchtime menus – one story was about the use of a webcam so that people could see the queue to get food. Another favourite would be information about benefit policies. These strategies are targeted at company wide initiatives, where the whole intranet would change, not at providing information solutions for smaller teams. However, whatever the trigger, the technology is often the easy part – finding ways to provide a solution that people will believe will make their lives better enough to get them to use it is always the hard part.

Feb 01

IE7

I was going to download the IE7 Beta and take a look at that – I’m pretty sure it’s going to impact a number of the websites I support and wanted to get an early look at any issues. But as it only runs on XP, can’t test it on this machine. Time to go find another.

Feb 01

Corporate Policies

One of the letters on my doormat when I got back last week was from the company, announcing the relaunch of its wellbeing policies, along with a telecall centre to provide you with anomynous support for all types of problems. The letter had obviously gone through legal at some point, as there was a wonderful paragraph reminding us that we were contractually bound to follow all of the policies and that action could be taken if we did not. So if someone has to take time off because of stress, it’ll be because we did not follow the policies?

Feb 01

Four Things

Where’s the time gone – didn’t think it’s been a week since I posted. I’ve been tagged twice (by Lloyd and Andrew) so here’s a recent meme…

Four jobs I’ve had:

  • Bartender
  • Insect Counter in an Entomology lab
  • Warehouse packer
  • Children’s Camp counselor

(all of these were before I started working for the current compnay a long time ago…since then it’s been project management all the way)

Four movies I can watch over and over:

  • Raiders of the Lost Ark
  • High Society
  • Casablanca
  • Wizard of Oz

Four places I’ve lived (and the meme mutates..as it started off as liked)

Four TV shows I love:

  • CSI (all flavours)
  • Dr Who
  • Battlesatr Galactica (new)
  • Buffy

Four places I’ve been on holiday

  • Barbados
  • Australia
  • Gran Canaria
  • Barcelona

Four of my favorite dishes:

  • Fillet steak
  • Chicken Korma as cooked by me
  • Moules marinere
  • chocolate

Four sites I visit daily (dull):

Four places I would rather be right now:

  • Barbados
  • asleep
  • underwater scuba-diving
  • being pampered in a spa

Four bloggers I am tagging (you’re it!):