25steps.asp -- http://shrinkster.com/l8y
- Register Domain
- until you've secured a domain name, don't commit to a product name
- don't expect to secure the perfect name
- register the product name, not the company name
- Reliable hosting
- don't host it yourself -- pay for hosting
- check that the host will allow hosting of executables and zips
- allowed to have a professional site
- more or less claims 'unlimited downloads'
- website design
- Quick and Clean
- in an instant: should be able to find download and screenshots
- for professional Look and feel: templates save a lot of time
- even if you start with static html, work out what server-side
techonology you'll use later and use the right file extension for
that from the start (e.g. php, aspx) to avoid 404 errors later
- Basic Website content
- Plan all the pages you might want -- then cross some out
- Write a shitty first draft -- get friends to help polish it
- If you use a CMS then use a free one: but the simpler the
better, less configuration
- install traffic monitoring on your site
- free package from your webhost -- or use google analystics,
or install another one
- How much traffic?
- where from?
- what search terms?
- how many downloads?
- ratio of free to professional?
- conversion ratio: purchases from professional downloads
- create forums, encourage feedback
- free and high quality options like google groups or yahoo groups
- downside: their branding, and advertisements, possibly from
your competitors.
- host a forum on your site -- e.g. community server, phpBB
- You want it as open as possible, but without spam
- Keep it alive
- maintain a FAQ
- no trick to it
- avoid marketing faq
- in the early days it is okay to put questions that haven't
yet been asked 'frequently'
- get the best screenshots you can
- on windows, use the best theme you can, and the latest OS.
- don't make people hunt for screenshots
- put a thumbnail or two on the front page
- have those thumbnails lead to more pictures
- Configure email for domain
- setup some email accounts -- e.g. support, sales, admin, webmaster
- forward them to your regular email
- get payment account
- we use paypal -- it works for us.
- allow payment from your website
- don't build a shopping cart
- don't read all of the developer documentation -- most of it
is for more complicated situations
- start by working out how to implement a donation button
- for a single product -- it's only a few lines more
complicated than that
- create a PAD file -- portable application description
- register at download sites
- download.com etc.
- tell them where your PAD file is.
- strategy: separate "free" from "professional" products
- Free version: compelling, worth downloading and using
- Not nagware, not so feature starved as to be useless
- Not adware, not lower quality just because it's free
- Professional version: builds upon the free
version -- a major
step up
- Product must be based on a deep enough idea.
- get a suitable end user license agreement (EULA) -- infact get two!
- Final check is with a lawyer -- but build the first drafts
yourself
- People buy a license to use the software -- not the software
itself
- Be specific! is it per user? per processor? per connection?
- Talk about risks
- Disclaim to the fullest extent
- Consult web sources
- Compare to others
- Trial period versus post-payment -- explain this
in your EULA
- auto update strategy
- simplest solution: a button that sends the user to a page that tell them the last version.
- next step up -- a webservice that tells the application what version is the latest
- next step up -- a shim that lets you download, unzip and run the new version
- license activation webservice/website
- enter a license key -- check it against a webservice
- webservice looks in a database to ensure license is legitimate. marks it as used.
- plus some secret magic stuff
- get a license management database
- a place to view, create, renew cancel and send licenses
- we built a custom asp.net application for timesnapper -- can handle many more products
- build a proper installer
- this is a common difference between free and professional
software: ease of install/uninstall
- don't install into program files\company name\product name --
just go program files\product name
- inno setup l8o, wix (l8p) and nullsoft scriptable install system NSIS -- l8n
- LUA: any updated files go into
Environment.SpecialFolder.ApplicationData --(which maps to
C:\Documents and Settings\[userName]\Application Data\[Product Name] )
*NOT* just into program files\[Product Name]
- obfuscate your assemblies
- feel like a real bastard obfuscating the code. but .net has
no protection on its own -- so without this it's just too easy to
crack the licensing. lutz roeder's reflector
- dotfuscator -- community or professional editions
- salamander, xenocode,
- http://shrinkster.com/l8v "How to
select an obfusctor" -- guide from Mike Gunderloy and Xtras.com
- automate your build+release strategy
- procedure includes:
- obfuscation
- updating the online version check
- uploading to the website
- putting out release notes
- complex task -- yet you want it as automatic as possible
- SO start with a check list.
- free up enough time/resources for dealing with support/feedback
- treat customers of the free software as full cstomers
- watch for recurrent problems: fix bugs asap, identify usability opportunities
- and keep the FAQ updated
- Shiny, Usable, Helpful
- Aestethics -- purely to make it more pleasing to the eye -- is worthwhile
- avoid visual clutter
- choose the right control
- the basics: consistency, repetition, alignment, proximity -- http://shrinkster.com/l8l
- Usability: dogfood isn't enough
- follow standards
- Watch and listen to users/people
- Units of delight
- plan and enact your promotional strategy
- better to be an article than an advertisement
- featured on blogs, in magazines
- strategic alignment -- what existing business do you complement?
- Do it all again
- don't stop at one product... you've got more ideas
- revise and improve
- share what you've learnt
Other things...
- work/life balance
- choose a price
- incorporatize
- icon/logo
- private beta testing
- bug reporting
- platform choice
- future release plans [vision]
- choose your competitors
- globalize and localize
- focus
- do you need a partner?
- what idea do you choose?
- anxiety, procrastination, self-doubt
http://timesnapper.com
http://shrinkster.com/l8c
http://secretGeek.net
http://shrinkster.com/l8d
http://www.ericsink.com/bos/Micro_ISV.html
http://shrinkster.com/l8e
http://www.amazon.com/Micro-ISV-Vision-Reality-Bob-Walsh/dp/1590596013
http://shrinkster.com/l8f
http://discuss.joelonsoftware.com/?biz
http://shrinkster.com/l8g
http://www.joelonsoftware.com/articles/CamelsandRubberDuckies.html
http://shrinkster.com/l8h
http://www.ericsink.com/bos/Product_Pricing.html
http://shrinkster.com/l8i
http://www.ericsink.com/laws/Immutable_Laws_Marketing.html
http://shrinkster.com/l8j
Be Careful Where You Build
http://www.ericsink.com/bos/Platforms.html
http://shrinkster.com/l8k
"the non designers design book"
http://www.amazon.com/exec/obidos/tg/detail/-/0321193857/qid=1092892051/sr=1-3?tag2=secretgeek-20
http://shrinkster.com/l8l
http://secretgeek.net/logo_rules.asp
http://shrinkster.com/l8m
nullsoft nsis
http://shrinkster.com/l8n
inno setup
http://www.jrsoftware.org/isinfo.php
http://shrinkster.com/l8o
wix installer system
http://shrinkster.com/l8p
Portable Application Description
http://www.asp-shareware.org/pad
http://shrinkster.com/l8q
PAD Gen<
http://www.padgen.org/
http://shrinkster.com/l8r
Rules to Better Google Rankings
http://www.ssw.com.au/SSW/Standards/Rules/RulesToBetterGoogleRankings.aspx
http://shrinkster.com/l8s
Rules to Better Websites
http://www.ssw.com.au/ssw/Standards/Rules/RulesToBetterWebsitesTuningAndMaintenance.aspx
http://shrinkster.com/l8t
Rules to Better Windows Forms
http://www.ssw.com.au/ssw/Standards/Rules/RulesToBetterWindowsForms.aspx
http://shrinkster.com/l8u