What is the Best Way to Start a Paid GPL Project?
pooslinger writes "I know little to nothing about programming but would like to start, fund, and maintain a GPL linux POS application. I see there are a few available with the majority being closed source. I am currently starting a business and really despise the fact that I will have to spend $2-$5k on a proprietary solution. I would like to create an application where you could take a midrange PC, connect inexpensive touchscreens, barcode readers, thermal printers, credit card readers, etc; scan/input inventory; and begin selling. Something like a Debian POS distribution that boots into X and starts a POS terminal. Does something like this exist, am I just trying to reinvent the wheel?" How have other people approached starting a new GPL project, finding talent, and ensuring the code choices best benefit the community?
First off, you really need to check SourceForge.net or FreshMeat.net first. There there are plenty of POS software projects listed at both. Find one that looks like what you're wanting to do and hasn't run out of steam, and give it a shot in the arm with some cash. Maybe spread your cash around two or three of them.
That said, the question of how you start and attract talent to an open source project... I'm not professor on the history of open source, but the most successful projects I've seen are ones where a coder or small group of coders put out an alpha of their project and it was playing with the alpha and seeing the possibilities in it that got people excited enough to come on board and start pushing things forward.
So, if you're not happy with any of the POS projects you can find on SourceForge or FreshMeat, and since you clami to know "little to nothing about programming," I'd suggest going over to eLance or RentACoder and spend a good chunk of your seed money on getting an offshore firm to build your alpha for you. While they're coding their hearts out for you (they'll want 2-3 months to work on your contract), take that time to get to know the open source community and how people launch their open source projects.
Then, when your offshore coders come back to you with a decent alpha, pick an open source license (BSD, GPL v2, GPL v3, etc.), and use the knowledge you've picked up in the prior few months to get the word out and spread the code around. If you did your homweork well and spread the word well, that seed you planted may well sprout.
But remember this, a strong open source project needs a strong leader who can handle the big picture outlook, keep all the volunteers in line and focused on the goal, and drive the project forward. You're going to have to approach some strong personalities one-on-one and try to recruit that project leader. Without a strong leader, failure is a definite possibility.
Just my $0.02.
- Greg
Start a happiness pandemic
Have you seen their products?
http://www.linuxcanada.com/pos.shtml
I am not affiliated, just been aware of them for 3-4 years now.
Windows is not the answer.
Windows is the question.
The answer is "NO."
about just using Windows if you want a POS, it means Point of Sale.
In terms of opportunity cost, you'll likely spend that same $2-5k making a custom solution. Also, realize that the modern POS has over a century of lessons learned about securing cash registers from theft (particularly employee theft). You'll want to find developers who have specifically worked on POS applications before, or you won't benefit from all that knowledge.
Not a typewriter
You probably are re-inventing the wheel.
There are a number of existing free software POS apps. I'd suggest going through the list with a fine tooth comb and making sure that none of them even comes close to meeting your needs before trying to start a new project.
http://freshmeat.net/search/?q=point+of+sale§ion=projects&Go.x=0&Go.y=0
-- The act of censorship is always worse than whatever is being censored. Always.
At the risk of sounding too obvious, here's my advise: If you want to earn money with open source, charge for the customisation and maintenance of the software, not for the software itself. This way you can pick up whatever open source project you decide, since you're adapting it for your customer.
""I know little to nothing about programming but would like to start, fund, and maintain a GPL linux POS application."
It will be a nightmare to maintain, and won't be fit for general consumption. It probably couldn't even be used as a framwork.
Programming take training, and POS invlves understanging issues you haven't even thought of.
What you could do is Fund one. It will cost more then a couple of grand.
There are several approaches to this:
Hire contractor, pay them for there work, open the code. This gets you something running, and once there post it and ask for contribute it.
You might be able to get several small business to pitch in to the POS fund.
You could get some students looking to write a thesis together to get you going.
You could get some professionals to do it on weekends in exchange for equipment they get to keep. Or perhaps your business produce something you can use to trade.
--I fall into the category.
In any case, define what you want as specifically as you can. Don't do it in a language that can't be cross compiled.
Organizing project would be a great help to. That is what slow or stops a lot of projects. No one to organize or follow-up.
Please don't write it yourself without some training. I have worked on many system buyilt be very smart people with no training, and they all sucked.
Use your energy to manage the project until it gets to a point where it is usable to you. That includes allowing or disallowing contributers who want to contribute any functionality you didn't originally have in mind. Let them fork it, but don't get caught in function chasing.
The Kruger Dunning explains most post on
I am currently starting a business and really despise the fact that I will have to spend $2-$5k on a proprietary solution. I would like to create an application where you could take a midrange PC, connect inexpensive touchscreens, barcode readers, thermal printers, credit card readers, etc; scan/input inventory; and begin selling.
You say you don't want to spend as little as $2,000 on your POS terminal? You can't buy a business-ready PC and the touchscreen for that price! Have you even priced those components? Try Froogle: $500 and up for an LCD, which you want unless you're operating in a cleanroom. As for the PC, sure you can get a consumer-quality box with wirez sticking out for $500. Is it designed for mission-critical 24/7 uptime? Or is it likely as not to fail under load. Do you have all the possible software installed on it to prevent hacking of your customer information? I don't think you can get those two components alone, in the application you're using them for, with less than $2k.
Don't think you can cheap out and get everything you need at Wal-Mart and Craigslist -- you're running a business, not a hobby. You want to spend your time making money, not tweaking equipment. You don't want to spend $5,000, but what's the cost of making your customers stand in line while you try to figure out why your hacked-together hardware and software doesn't Just Work? Whether you're running a dollar store or selling overpriced speaker cables, you can't afford the downtime.
Spend the money on a system that works out of the box. If you're too cheap to do it right, then please comb your hair into a stylish point and congratulate yourself: welcome to Management!
Stressed? Me? Of course not. Stress is what a rubber band feels before it breaks, silly.
If you want to get an open source POS package, I think the most important thing to keep in mind is support. When the package breaks, are you going to be able to contact the coders for help? (Sure, it should be written to never break, but let's be realistic.) You may know enough to fix it, but what about your employees? They won't necessarily be able to get you on the phone when they need to. I used to work for a company that produced a mediocre POS package, and the amount of support calls we used to receive was insane. Everything from hardware, software, training questions, networking....we had it all. Point is, make sure that you have someone waiting on the phone for you when stuff happens.
If you post as Anonymous Coward, don't expect a reply.
The OP isn't counting on selling the POS software as his business model. He's opening a business that needs POS software and doesn't want to drop $200o to $5000 on a proprietary solution. That was stated.
His interest is apparently in using $2000 to $5000 to pay other people to do a GPL-licensed POS software system so his money won't be locked up in some unresponsive closed-source POS software vendor's accounts. He's trying to be a good business and OSS citizen by competing on the core of his business and cooperating in the portions that are ancillary and supportive. The POS software one uses is rarely a competitive advantage in retail. Pricing, customer service, marketing, location, and potentially how you tie your POS and warehouse systems together are much more important than the POS software itself.
Of course, supporting the software might turn into a secondary revenue stream, or it might be the kernel of a start-up for someone else.
You've jumped on the bandwagon at just the wrong time. The EFT industry (which I'm part of) is currently going through a bit of an upheaval to increase security of card number data. If you're seriously thinking about devloping a POS solution, then I would take a long hard look at the number of hoops you need to jump through to become compliant.
:)
PCI-DSS covers system and network security. PA-DSS (still in draft format, and perhaps still better known as PABP) covers software application security. There are also things like EMVCo if you're thinking about chip and pin cards, and APACS standards (in the UK - not sure what the US equivalent is) for message formats to and between acquiring banks.
Considering you state you havent even learnt coding yet, you will most certainly be jumping in at the deep end with this task. I've got around 10 years experience in the field, and the pace of change is... breathtaking. Good luck - you'll need it!
1) You can get a very nice shrink-wrapped POS system, including hardware, for a lot less than $5k.
/something/ about programming, even if you eventually hire someone else to do it. Research the existing commercial offerings and open source offerings. Find one of each that you think works for you. BUY the one to run your business now, TRY the open source one in your own time, then learn enough about the language behind the open source one to modify it for your needs. After you've got enough chops to tweak around the open source project, then start thinking about branching or starting your own, with or without the aid of hired guns. Chances are, by the end of this, you'll find that:
2) You will not be able to develop even a very crappy POS system from scratch, sans hardware, for $5k--even at Bangalore rates.
3) While you develop a going-to-be-crap-for-a-long-time POS system, you need a reliable one to run your business.
4) Many software development projects die unceremonious yet expensive deaths.
5) This may be nothing but a colossal waste of time and money.
Because of all of the above, if you really are peeved to the point of diving into building something from scratch, you're going to need to know
1) The commercial product is sufficient
2) The cost-benefit exchange makes rolling your own FAR from cost-effective
3) You're not a software company
4) The time and money it would take to become one is enormous and way too risky
5) You have better things to do with your time and money anyway
My experience with an offshore project didn't give me a warm and fuzzy feeling. Despite several e-mails where I even wrote pseudo code to explain the algorithm for audio gain scaling, they still didn't understand. I just wrote the code and e-mailed them the code.
The issue with spaghetti may also occur with RentACoder. Spaghetti code is not just an offshore option.
Fight Spammers!
Or, better yet, it could be something he could recruit other businesses into supporting with some cash, so that it increases the odds that he (and the others) will get a quality piece of software ("QPOS"), and that the coders will find a market for books (like "QPOS Unleashed in 24 Hours for Dummies: The Missing Bible in a Nutshell") and for support/customization contracts, thus possibly reducing their demands for cash.
Insightful and funny are really the same thing, except one has a punch line.
"The article poster is about to discover a harsh reality of the open source model: if you give your software away, profit-making businesses aren't going to pay for it unless there's something else in there to sweeten the deal and the software is just a means to that end."
I would not bet on this. If a piece of software is central to a business, they will want reliable support before commiting to that software. A smart business might just hold off until professional contracted support is available.
"If you're expecting to make money just by developing and supplying open source POS software, you've got the wrong business model..."
Right, unless you go into the bespoke and paid up front angle.
I also still feel that there is hugh untapped potential in Association funding.
National Retail Merchants Association? Local Chamber of Commerce? National Locksmiths Association? How much could they benefit their members if they charged $5 extra for membership and used that to fund Free Copyleft (GPL) programs that would benefit their members / industry?
There is money to be saved with this idea and the old saying of "a penny saved is a penny earned" still makes sense.
all the best,
drew
http://openphoto.net/gallery/index.html?user_id=178
Underwater Fun
FreeMusicPush If you want to see more Free Music made, listen to Free
He said he wants to pay someone to do the programming because he knows about point-of-sale systems and not about programming. He's what some software teams call the "domain knowledge contact", or what a freelance programmer would call a "client". Outside of "scratch my itch" projects, a lead programmer is rarely the domain expert on a project, and the domain expert on the project is rarely a programmer. That's what interface specifications and client use scenarios are for.
If you're having issues with the concept, pick up a book or a short net article on Extreme Programming. While reading it, note how much time the authors spend explaining how to communicate what's desired by the customer to the programmers and what's feasible in the budget and time constraints from the programmers to the client. XP is not the only methodology out there that addresses this, but it addresses it clearly, voluminously, and in recent, easily located resources.
I've got the same problem with movies. No way I'm spending $10 for 90 minutes of entertainment. So, if anyone knows some actors, film crew, etc. I am willing to pay salaries, as long as we can keep the entire budget under about 7 dollars.
Don't be an idiot. You're trying to start a business, yet you are creating a monstrosity of a barrier to entry for yourself. When you're in business, you do what you're good at (what makes you money) and you buy what you are not good at. You said yourself, that you have no idea how to run a software development project.
If you do "roll your own", you have no idea how long it will take to build this thing, what the quality will be, whether or not it will interface with your accounting software, what the response time will be for breakage, what it will ultimately cost, and probably about 100 other things that neither you nor I are thinking of right now. In the meantime, you are losing money.
On the other hand, you could buy a package and be up and running tomorrow.
Buy a QuickBooks POS for $800 and get on with your business plan. In five years you'll be able to start a charity open source project.
As someone who started two successful businesses, I can't believe you even asked this question.
They don't grade fathers, but if your daughter's a stripper, you fucked up. --Chris Rock
I have to second the parent. I've programmed commercially funded GPL E-Learning Systems and built a few small business support systems entirely from OSS components. $5000 dollars is an absolute minimum to get an ERP or CRM system set up, configured and extended in a usable manner. It won't be any other with even the most frictionless of POS setups.
If you have somebody competent you can trust then you can kickstart the first components of someone who wants to build a small POS system to start his own POS software business (maybe a student or so). But that's an extra load on top of your job of building up your own business so I'd be triple carefull before attempting that.
I too strongly recommend you do some research on shrinkwrap POS systems and then ask a reputable local OSS savy freelance programmer / SMB IT consultant how he would automate your business and what it takes to implement some glue-scripts for automation and data-migration to bringe the gaps between bill-printing, the ledger and whatever other shareware you piecemeal your first IT enviroment together with. The programmer and the job(s) he needs to do shouldn't initially cost more than $2000 in total and deliver measurable speed up of your IT pipeline. A good programmer with experience and consulting skills will - in the first round - speed up a mom'n'pop shop business by up to ten to twenty weekhours and bridge the worst gaps in IT on a relativly small budget. If you go that way, you can also see if your IT specialist is for real or just a wannabe. And you won't risk to much either.
If your business grows he'll know enough of yours to extend IT accordingly and you'll both know what problems to look out for. On the second or third iteration of your business relationship you can start thinking about funding an OSS project with your favourite programmer as a funded project-lead. All else is too early.
Just a free advice from an E-Lancer and OSS Consultant.
We suffer more in our imagination than in reality. - Seneca
Most POS software is tied or at least linked to Accounting Software. To me, POS is only a subset of Accounting. Payroll, AR, AP, GL, CRM, POS, Inventory ...... all are integrated with each other, or at least should be.
.....
.....
.... all tied together yet independent. Good luck.
A small proprietary storefront may only want POS at the moment, but in six months of success will change that. Then you have to change POS software because it doesn't tie in with the new inventory management software. Six months later they'll want CRM, then payroll, then AP, then
Which brings me back to my point, it isn't as easy as it looks. I'd like to see an open source modular accounting system that didn't suck. Only install the modules you need, where each module stood on its own and/or GL module.
Then tie it in with a Web Interface and online shopping cart
I'd love to be a project manager for such a challenging project. CRM, Accounting, POS, Online shoppiping cart
Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
Clearly if the primary business is retail than it would be much smarter to pay for a proprietary POS (or use an existing OSS version) than starting a new OSS project. The latter approach is going to take a long time to get to the level where it can be used effectively for a business and there's a significant risk that it never will.
He should get the core business profitable ASAP and then if he has money left to burn, he can hire people to create any OSS product he wants - there's no particular reason why his choice should be limited to applications related to his "day business".
The bottom line is that starting a software project (proprietary or OSS) to support some aspect of a new business is not a very good idea unless the software is a core part of the business and isn't available from anyone else. Unfortunately in that scenario the software is likely to hold most of the value of the business and so making it OSS will probably limit profitability in the future.
a POS framework needs to do.
I have customers running LedgerSMB in a POS environment. It doesn't handle all environments at the moment (mostly just for retail), but it does work.
In general, you are talking about a system which generates invoices, collects and tracks money coming in and out, etc. Sounds almost like a full accounting system (which is in fact what LedgerSMB is). LedgerSMB is under the GPL v2 or later (no plans at all for moving to the GPL v3).
We inherited a mess of a codebase though and are working on it as quickly as we can. And we welcome contributions (and are willing to share the workload in terms of paid work too).
LedgerSMB: Open source Accounting/ERP
Hey pooslinger... I would be willing to give some help to this as well. I do free tech support for a lady who runs a dry cleaners and would love to give her a better POS system. Right now all she has is a cheapo cash register and then she enters stuff into quickbooks manually. Shoot me an email and we'll talk some more. (my slashdot username at hotmail.com) Matt
I am d3matt
He should talk to the guys over at LTSP. They've been doing POS setups for probably eight years now, using thin clients. Local printers. Local barcode readers. The software. They've got it all.
Take some old, small form factor PIIs and any modern server and you're in.
Put identity in the browser.
I'm glad you're not an idiot, but even smart people do idiotic things from time to time. As for me, I'm an idiot who every once in a while does something clever. We all have to live with our limitations.
;)
At any rate, I'm going to have to stick with my original advice. It's great and altruistic and all that you want to create a whiz-bang open source POS solution. Your heart is in the right place, but your head is not.
Wait until you see a lot of black ink on your financial statements. Wait until your business requires only 40 hours per week from you.
Starting a business takes everything you've got. I know so many people who tried to start this or that type of business and just get bogged down in some irrelevant project. I know one guy who was so convinced not to hire an accountant that he got stuck researching the optimal type of corporate entity to use, then he got stuck learning basic bookkeeping, then he got stuck learning tax accounting. Meanwhile, he never made a single sale. Ever.
I know a lady who started a jewelry business and she had two lines. Her first was wildly successful, but she decided to pour everything into a second line while neglecting the first. Oh, sure, the company is still in business. But it is bleeding red ink everywhere. It's only afloat because her husband is a partner in a law firm. I can't believe he hasn't pulled the plug on this yet. It's easily a 6 figure loss for them.
I could go on forever. The point is, concentrate on what makes you money! This POS idea is going to take you thousands of miles outside of your comfort zone, and just as many miles off your business plan. It is going to cost many, many thousands of dollars. You will not be able to hire a few Indians to hammer this out over a weekend--cheap coders need perfect requirements and specs, which you will never have. Anyway, you do not want your business running on software that was hammered out by a few Indians over a weekend with ambiguous specs.
Lastly and most importantly, I wish you the best of luck with your business. And since it sounds like your mind is made up to get mired in this POS POS (ha ha get it?), I'll wish you the best of luck with that as well. Just promise yourself you'll gauge its progress with ruthless objectivity and pull the plug on it quickly.
They don't grade fathers, but if your daughter's a stripper, you fucked up. --Chris Rock