
Why I've built an alternative to Github - fnando
http://blog.codeplane.com/why-ive-built-an-alternative-to-github.html
======
mechanical_fish
I don't understand this use case:

 _These projects are mainly side projects, or small freelance jobs I've done
through the years, and I want to save them for posterity; who knows when I'll
need them, right?_

My solution to this problem is called _tar_. Just clone the Git repos to /tmp,
tar up the results, and push the tarball to S3. Done. Archived for posterity
for a few cents per month.

This isn't SVN anymore: It doesn't take special voodoo to host a repo. If
nobody needs to push or pull from a repo, tar it up and archive it. If _one_
person needs to push and pull from a repo, store it on that person's local
hard drive (with backups, of course). If _two_ people need to push and pull
from a repo... Well, this is no longer an archive for posterity, this is an
active project, and can the team really not afford to pay Github something
like $5 per month per repo?

~~~
jpeterson
I imagine part of the use case is "quickly and easily getting back to a
snippet within one of those old files", in which case the tarball and archive
method won't really work.

~~~
bruceboughton
He's talking about tarring a local git repository. You can still use all the
git history stuff, you're just backing up using tar rather than via git
push/pull.

------
micheljansen
While I do agree that Github leaves space for a model like this, I think the
value of Github is that it offers a great community and awesome toolset
(online and offline). Then I read this:

"I also wanted to do almost everything from my terminal, so I built a CLI,
that you can use to manage repositories, public keys and collaborators. For
daily usage, you probably won't have to go to our web interface ever again,
and that's awesome!"

And I think "that's what I have with Gitosis on my VPS" (Gitosis uses git to
manage user accounts and keys, so it pretty much doesn't get simpler than
that). Companies pay for Github for the tools, developers who use CLI are
probably not that interested in forking $9 a month for something they already
have. Just my two cents, but I wish you the best of luck :)

~~~
fnando
Yeah! One can always set up the whole thing, but for small shops and
freelancers it makes no sense to manage something like this.

Maybe for hackers like us... ;)

~~~
StavrosK
Who did your design? It's beautiful! Who does all these amazing designs?

~~~
fnando
In this case, I did my own design. I always liked design my own stuff. So, I
spent only time on this one! ;)

~~~
StavrosK
It's brilliant, well done!

------
mrcharles
I just use bitbucket.org + Mercurial. More than enough for personal projects,
or more, given that it's unlimited. The only limit is amount of users.

Switching to Hg was a bit of work, but I've actually learned to like it more
than Git. Really though, it's the same kind of thing and I just use both. So I
ended up at bitbucket for the same reasons OP built a new site.

My way was quicker though.

~~~
StavrosK
I use github for the network effects, but how does hg compare to git, speed-
wise? I switched to git from bzr because bzr felt awesomely slow, although git
is a real pain to use, even when you're familiar with it.

I understand that bzr and hg are almost identical, command-wise, but hg is
about as fast as git, is that correct? What my workflow consists of is
diffs/statuses/commits/pushes/pulls in projects with working trees of a few MB
at most.

~~~
eropple
Hg is marginally slower, but not so you'd really notice. If you're crunching
20,000-line files on a regular basis it might be a concern. On repos of that
size, I doubt you'd notice.

Git is a great tool for what it was built for and the group of users it was
intended for--that is, rapid, tons-of-merges-and-pulls development on a
gigantic codebase, for users for whom it is acceptable for man pages to serve
as reminders rather than instructions. However, I appreciate the additional
attention paid to tooling and user-friendliness in Mercurial-land that make it
more pleasant for me to use.

~~~
StavrosK
The fact that all the tools can push to github make it easy to switch, which I
just might do again. bzr was great, except for the fact that it just doesn't
have that much traction...

~~~
eropple
I found bzr to be much as you described it - like hg, but slower. Nothing
objectionable about the workflow (though the tools on Windows were very poor,
I wasn't using Windows much at the time), just the perf on a particularly
large chunk of code.

------
masnick
You can set something like this up on any VPS with gitolite
(<https://github.com/sitaramc/gitolite>) pretty easily. gitolite lets you set
up very fine-grained per-user/repo/branch permissions, manage your users' SSH
keys, and gives you nice clean git@git.you.com:repo-name access to your
remotes.

I've done this for myself with a $48/year VPS from prgmr.com specifically
because I needed more private repos than Github could offer (my setup
instructions are here: <https://gist.github.com/1035834>).

Granted, if codeplane.com existed six months ago I probably wouldn't have
bothered with gitolite. It appears they do nice things for you like backups.

~~~
gvb
...or gitosis [http://scie.nti.st/2007/11/14/hosting-git-repositories-
the-e...](http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-
secure-way)

Gitosis does not have as fine grained control as gitolite nor is it as well
documented (config file errors are hard to debug), but it works well within
its limitations. Both are now available as Debian/Ubuntu packages (gitolite
was not when I started using gitosis). The other obvious difference is that
gitolite is written in Perl and gitosis is written in Python. This should be a
superficial difference, but sometimes the world isn't rational.

~~~
nuclear_eclipse
Gitolite is a fork of Gitosis that has been both improved and actively
maintained. It even has a script to automate converting your old gitosis.conf
to the new format.

------
senthilnayagam
I run a services company. I am near my limit for 125 private projects with
mega plan.

I have 100+ private repositories,with about 100 collaborators(many are my
clients) and consume just 2.3 gb and pay 100$/month, about 15-20 of the
projects are live/active, others are projects which have been delivered or on
hold.

Organization as a concept was brought pretty recently on github, my account
dates 2008, charging double for just that is not attractive.

I love github, they are coming with awesome features, but in terms of certain
features many service firms need, a way to archive the project not counting
them for active projects. github is lacking. instead of doubling the service
plan every 6-9 months I am willing to give the competing git hosting services
a try

------
fizx
From another perspective, Heroku has unlimited free git hosting that happens
to optionally serve webapps.

~~~
bad_user
GitHub is also a free hosting service for static websites, that happens to
optionally host git projects :)

------
nicpottier
Github's pricing model really is a painpoint for little consulting shops. We
drive next to no traffic and storage on there, but we do a few projects every
quarter. Haven't quite outgrown our paid plan yet, but we will in a bit.

Just wish Github would revise their pricing to support peeps like us, I hate
to use different interfaces. May choose to just archive things to codeplane
until then, keeping things we are actively developing on github.

~~~
trustfundbaby
Try unfuddle, their hosting includes both svn and git ... doesn't have most of
the thrills and spills of github but I find their pricing very reasonable.

------
pdenya
Same feature set as <http://repositoryhosting.com> with a higher price point
(they're at $6/month now for 2GB). They don't have a CLI or anything as far as
I know but they do offer more storage space at $1/GB/month which is pretty
nice if you just need a little extra.

~~~
slig
+1 for RH. They are awesome and I couldn't be happier. I've never had problems
except when AWS went down.

Also, they offer git, mercurial and SVN.

------
arturadib
I think CodePlane is very cool, but it seems to solve a different problem than
the one advertised on the blog.

To save my repos "for posterity" on Github without incurring a $100/month
bill, I simply create a master repo (say old-projects/) with all my unused
repos in it.

On the other hand CodePlane seems to be a great solution for collaborative
work on lots of private repos. This can save big bucks.

I love to see projects like this. I hope it gains some traction and forces
Github to change their business model to a more manageable per-GB price.

~~~
sant0sk1
The one-repo-for-old-projects solution works in some cases, but not really for
mine. As a contract developer I often have projects that are under active
development for a few months and then go into "maintenance mode". In this case
I want separate repos for when maintenance needs to happen. Otherwise that one
repo is a mess.

I believe this is the kind of problem that CodePlane solves. And I agree with
you that its great to see projects like this present competition and make
GitHub better in the long run.

~~~
arturadib
It's a hack of course, but if the changes are really that occasional, the pain
is negligible: all you need to do is to commit twice for every project change
(once for a sub-directory containing the project repo, once for the root
repo).

If a project becomes active again, simply take it out of the master repo and
push it as a new repo.

It's really not that bad. But then again, things change if you have
collaborators...

------
zck
It's Mercurial, not git, but bitbucket offers unlimited private repositories:
<https://bitbucket.org/plans>

------
jamesgeck0
What does the UI actually look like? Is it just the list of repositories? I'd
be more likely to spend money if there was a tour, or an example project I
could look at, or an annotated example session with the CLI tool.

~~~
fnando
Yeah, I'm working on it! Just had to do some things first before really
working on "selling the product".

------
grandalf
This is a very desirable use case. For those who don't get it, I'd say the
following:

\- it's nice to use git for all the small side projects one creates, but
putting all of them on github is crazy expensive if you like keeping your
musings private (though not necessarily b/c you're committed to a closed
source ideology :)

\- the cost factor creates an incentive to misuse git (not using submodules
where appropriate) just to save money.

\- There are a lot of awesome Git UI programs that run locally on my laptop,
gitk is one.

\- FWIW his fills the niche between github and gist.

~~~
lucian1900
Your first two reasons, and liking hg, is why I prefer bitbucket.

------
angrycoder
Maybe I'm not fully understanding this.. If I don't need the web interface and
public code sharing, why would I use this verse getting a Linode instance and
installing git there.

~~~
masnick
> If I don't need the web interface and public code sharing, why would I use
> this verse getting a Linode instance and installing git there.

Private code sharing. You have to install something like gitolite (see my
other comment) to do private code sharing with git on a VPS, or you'd have to
create a system-level user for every person you want to share code with.

~~~
joshfinnie
Webfaction actually allows you to create a git repo with web interface that
can be shared privately.

It is one of their "one-click" installations and I have been pretty happy with
it for my limited use.

------
xbryanx
I am currently frustrated with Github's private repository hosting plans. When
I switched from SVN to Git, what was initially one repository became six,
because of Git's "you can't checkout part of a repo" philosophy. So now, I
have to buy a fairly expensive plan even though my usage is pretty small.

Cheers, to you for adding some competition to the marketplace. I hope it
provides some pricing pressure on Github one of these days.

~~~
cool-RR
I find $12 a month to be really cheap.

~~~
xbryanx
And it is, if you somehow have less than 10 private repos. I personally have
over 25, and our group has over 50...putting us in the $100/month range

------
yakto
Anyone else happy with Assembla? 2GB, unlimited repos and users, source
browser, etc.: <http://offers.assembla.com/free-git-hosting/>

~~~
barkingcat
The UI at Assembla is awkward to work with. I participated in a project that
used Assembla, and I kept getting a flood of emails attached to tasks and
revisions that I didn't want to follow.

~~~
Revisor
You can change the email notifications, BUT:

I couldn't find it for 5 minutes!

A similar thing happened to me a few weeks ago when I was looking for a way to
add more repositories to a project. Luckily I got an answer quickly on their
support forum (and yes, it was there).

So yes, the UI and information hierarchy is lacking, but ultimately it can do
a lot of things.

(For future reference, you can change the settings under Stream - Email
Notifications).

------
edw
I hadn't gotten around to commenting, and I'm glad it took me a while, because
while I first went to Codeplane and set up a trial account, pushed my Github
private repos therem and downgraded my account from a paid to an unpaid
account — thereby netting myself a free cheap beer a month — I went on to read
some of the comments here, set up gitosis, and am now free of any sort of paid
git hosting fees beyond my existing Linode virtualized server — upgrading my
free monthly drink from a PBR to a Hendrick's martini.

Thank you, fellow Hacker News citizens.

------
programminggeek
Good for you for building this and then charging for it. There certainly is a
place in the market for what you are doing and the price you are doing it.

Good job.

~~~
fnando
Thanks! ;)

~~~
FlowerPower
I too wish you luck!

What about security? If i sign up, is my code safe if I want to keep a repo
only for me?

~~~
fnando
I can say that's is pretty safe. Backup is not an issue: copies of all
repositories are stored on S3, CloudFiles and Linode's backup solution. People
can't access your repos, unless you allow them to.

------
flocial
I've always wondered about this. The real expenses are disk space and
bandwidth. I don't understand how they can't just provide a space-based plan
(oh yeah, that would cut into high margins).

It's a wonderful service and they've done so much to keep many open source
projects from stagnating. They outshine SourceForge and Google Code by a large
margin. Still, if BitBucket was git, I might migrate my stuff.

The thing is "social coding" isn't that big of a plus for your own private
stuff. I definitely see value in a service like this.

------
kgtm
Is it really necessary to disguise a Linode referrer link using bit.ly in the
homepage? I would be more inclined to click it if it wasn't masked...

~~~
fnando
I just wanted to see how many clicks that would have, but you're right. Just
removed the link since I just don't care. ;)

~~~
mcantor
You might be able to do a quick happy medium by generating a "vanity url" such
as bit.ly/sneaky-affiliate-link or something.

~~~
JonnieCache
Or perhaps a sneaky bit of javascript to track click events on that link via
ajax.

------
taphangum
I REALLY don't think that github's plan is unreasonable. I pay for it quite
happily. But good on you for DOING something about how you felt

~~~
unshift
for updated-infrequently-if-ever repos, github's pricing doesn't make a lot of
sense. i have plenty of small, one-off repos i'd love to back up on github but
it doesn't make sense for me to upgrade plans for them.

i just back up to multiple boxes, but i can understand why someone would want
something centralized and specific.

~~~
watty
I agree. My small company has many 1-2 week dev efforts that we'd like to have
on GitHub but simply can't afford it. I've tried creating a "small project"
repository and using different branches to host the different projects but am
definitely not satisified. GitHub NEEDS a size-limited hosting plan.

~~~
Luyt
As soon as GitHub introduces size-limited plans, will Codeplane be able to
attract new customers?

------
sirn
Your blogpost mentioned using Git with Dropbox was too much of a hassle, could
you elaborate why? I want to know since all my private repos are `git init
--bare` within Dropbox directory, which works very well so far. What's the
main benefit if I were to switch to Codeplane?

~~~
fnando
My problem with Dropbox was when I had to share a repo with someone. How to do
that? I created a shared folder. And then it becomes really hard to manage all
this stuff. For 1-person usage, Dropbox works really great.

------
comechao
The "one price" is an awesome feature for indie developers and small
companies.

------
veeti
Looks like a more polished version of <http://repositoryhosting.com>, which
I'm using at the moment. Will definitely give this a try!

------
brown9-2
The title of the page at www.codeplane.com is "Unlimited private Git hosting",
yet it appears that you are limited to 2GB of repositories for your $9/month.

How is this unlimited? Are there other plans that you can sign up for? If so
they seem impossible to find on the site.

~~~
jimktrains2
I think he's referring to the absence of a limit on the actual number of
repos, which is only bound by the space given. If you can git 1000 repos in
there, good for you, he doesn't care.

Granted, something like "2GB private git hosting" might be more accurate.

------
rsobers
Fog Creek has a product called Kiln, which is like Github, but is based on
Mercurial. It's very polished and has lots of great features that focus on
private repository management (but has public repos, too).

It's free for up to 2 users. Unlimited repos and disk space.

~~~
watty
And then it's $25/user/month!!!

~~~
rsobers
Yes, but if you're solo freelancer or student, you can't beat it.

------
cool-RR
I think that anyone who complains about GitHub's price has gotten way too
spoiled, or perhaps underestimates the amount of effort required to maintain a
service of that quality and reliability. I find this to be another symptom of
HN tunnel vision.

~~~
M1573RMU74710N
I don't think anybody is "complaining about GitHub's prices" per se...at least
not the way you are implying. That is, I don't think anyone is saying GitHub
is greedy, or not worth it ever or something like that....

However, the fact of the matter is they have a particular pricing plan, and
that pricing plan is such that for certain people it becomes not worth it.

When you go to a fast food place, they generally offer you varying sizes of
soda.

For most people that's fine....but for some people their needs may fall JUST
in between two sizes...for example they want more soda than a medium, but they
don't really need a large.

So they start buying a large...because that's a reasonable compromise.

Sure, the large may be a _very good deal_ , but that's completely besides the
point. It's more soda than they really need, and they are wasting money by
buying it.

When someone offers a size of soda that happens to fit their needs exactly,
there's no reason they shouldn't switch to that. If their needs change they
can always go back to their old size, or even a newer one.

Or to pick another soda analogy, imagine that the fast food place only charges
for the soda cup. It's a dollar a cup for everyone. This is a _GREAT_ deal for
most people...they come in pay a dollar and get a cup of soda, with free
refills. The fast food place does alright because it all balances out in the
end, the people who drink a little soda subsidize the ones who drink a lot.
Even people who only drink one cup of soda get a reasonable deal.

Now imagine you come in with 100 kids who only need a thimble-full of soda
each (for the sake of argument). You're paying 100$ for the amount of soda
everyone else is paying 1$ for! Overall, the pricing plan is reasonable...but
for certain people it falls apart.

Why should those people go with a deal that doesn't work for them? It's better
all around for them to find a better fit.

The fact that github is awesome and a great deal is completely irrelevant re
the issue at hand. The point is some people don't need all the github
awesomeness, they just want somewhere to stick their code.

If that's all you need, there's no reason at all not to go with a cheaper
option.

That's not to say that the cheaper option is this guy's service....it could be
any number of things. For some people this codeplane is a good fit, for
others...not.

~~~
cool-RR
_"Sure, the large may be a very good deal, but that's completely besides the
point. It's more soda than they really need, and they are wasting money by
buying it."_

You actually put your finger right on the fallacy. It _feels_ that you're
wasting money by buying a GitHub account with 100 private repos when your
repos are largely inactive. But the way to make smart economic decisions is
not by measuring hypothetical waste (i.e. how much of the account you are
using) but by comparing the options side by side. You pay more for GitHub,
yes, and you pay for stuff you might not use, but if it saves you a few hours
per month then it's a better choice than going for a service like CodePlane.

~~~
M1573RMU74710N
>, but if it saves you a few hours per month then it's a better choice than
going for a service like CodePlane.

...and that's the hole in your reasoning. That is not a forgone conclusion at
all...in fact it's a non-sequiter.

In the analogy these people aren't getting ANYTHING for paying the 1$ per cup
(vs paying 50 cents for the actual soda used)...there is a theoretical benefit
of free refills, or it being a reasonable price for the cup of soda...and for
the people who use it, it's great.

...but the __whole entire premise of this discussion __is that for some people
that's no benefit at all since they're not using it.

We've already eliminated all the people who are getting their money's worth
out of Github, that's the premise of the conversation....we're talking about a
service that is designed to cater to people for whom Github's pricing plan
doesn't work for their needs.

Additionally, to argue that these people don't exist is a specious argument. I
think it's an incredibly dubious proposition that there is _ANY_ service which
precisely fits the needs of it's entire target market.

>. But the way to make smart economic decisions is not by measuring
hypothetical waste (i.e. how much of the account you are using) but by
comparing the options side by side

Yes, precisely.

You make smart decision by weighing your own personal needs against your
options. Everyone has different needs, and while Github works for many people,
it does not work for everyone.

Again, I'm not prepared to say codeplane represents a solution for all these
people...many will simply go to bit-bucket, handle it themselves, etc... but I
think it works for at least some of them.

------
selectnull
One plan, one price seems like a good tagline, but what if a user needs more
than 2GB? I guess you'll want to charge them more money for more space, and
eventually will have more plans, or will charge per GB?

Btw, I like both the idea and execution. Good luck... :)

~~~
fnando
Yeah, There will be a way for buying additional storage. You'll by a whole GB.
Don't want to have different plans, though.

------
Zolomon
<http://blog.codeplane.com/>

------
bad_user
I configured a Git server on my EC2 micro-instance and just use that.

I was a paying GitHub customer until I decided that I spent too much money on
online subscriptions. But when I'll pay for a Git hosting service again, I'm
going back to GitHub, as I'm still a happy user of their free account. GitHub
rocks.

Sure, competition is good, but I don't get what codeplane.com is offering,
considering that configuring your own in-the-cloud repository is so easy on a
VPS (that you're likely to have anyway and be left unused to its full
potential otherwise).

------
jjm
Must admit I do like the price.

------
js4all
I like the idea. If there is a niche for a git hosting alternative, you guys
have found it at the right time. I wish you all the best.

~~~
fnando
Thanks! ;)

------
guivinicius
I'm using codeplane for quite a month ... it's really good.

I think the only thing i will miss from github, is the feature to view your
code online.

------
sktrdie
how do these startups get beautiful page designs? hiring those level of
designers would require lots of $$ if you ask me.

~~~
fnando
Actually, I did it by myself. I have a BS, but I always liked design and I've
being doing my own designs through the years! ;)

~~~
teyc
It is stunningly beautiful. Can you sell it as a theme, on Themeforest? say?

~~~
fnando
I don't think I wanna do that! :)

------
hunvreus
Interesting; I actually have an Github organization account for my company but
I could definitely see myself using that service. I could easily Gitosis or
Gitolite on one of my instances but tend to prefer focusing our sysadmin man
power on our products and clients.

------
happypeter
Thanks for building a low cost alternative.

Here is my advice. What github looks charming to me is the wonderful service
for free plan users. I think this is wise, build a huge audience, and then
"out-teach" them to be their potential customer. Success comes after the fame.

------
udoprog
I don't get it, why is setting up a private git repository on your own server
a hassle?

Assuming you have ssh access (compacted for clarity):

    
    
      ssh server "git init --bare repo/project.git"
      git clone server:repo/project.git
    

Am I missing something?

EDIT: mkdir superfluous

~~~
JonnieCache
That doesn't handle the multi-user authentication/authorisation.

~~~
udoprog
Yes it does, however it doesn't provide granularity for multiple users of the
same server, and unless you go for vanilla could be troublesome to customize
through something like pam. I simply commented on the non-issue with creating
private repositories.

A service like this is nice if you don't have the ability or time to setup
your own environments, but in my opinion could be risking a very slim user
scenario.

------
jarin
I just use Assembla for "dead" projects. Unlimited free Git repos, as long as
you don't need any of the fancy management stuff:
<http://offers.assembla.com/free-git-repo/>

------
patrickod
Great looking product and very much like your way of thinking in assigning
space and not a set number of repos. I'm a github user and have been for a
while but such competition would make me reconsider in the future. best of
luck with it.

------
jvandenbroeck
The Github price structure might not be the best for this use case. But Github
is simply the best to manage your repo's, I don't think this is going to
change anytime soon.

It might be a better idea for Github to allow projects to be archived.

------
oceanician
I think this site is better value: <http://www.svnrepository.com>

However you may well have something on the keeping it simpler approach.

I'm very happy that more people are going to compete with github :)

------
adharmad
I use rsync.net with git: [http://blog.kozubik.com/john_kozubik/2010/02/git-
and-subvers...](http://blog.kozubik.com/john_kozubik/2010/02/git-and-
subversion-support-at-rsyncnet.html)

Works pretty well.

------
trustfundbaby
More screenshots of the web interface (or a walkthrough video) would be nice.

------
atrain34
(honestly afraid to comment, but what the hell.)

i know its not git, but bitbucket (mercurial, same type of dvcs as github) has
free private and unlimited repository hosting.

------
whather
I would make the dotted homepage background a little fainter. It makes the
text a little hard to read and I find myself squinting.

------
j15e
I like repositoryhosting.com for 6$/month you get unlimited users/repositories
and support for git, svn, hg

------
rs
There is <http://xp-dev.com> for unlimited repos as well

------
kevinburke
Bitbucket offers unlimited numbers of repos for free (they only care about
number of committers).

------
dlikhten
please note: slsapp.com already has features you ask for. You have lots of
archive repos. You are allowed (even on free account) unlimited view-only
repositories and they charge mainly by space/active repos.

However I still see the value in this service, and I like it.

------
swah
Just curious... are you brazilian?

~~~
fnando
Yes, I am! :D

------
tuna
I liked that I dont need to do this setup myself and that I can integrate with
S3.

~~~
fnando
Exactly my point! People can always set up their own stuff. The question is
"is it worth?"

------
Create
<http://www.gitorious.org/>

~~~
thomasfl
Gitorious is both a free site and an open sourced project web app. Strange
this hasn't been mentioned before in this thread.

------
veyron
Is there a way to link this with a project management tool like basecamp?

~~~
fnando
Not yet! Basecamp and some others tools like Pivotal Tracker will be
integrated at the right time. ;)

------
shapeshed
Git is simple enough to set up with some basic unix skills and with something
like gitosis you can manage access to repos. GitHub has added many more
features and make collaborating super simple. Totally worth it IMHO. Git is
not just Github though.

------
tommoor
Great idea, well executed - im sure you will do well!

------
Limes102
Really beautiful and easy to use. Very impressed!

------
n9com
fyi - it's already been done few years ago, <http://repositoryhosting.com/>

------
gcb
30 day trial for a long term usage pattern?

give me free accounts with a few MBs and you have yourself a user base.

github didnt get that size with 9/mo plans...

------
andrewnez
If your developers are spending more than 5 minutes a month managing,
monitoring and looking after their repositories then you are doing it wrong.

Github's monthly fees are so much cheaper than the cost of your developers
time and happiness.

