Page 1 of 2
How to sell a function??
Posted: Tue Feb 13, 2007 12:55 pm
by nathanr
Hi Guys,
I'm very aware of the no advertising thing, and I relaly don't want to advertise ehre, I need some help from you lot!
It's a simple one, I've developed 2 short functions that basically make a datestamp, nto a time stamp, this deals with dates only, and not your normal 20070213 style. function 1 turns any date into a datestamp, integer value between 1 and several hundred thousand, and function 2 reverses it, both functions are based on a comlicated equation I "invented" that handle dates in the gregorian calender including leap years etc and the valid date range is from 1.1.1 through to 12.31.32767, (yes the year 1ad through 32767ad).
The functions could be used in any language and I reckon (after several years as a senior dev) very useful for use in any language, especially for date storage.
How do I sell them and where, i mean this is hardly "another cms for $30".. any ideas, help, pointers in the right direction?
Perhaps it would be best to target some major software companies? or has this already done and I've just missed it

I have trawled the net but to no avail
comments.. help..?
Posted: Tue Feb 13, 2007 1:07 pm
by Kieran Huggins
IMO, you'd be better off to put it on your site for free and use it as self-promotion. That's likely a lot more valuable than trying to "sell" a function to a bunch of D-I-Y programmer types.
Posted: Tue Feb 13, 2007 1:11 pm
by Luke
yea I've never heard of anybody "selling a function" regardless of its awesomeness. I agree with Kieran here.
Posted: Tue Feb 13, 2007 1:21 pm
by nathanr
In many ways I agree with you both, and this could lead me into a big debate here.. I have many functions and even more "coding techniques" I've developed for PHP and javascript, I could use them all as self promotion, I could keep them to myself and think harr as other people continually ask the same questions over and over whilst I have the solutions or I could just post them all, or the majority of them all over the place with a comment including "author"
Does self promotion work? for example does the guy from quirksmode actually make more money since he's done just this, or does he simply get his code used everywhere, his site checked regularly, invited to speak at numerous time consuming conferences and still make no more money.
there's always have this code for free and "donate" options.. does anybody have any experience of donation based projects, can a single developer really hold one down without simply devoting his life to his gpl projects?
I think I may just make another discussion here about all these things, I have loads of questions I'd love to here opinions on.
Back to this subject, I know it has worth, and great use, and would also make an interoperable integer date storage method that any system or language could use, is there no worth to this at all? I know there is but I can't see just who would want to pay for it! or would they :S
<confused>
Posted: Tue Feb 13, 2007 1:29 pm
by Luke
Does self promotion work? for example does the guy from quirksmode actually make more money since he's done just this, or does he simply get his code used everywhere, his site checked regularly, invited to speak at numerous time consuming conferences and still make no more money.
If you're being invited to speak at numerous "time-consuming conferences", I can guarantee you'll also be getting invited to be involved in some high-dollar projects as well. How could self-promotion not work? If people know your name and know your work and they think highly of it, of course it works. I imagine speaking at conferences probably doesn't hurt a resume either.
I honestly don't think you could sell a function as-is for any money with all of the open-source alternatives... unless your function is so unheard of and so ground-breaking, that it could not be put together by anybody else.
Posted: Tue Feb 13, 2007 1:35 pm
by Kieran Huggins
nathanr wrote:Does self promotion work? for example does the guy from quirksmode actually make more money since he's done just this, or does he simply get his code used everywhere, his site checked regularly, invited to speak at numerous time consuming conferences and still make no more money.
I bought his book - it's sitting on top of my monitor. And everyone in our field who has a blog attributes a good portion of their new work to it - that sounds like money to me!
nathanr wrote:is there no worth to this at all?
YOU are the valuable asset - solutions are your product, not functions.
Posted: Tue Feb 13, 2007 1:53 pm
by nathanr
I think I've thought about all of this for too long, I completely concurr with you guys! self promotion certainly can't hurt the resume.
I'm off to duscuss a related topic in here.. hopefully see you two in the other post, get myself a site to plug myself (quick opinion, my own domain or a free blog.. not that I can afford a full domain at the mo, bad year!)
Posted: Tue Feb 13, 2007 2:06 pm
by Kieran Huggins
Own domain for sure.
Domains are cheap - so is hosting - it's a "no-brainer" expense for any freelancer.
Posted: Tue Feb 13, 2007 2:58 pm
by timvw
If you want to sell something you first have to show your potential buyers that they have a problem.. That they miss something.. or that they're spending lots of resources (money/time) to solve a problem... And then you present your solution for that problem.. And then you make it clear that the little investment in your tool saves them a gazillion times the same amount... Well, thats one of the most popular techniques i've recognized myself

Posted: Tue Feb 13, 2007 3:07 pm
by Luke
Well, thats one of the most popular techniques i've recognized myself
sounds pretty bullet-proof to me

Posted: Tue Feb 13, 2007 3:41 pm
by alex.barylski
If your function is that unique, patent it!
I'm not sure I see a niche though, I mean...whats wrong with mktime() in PHP? It's a simple function and converts any format into a UNIX TIMESTAMP?
As for turning a timestamp into readable format, you could likely just use a simple regex like this:
Code: Select all
$pattern = '/([a-zA-Z]),([0-9])/';
$input = $_GET['user_date'];
preg_match_all($pattern, $input, $matches);
// TODO: Use extracted parts of incoming date and make timestamp
$ts = mktime($matches[0], $matches[1], $matches[2]);
The above is incorrect, but it illustrates the idea...the concept could be easily updated to support an virtual unlimited number of input/output formats...a few years ago I designed a JavaScript date picker which did just that.
So how does your function differeniate itself from the above method - what benefits would I have in using it?
Posted: Tue Feb 13, 2007 3:43 pm
by nathanr
Sounds like you've been inspired by the match box man.. went into a huge match box manufacturers and sold his idea, turns out he just said "you've got two strips of sand paper on there, you only need one" made millions he did
Posted: Tue Feb 13, 2007 3:49 pm
by daedalus__
I agree with Hockey that you should patent your idea if it really is that great.
P.S. If I saw a website with someone offering a function for sale, I would scoff.
Posted: Tue Feb 13, 2007 4:21 pm
by nathanr
RE HOCKEY
well..
how to call..
Code: Select all
//12th March 2007
$datestamp = datestamp(2007,3,12);
echo "datestamp(2007,3,12) = ".$datestamp."\n\n";
$dateparts = rdatestamp($datestamp);
echo "rdatestamp($datestamp) = ";
print_r($dateparts);
echo "\n\n";
//29th February 404
$datestamp = datestamp(404,2,29);
echo "datestamp(404,2,29) = ".$datestamp."\n\n";
$dateparts = rdatestamp($datestamp);
echo "rdatestamp($datestamp) = ";
print_r($dateparts);
echo "\n\n";
//31st December 26084
$datestamp = datestamp(26084,12,31);
echo "datestamp(26084,12,31) = ".$datestamp."\n\n";
$dateparts = rdatestamp($datestamp);
echo "rdatestamp($datestamp) = ";
print_r($dateparts);
and the output
Code: Select all
datestamp(2007,3,12) = 732747
rdatestamp(732747) = Array
(
[year] => 2007
[month] => 3
[month_day] => 12
[leapyear] => 0
[year_day] => 71
)
datestamp(404,2,29) = 147252
rdatestamp(147252) = Array
(
[year] => 404
[month] => 2
[month_day] => 29
[leapyear] => 1
[year_day] => 60
)
datestamp(26084,12,31) = 9526986
rdatestamp(9526986) = Array
(
[year] => 26084
[month] => 12
[month_day] => 31
[leapyear] => 1
[year_day] => 366
)
Posted: Tue Feb 13, 2007 5:04 pm
by feyd
So you've basically made a function that does day numbers? Probably not patentable.