Slashdot Mirror


How Do I Get Open Source Programs Written For Me?

An anonymous reader writes "I am a biomedical researcher interested in having general-purpose, scientific programs developed and released as open source. Interface design and reusability of the code are of primary importance to me. For my purpose, Cocoa applications relying on Core Data seem to be the best way to get the job done quickly. While I have some programming experience, I have few connections to the industrial world. So my question to Slashdot readers is: how do I find someone (individual or business) to write high-quality programs? Are there reputable contractors experienced in Cocoa? What sort of rates should I expect, to use as a starting point in negotiations? Would a requirement that programs are released as open source make it more or less difficult to find someone to do the job?"

285 comments

  1. er... by girlintraining · · Score: 5, Informative

    The same way you find regular programmers. Just ask them to document their code and have in the contract that the work done is work for hire. When the job is completed, you own the copyright. At that point, release it under the open source license of your choice. For details, consult the GNU website on assignment of copyright.

    --
    #fuckbeta #iamslashdot #dicemustdie
    1. Re:er... by Anonymous Coward · · Score: 0, Flamebait

      I am a biomedical researcher interested in having general-purpose,

      scientific programs...for my purpose, Cocoa applications...

      Whooo hoo ho ha HAAAA ha ha ha!

      While I have some programming experience, I have few connections to the

      industrial world.

      Don't feel bad, Mac users are living jokes not taken seriously by anybody

      except for their own kind.

      how do I find someone (individual or business) to write high-quality

      programs? Are there reputable contractors experienced in Cocoa?

      Try Starbucks, maybe you can find 1 or 2 candidates with experience in

      writing scientific applications for the iPhone.

      What sort of rates should I expect, to use as a starting point in

      negotiations?

      Expect a 500% "Oooh, shiny" markup right off the bat. Though this is the

      going rate for COBOL programmers, experienced Cocoa developers usually ask

      for additional perks such as clothing allowances for Banana Republic.

    2. Re:er... by burris · · Score: 2, Funny

      I don't think Banana Republic is quite right. John Perry Barlow, in an interview he gave about 15 years ago, described the NeXT software development contractors as "Unix Weenies by Armani."

    3. Re:er... by sed+quid+in+infernos · · Score: 1

      Be careful here. Simply saying "work for hire" in the contract does not necessarily make it so. Find a good form agreement recommended by a lawyer or a lawyer to draft a contract that includes an express IP assignment as well as work for hire provisions.

    4. Re:er... by Anonymous Coward · · Score: 4, Funny

      I dare you to edit video and create a tv show like I can

      Don't throw a tantrum, Turtleneck. You and every other MySpace kid or freshman in your second-rate art school create "TV shows" and "movies" with Final Cut Pro.

      So mister fuckface. tell me HOW you can with your shitty windows and shitty linux and extra shitty BSD capture, compost and edit a TV show or movie without making it look like a 12 year old did it in his basement

      Even a 12-year old in his basement could make "artsy" movies, TV, and photos using black and white with fades and soundtracks etc. Too much talent in the Mac pool, methinks. Mac software was designed for simpletons looking to "fluff" up their inner artiste'.

      I do work on my Mac that makes me money...

      I do work on macs that make me money too. I buy 'em from thrift shops and wipe 'em down, then sell 'em to idiots for $1000 and use the money to buy PC's.

      you wanking off all day to free porn found on google images does not impress anyone.

      I don't pay extra when I shouldn't. That money you would save if you bought a comparably-equipped PC could buy you a cute Pomeranian to go along with the rest of your gayness.

    5. Re:er... by Opportunist · · Score: 1

      I think that's what he knows.

      I think his question should have been "How do I find good OSS programmers?". From his article, I'm quite sure he knows that money will do the talking once he has someone for the project. I guess his problem is finding that someone, without that someone being just anyone.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    6. Re:er... by Anonymous Coward · · Score: 0

      If I had to take a guess, I would say you're more angry at yourself for picking Mac OS than you are at the GP. You understand that your platform has massive shortcomings and you make up for it by overhyping FCP and engaging in ad hominem attacks on the GP. Grow up.

    7. Re:er... by Zencyde · · Score: 0, Flamebait

      Umm... OS X is BSD.

      --
      What day is it? Could you please tell me?
    8. Re:er... by Anonymous Coward · · Score: 5, Informative

      Under English law, at least, this is entirely wrong. You will need to specify in the contract that any IPR developed belongs to you, and that the developer will take all steps to perfect this, including undertaking assignments.

      The developer is the author, and thus the default owner of any copyright work (source code) - as the commissioning party, you get nothing more than a limited licence, unless you specify it in the agreement. Plenty of companies have got caught out by this, and think that, by paying for development work, they necessarily own it.

    9. Re:er... by Markspark · · Score: 2, Insightful

      So mister fuckface. tell me HOW you can with your shitty windows and shitty linux and extra shitty BSD capture, compost and edit a TV show or movie without making it look like a 12 year old did it in his basement

      and how about the fact that Mac OSX is based of BSD? In my eyes, it's like saying linux sucks, but ubuntu is teh shiznitz!

      --
      i find your lack of faith in science disturbing!
    10. Re:er... by PDA_Boy · · Score: 0, Offtopic

      Mod parent up - this is vitally important.

    11. Re:er... by Peet42 · · Score: 5, Funny

      Adobe products suck, Everything else on your beloved PeeeCeee platforms sucks... Only FCP is a real tool.

      I beg to differ; I believe that you, too, are a real tool.

    12. Re:er... by Anonymous Coward · · Score: 1

      I lol'd like a retard. Kudos for putting some funny in my afternoon of non-working.

    13. Re:er... by Anonymous Coward · · Score: 0

      "That money you would save if you bought a comparably-equipped PC could buy you a cute Pomeranian to go along with the rest of your gayness."

      If you don't know UNIX, you are gay. That means most of Windows users. Mac users at least have the platform to learn it. And many "geeks" select OSX for its UNIX base.

    14. Re:er... by nine-times · · Score: 2, Insightful

      Actually, if you read the summary instead of just the title (no, I'm not new here), you'll see that he has a number of fairly specific questions:

      • How do I find programmers?
      • How hard is it to find Cocoa programmers?
      • What sort of prices should I expect to pay?
      • Will there be a problem with the fact that I want to release it to open source?

      So the GP post is answering these questions fairly well, actually. He's saying hire normal programmers like you'd hire any other programmers, with the employment deal including that you own the resulting copyright. If you own the copyright, you can release it under any license you choose.

      And make sure they document their code.

    15. Re:er... by MindlessAutomata · · Score: 4, Funny

      Just wait until he gets home from the coffee shop to reply to you. You're really gonna get it then, mister (fuckface).

    16. Re:er... by xouumalperxe · · Score: 4, Funny

      Dunno about TV shows, but I usually compost my manure by leaving out in a big heap, and making sure it's always moist.

    17. Re:er... by Craig+Ringer · · Score: 4, Insightful

      Tell that to someone who's used BSD.

      With BSD I have source code. I have a kernel I control. I have a window system that supports network display of applications natively. All my tools work from the command line, instead of having to do things from often-limiting GUIs. Said tools are also documented, which is a nice change from Mac OS X (where the docs for Apple tools are patchy, and rarely in the form of man pages). I can run BSD on any hardware I want instead of a restricted set of marked-up branded equipment. Oh, and did I mention the use of a sensible file system instead of HFS+ ?

      The same goes for Linux.

      Of course, I also have far fewer device drivers, far FAR fewer apps in many categories, less support for things like graphics tablets, and all sorts of other things than would be the case under Mac OS X (or Windows).

      Argh!

      Mac OS X has a POSIX subsystem based on a mixture of BSD and GNU tools, and a kernel that is in large part based on BSD's. Calling it BSD is a disservice to both BSD and Mac OS X.

    18. Re:er... by mweather · · Score: 3, Interesting

      So mister fuckface. tell me HOW you can with your shitty windows and shitty linux and extra shitty BSD capture, compost and edit a TV show or movie without making it look like a 12 year old did it in his basement.

      Ask these guys: http://orange.blender.org/

    19. Re:er... by Anonymous Coward · · Score: 0

      So mister fuckface. tell me HOW you can with your shitty windows and shitty linux and extra shitty BSD capture, compost and edit a TV show or movie without making it look like a 12 year old did it in his basement.

      I think you meant "composite." You'll learn what compost is when you're older (than 12).

    20. Re:er... by Otto · · Score: 4, Insightful

      Under the US Copyright Act of 1976, works made for hire belong to the person who did the hiring. The employer owns the copyright, not the employee.

      See http://www.copyright.gov/circs/circ9.html

      Of course, the law is complex, so it is best to specify that you get the copyright in the contract, to eliminate any doubt. But in general, when you hire somebody to produce something, you own the copyright.

      --
      - Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
    21. Re:er... by pdbogen · · Score: 2, Informative

      Although Parent presents himself as being only correct regarding English law, the main thrust of what he says also applies to US Copyright law.

      Refer to http://www.copyright.gov/circs/circ9.html for information about this.

      I don't have a car analogy, but it's pretty important to read and understand the document.

    22. Re:er... by Zencyde · · Score: 1

      Oh, I just thought it was amusing that he was referring to BSD as shitty when OS X is based off it. :) The fewer words you can put something in, the more of an ass you sound like. I did it in 4?

      --
      What day is it? Could you please tell me?
    23. Re:er... by CubicleView · · Score: 1

      I believe to compost a TV show would be a relatively simple task (in concept) but as such your not supposed to compost meat. It attracts flies and smells really awful etc

    24. Re:er... by moosesocks · · Score: 1

      This is interesting to me.

      How come this doesn't apply at all to patents and research environments?

      In most labs I've known, the researchers have absolutely no rights to their own work, and potentially receive no special credit for any breakthroughs that they might achieve.

      --
      -- If you try to fail and succeed, which have you done? - Uli's moose
    25. Re:er... by j-pimp · · Score: 4, Funny

      What a crock of shit. Mac is nothing more than a wannabe desktop publishing platform. Real video editing is done on a real workstation, like say SGI.

      1999 called and they want your troll back.

      --
      --- Justin Dearing http://www.justaprogrammer.net/ We're just programmers.
    26. Re:er... by elgatozorbas · · Score: 1
    27. Re:er... by NormalVisual · · Score: 3, Insightful

      The morons that make Cinerella cant program themselves out of a paper bag

      At least they can spell "Cinelerra" properly. You need to work on your use of profanity as well - using it too much tends to blunt the impact when it *does* get used. But, I guess you were too busy working on becoming a Video God to bother with such things.

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
    28. Re:er... by noc007 · · Score: 3, Insightful

      Yeah right stupid ass.

      Too bad they don't have anything lower than a -1

      So mister fuckface. tell me HOW you can with your shitty windows and shitty linux and extra shitty BSD

      Wow you have no idea about where the OS X kernel was derived from. It's a hybrid of the Mach and BSD kernels, both of which are clones of UNIX; kinda sounds like Linux.

      capture, compost and edit a TV show or movie without making it look like a 12 year old did it in his basement.

      Obviously you've never heard of a company called Avid. If you really want to get out of the Prosumer field and into Professional video editing and be taken seriously in the industry, you'd start with Avid. Avid's Media Composer (replacement for Xpress Pro) is their software only product for video editing. And they have compiled for both Mac and Windows.

      Adobe products suck,

      Bite the hand that feeds thee I see. Without Adobe to keep people interested in Macs durring Apple's wanning years, they'd probably would have gone under.

      Everything else on your beloved PeeeCeee platforms sucks...

      Wow, you really don't have a damn clue about what's under the hood of your beloved Mac. The Power PC processor is RISC based along with Alpha, ARM, MIPS, etc. Microsoft has compiled versions of NT 3.51 and 4.0 that will run on that Mac Power PC. Let's not exclude Apple's decision to abandon the RISC architecture in favor of CISC. Most, if not all, of the chipsets used in present day Macs are from the "PC" parts bin. Macs and PCs are the same damn hardware, just in a different packaging and a premium price put on anything with an Apple logo.

      Only FCP is a real tool.

      Spoken like a true Apple fanboy

      I do work on my Mac that makes me money...

      I work on "PCs" and sometimes Macs and that makes me money. What's your point? I'm sorry that editing videos of people's weddings is so difficult that you have to push aside your keyboard in favor of a slow mouse interface.

      you wanking off all day to free porn found on google images does not impress anyone.

      GIS isn't the best place to get free porn.

    29. Re:er... by Anonymous Coward · · Score: 0

      I dare you to edit video and create a tv show like I can

      Don't throw a tantrum, Turtleneck. You and every other MySpace kid or freshman in your second-rate art school create "TV shows" and "movies" with Final Cut Pro.

      So mister fuckface. tell me HOW you can with your shitty windows and shitty linux and extra shitty BSD capture, compost and edit a TV show or movie without making it look like a 12 year old did it in his basement

      Even a 12-year old in his basement could make "artsy" movies, TV, and photos using black and white with fades and soundtracks etc. Too much talent in the Mac pool, methinks. Mac software was designed for simpletons looking to "fluff" up their inner artiste'.

      I do work on my Mac that makes me money...

      trolls fail..

      I do work on macs that make me money too. I buy 'em from thrift shops and wipe 'em down, then sell 'em to idiots for $1000 and use the money to buy PC's.

      you wanking off all day to free porn found on google images does not impress anyone.

      I don't pay extra when I shouldn't. That money you would save if you bought a comparably-equipped PC could buy you a cute Pomeranian to go along with the rest of your gayness.

    30. Re:er... by danwesnor · · Score: 1

      As far as I can tell, most TV shows come ready for use as fertilizer. No composting required.

    31. Re:er... by sed+quid+in+infernos · · Score: 1

      The law regarding work for hire is complex. A work cannot be a work for hire in a contract situation (as opposed to regular employment) unless the work meets strict criteria. Moreover, merely specifying that the buyer owns the copyright in the original contract may not be enough. A separate assignment executed on delivery might be necessary, depending on a lot of factors.

    32. Re:er... by fishbowl · · Score: 1

      Honesty is the best policy. Don't pretend that they are developing a proprietary product and then decide to release it when it's done. START as an open source project and take advantage of community efforts if they present themselves.

      In fact, before you spend any money, I think you should do the hard parts first: Requirements gathering, specifications, and stakeholder expectations. You really can't hire programmers and expect these things to happen magically. Setup the project so that it has a chance for success, and your labor might come to you more inexpensively than it would otherwise.

      I personally would prefer that you specified in the contract that you wanted to own the copyright so that you could release it under the GPL or whatever, instead of hiding this information. If you were upfront with it, (which people seem to be advising you not to do!), I could be persuaded to license my work under the GPL (or your license), while retaining the copyright, and this would make me much more likely to do business with you.

      Unfortunately, "Anonymous" does not provide any way for us to contact him.

      I happen to have Cocoa and OpenStep experience, and have done plenty of biotech research. I'm also too busy to pay much attention to Anonymous.

      --
      -fb Everything not expressly forbidden is now mandatory.
    33. Re:er... by darthnoodles · · Score: 1

      Wow, the same law is referenced in two posts and they say the opposite thing regarding the law. One is mod'ed Informative and one is mod'ed Insightful.

      I can see the future and it involves a cage match.

      *ding,ding*

    34. Re:er... by Marillion · · Score: 1

      Shameless plug warning ....

      Some research institutes already have established IT infrastructures with biomedical domain knowledge. For example, the Cincinnati Children's Research Foundation. http://bmi.cchmc.org/

      --
      This is a boring sig
    35. Re:er... by Der+PC · · Score: 1

      This statement is valid for most of Europe. The author is always the copyright holder. In some countries (like f.ex. Iceland), the laws are strict enough that you can't hand over the copyright. You can however hand over the distribution rights and right of ownership. But the copyright defaults to you, and identifies you as the author.

      --
      This signature is DRM protected. By the DMCA, you are not allowed to counteract or oppose to it.
    36. Re:er... by im_thatoneguy · · Score: 3, Informative

      Oh my! Only Macs can edit video?

      That's weird and here all these years I thought Avid MC systems running on Windows were the mainstay of feature film and television editing.

      No editing applications for Linux worth a damn? Bizzare and here I thought Smoke combined with FFI were the ultimate online conforming tool for ads.

      No compositing tools? Shake, Nuke and Fusion aren't enough? All of which have or have had Windows, Mac and Linux builds.

      Adobe sucks? That's why every single VFX workstation on earth has a copy of Photoshop? And here I thought all these years it was because it continues to offer the latest and greatest in 2D tools.

       

    37. Re:er... by Anonymous Coward · · Score: 0

      Under English law, at least, this is entirely wrong. You will need to specify in the contract that any IPR developed belongs to you, and that the developer will take all steps to perfect this, including undertaking assignments.

      The developer is the author, and thus the default owner of any copyright work (source code) - as the commissioning party, you get nothing more than a limited licence, unless you specify it in the agreement. Plenty of companies have got caught out by this, and think that, by paying for development work, they necessarily own it.

      who modded this informative?
      This is completely wrong!

      The author always remains the real author. The copyright can be easily assigned to the person he works for, this is one of the most usual situations.

    38. Re:er... by mario_grgic · · Score: 1

      Adobe Photoshop, Premiere Pro and After Effects are actually more powerful tools for creating images, animations and movies than Final Cut Pro and currently they work better on PC then they do on Macs.

      And if you think I have something against Macs, don't. I switched to Macs and OS X at home and currently have 8 core MacPro, 24'' iMac, and 13'' Macbook.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    39. Re:er... by kabloom · · Score: 1

      Given the phrase "English law" it seems that you might all be arguing about different countries. The commissioning party is advised to seek legal advice in their own country and not rely on slashdotters to tell them what the default is in their country.

    40. Re:er... by Craig+Ringer · · Score: 1, Flamebait

      And good on you.

      Mac zealots, UNIX/Linux zealots, Windows zealots, and the one lonely Plan 9 zealot really all need to get a life. Deflation of their egos is generally welcomed by everybody other than them - though more often than not attempts just bounce off their mindless rhetoric, circular reasoning, and utter unshakable certainty. The more factually incorrect their beliefs the better.

      The Mac people are perhaps the worst. (Note: Many, many years ago when Mac OS 7 was new I used to be one of them - argh!). They can change their story in an instant. "Intel sucks, it's slow, the PowerPC 704e/G3/G4/G5 is the best thing ever" -> "PowerPC is old and crappy, get an Intel CPU, they're great". And that's just one of the more recent examples. Grr. Suuuure, Pascal is the great new language of the future.

      Then again, there's nothing quite like hearing a Linux zealot patiently explaining to someone who's having issues with Quicken on their home PC how much better off they'd be if they just install Gentoo or build Linux-from-scatch then install and configure SQL Ledger. The fact that the user in question can't even install the update to Quicken that'd fix the issue by clicking "install update" when automatically prompted doesn't seem to faze them. (This is being written on an Ubuntu box that's also compiling a test SCSI controller bugfix patch in qemu svn, by the way; I'm a Linux user but still loathe the zealots.)

      Windows zealots ... well, I'm not sure I've met one. Weird, really, given that it's exactly the same sort of mix of great and awful as the other major platforms, albeit with different pluses and minuses.

      Props for effort, but I think your comment probably bounced off just as thoroughly as they usually do.

    41. Re:er... by Anonymous Coward · · Score: 0

      well played

    42. Re:er... by Zencyde · · Score: 1

      If there was anything to mention, it would be the fact that you brought up Plan 9. I am amused to no end, sir. Someone mod this guy up. :)

      And yeah, I was a Mac fanatic up until OS X. Now I hate what Apple has become. Their business practices and their userbase both have the tendency to make me feel queasy.

      --
      What day is it? Could you please tell me?
    43. Re:er... by Anonymous Coward · · Score: 0

      Under the US Copyright Act of 1976, works made for hire belong to the person who did the hiring. The employer owns the copyright, not the employee.

      See http://www.copyright.gov/circs/circ9.html

      Of course, the law is complex, so it is best to specify that you get the copyright in the contract, to eliminate any doubt. But in general, when you hire somebody to produce something, you own the copyright.

      But what if the employee uses a large number of their own previously built libraries and the final product is just a shell calling those libraries? Just curious.

    44. Re:er... by silanea · · Score: 1

      [...]

      Windows zealots ... well, I'm not sure I've met one. Weird, really, given that it's exactly the same sort of mix of great and awful as the other major platforms, albeit with different pluses and minuses.

      [...]

      So far I've only met Windows zealots in the corporate environment, and those almost always turned out as either those who make money off the Windows ecosystem and want to keep it nice and untainted to avoid the additional cost and effort for supporting several platforms or those whom you could sell Ubuntu as the next Windows iteration if you just told them so.

      The majority of Windows users I have encountered so far agree that Windows is far from ideal. They are simply too lazy to look for alternatives.

      The minority of those Windows users that actually is informed enough to be able (and willing) to make a switch is held back by specific requirements and issues, mostly software that can't be replaced but won't work with Wine and more exotic hardware that isn't supported under any non-Windows OS (DVB receivers are a big issue apparently. Couldn't say, I don't use them.).

      --
      Rudolf Hess edited Mein Kampf. He was the very first grammar nazi.
    45. Re:er... by Anonymous Coward · · Score: 0

      "release it under the open source license of your choice. For details, consult the GNU website"

      Not to start a flame war, but there are other open source licenses than GNU y'know.


      http://en.wikipedia.org/wiki/Open_source_license

    46. Re:er... by legirons · · Score: 1

      Tell that to someone who's used BSD.

      With BSD I have source code. I have a kernel I control. I have a window system that supports network display of applications natively. All my tools work from the command line, instead of having to do things from often-limiting GUIs

      BSD? Is that like gentoo?

    47. Re:er... by Anonymous Coward · · Score: 0

      I have a call from 1996 on the line for you. Says it's about a joke.

    48. Re:er... by Anonymous Coward · · Score: 0

      That's not a movie, it's like 10 minutes long...

    49. Re:er... by pdbogen · · Score: 2, Informative

      The issue here (which *can* be confusing) is that hiring a contractor is not implicitly "work for hire," and, thus, the contractor would own the copyright and be considered the author.

      The crux of it is that a contractor isn't an "employee." A good rule of thumb is that someone who is paid a salary or wage and receives benefits is an employee. After that, it becomes less clear.

    50. Re:er... by Tubal-Cain · · Score: 0, Flamebait

      Oh, and did I mention the use of a sensible file system instead of HFS+ ?

      The same goes for Linux.

      In OS X's defense, there is an option to format a drive as "UNIX Filesystem".

    51. Re:er... by mysidia · · Score: 1

      just ask them to document their code and have in the contract that the work done is work for hire.

      That's not enough. Many programmers will use personally-developed proprietary libraries for custom software.

      As a work for hire, the person who paid the contract owns the part of the work that was done for hire, but not the proprietary framework that I developed for writing all my software projects in before starting their specific project.

      I would extend a worldwide license to use the proprietary library calls that I develop the software to use.

      But this does not extend to a right to redistribute source code to the parts of my libraries that I enable for the project.

      (Of course.. for optimization reasons, portions of the libraries that are not used are excluded from the compiled obfuscated .C and .H file)

      The only way they may really prevent this is by specifying what type of licensing external tools the software uses or links against may be licensed under

      Pretty much rules out many types of Windows development like DirectX apps, however, if binary-only or non-GPL libraries are excluded.

    52. Re:er... by mweather · · Score: 1

      And?

    53. Re:er... by Anonymous Coward · · Score: 0

      Hey you stop a make fun of people you blow job!!!

    54. Re:er... by nine-times · · Score: 1

      No one said to lie to the programmers. There's no reason to lie. Obviously if you turn over the copyright of your work to your employer, you leave it open to that employer to decide how to license that copyrighted material. Your employer can license that material under any number of licenses, and even multiple license at the same time.

      If you're a programmer and you want to retain control of how your code is licensed, then you don't hand over the copyright to anyone. The right to decide what license to release the code under is explicitly what the copyright is.

    55. Re:er... by Bluebottel · · Score: 1

      Sucessfull Troll +300XP

    56. Re:er... by fishbowl · · Score: 1

      >If you're a programmer and you want to retain control of how your code is licensed, then you don't hand over the >copyright to anyone.

      I think you missed my point: If I know they are going to release my work under the GPL, (e.g., it's in my contract from the beginning) I can be persuaded to license my work that way. In the OP's case, this would be the difference between being able to get my contribution or not. In my case, it's less about money and more about conflicts of interest with the academic institution where I'm employed.

      I wish the OP wasn't anonymous. I'm genuinely connected to an organization that might be able to help him.

      --
      -fb Everything not expressly forbidden is now mandatory.
    57. Re:er... by rgviza · · Score: 1

      OSX uses a Mach kernel and is "Mach based" (specifically the kernel is called XNU). You can't blame that on BSD though NeXT used a lot of ideas from BSD when designing Mach. XNU, however, is not a "BSD kernel" therefore it's not "BSD based" any more than linux is. There's a lot of BSD heritage in linux as well but nobody says linux is "BSD based".

      OSX is not BSD or based off of it. It's Mach based.

      Apple has a lot of BSD code (stacks, subsystems, etc etc) on their system, as well as the ability to run BSD and GNU software, but it's a Mach system, not BSD. Moreover a big difference between Mach and BSD is that Mach is a "microkernel". BSD is monolithic with a few microkernel features. There's a HUGE conceptual and philosophical (as well as performance) difference.

      Despite all of this, Apple contributes to FreeBSD as well as using a lot of FreeBSD code in XNU which is where this confusion comes in. Saying it's "based" on BSD just isn't correct.

      Here's a link written by someone that knows what they are talking about which explains OSX's lineage: http://www.sdbug.org/pipermail/sdbug/2004-January/002519.html

      -Viz

      --
      Don't kid yourself. It's the size of the regexp AND how you use it that counts.
    58. Re:er... by mutsu · · Score: 1

      And make sure they document their code.

      I wish you luck on that one. :-)

  2. Cash. by Gordonjcp · · Score: 5, Insightful

    Simple as that.

    1. Re:Cash. by Ideally+Nowhere · · Score: 2, Informative

      OR, sucker a bunch of graduate students into doing it for credit/thesis. You just need a professor to go along with it, which involves promise of money.

    2. Re:Cash. by Anonymous Coward · · Score: 0

      at the nearest high school.

  3. I think you are asking the wrong question ... by hedronist · · Score: 3, Insightful

    Let us review some basic truths:

            1. Every good work of software starts by scratching a developer's personal itch.
            http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/

    I don't think 'wanting someone else to do it for you' quite falls into this category.

    1. Re:I think you are asking the wrong question ... by Sneftel · · Score: 4, Insightful

      Getting paid is, for most developers, a "personal itch" worth scratching.

      --
      The opinions stated herein do not necessarily represent those of anybody at all. Deal with it.
    2. Re:I think you are asking the wrong question ... by Dan667 · · Score: 1

      Not thinking of it does not make it a cool problem that would be interesting to a competent programmer to solve. "Not invented here" should be stomped out of everyone that pushes it.

    3. Re:I think you are asking the wrong question ... by MrNaz · · Score: 4, Insightful

      Getting paid for as little work as possible is the real nature of the itch. Recognize it for what it is; if your developers don't have any motivation to write excellent code, they won't. You'll end up with the barest minimum that satisfies your requirements list and any use cases you gave them, and not one iota more.

      I say find a few other people who are in your same field who perhaps are more code minded. Get a group together with a common itch, and organize yourselves to do it together. For small niche products, that's pretty much the only way. Anything else will either be prohibitively expensive (hiring top notch developers with a track history to maintain) or result in mediocre results (hiring developers whose interest stops at the paycheck).

      --
      I hate printers.
    4. Re:I think you are asking the wrong question ... by chrylis · · Score: 5, Insightful

      Perhaps so, but if the programmer is aware that his code will be available for future customers to see, that provides a pretty strong incentive not to churn out crapware. This works in most of the rest of the economy, and it's hard to believe on faith, as so many seem to, that it can't work for software. I doubt that all of the programmers hired to work on Apache or MySQL always feel pumped about writing whatever regression test needs doing, but even if they had no personal pride in their work, there would be the external incentive.

    5. Re:I think you are asking the wrong question ... by Firewild · · Score: 1

      But what if you have an itch, but implementing that itch is beyond your capabilities? It sounds like this doctor has a need for software that does a certain thing, and wants it to be available for everyone to use (most likely, other doctors). That doesn't sound like a bad thing to me. Especially if it allows other people to review the code for mistakes, particularly important if this software is involved in life or death decisions (immediate or prolonged, doesn't matter the time interval.)

    6. Re:I think you are asking the wrong question ... by Opportunist · · Score: 1

      Don't know about you, but it sure ain't mine.

      Sure, I get paid to write code. But I don't write code to get paid. I write code that I want to write, and someone actually is stupid enough to dump money on me for that. We are currently fortunate that we may, to some extent, actually choose our work place. We're not forced to work in a field that isn't to our liking. Don't like SQL? Don't have to do databases, you can write drivers. Don't like that? Maybe frontend design and implementation is more your thing. People are sought after in pretty much every field, you have the free choice.

      I think money is about the worst motivator for a programmer. He can get that anywhere. Any company that needs programmers will give him that. If you don't have anything more interesting to offer, I'll probably not stay for long.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    7. Re:I think you are asking the wrong question ... by Tubal-Cain · · Score: 1

      Very good point. Mention to the programmer that he will be able to use this as examples of his work that future prospective employers may like to see.

    8. Re:I think you are asking the wrong question ... by OneMadMuppet · · Score: 1

      1. Every good work of software starts by scratching a developer's personal itch.

      You know Microsoft sell a cream for that...

    9. Re:I think you are asking the wrong question ... by dubl-u · · Score: 4, Insightful

      Every good work of software starts by scratching a developer's personal itch.

      That's true, but you're not interpreting it broadly enough.

      Sure, if he finds a developer who wants this software already, then that's great. But there are other ways to get people personally engaged in a project.

      One is to make sure it involves technical challenges the developer finds interesting. E.g., a good Cocoa developer who's wanted to use Core Data but hasn't. Or, assuming that statistics play a part here, a developer who has always wanted to learn about that. That's not enough on its own, but it's a good start.

      Next, find ways to get the developer engaged in the domain. A developer with an interest in this kind of science would be great. A lot of good developers started out studying something else, so it's possible he could find somebody with graduate training in his domain.

      Third, connect the developer in a personal way to the people who need the software. If this is lab software, then just pay him to spend a week working in the lab with the future users. Have development happen as close as possible to the users. Maybe in the same room, and certainly close enough that they share the same break areas and would naturally go to lunch together.

      Fourth, get a good feedback loop going. Show demos every week or two to actual users. As soon as possible, get an alpha version actually in use, and release updates every week or two. Get everybody together weekly over coffee to talk about how it's working. And occasionally get people together over beers to talk about the bigger picture.

      Do all these things, and the developer's personal itch is to make something great that satisfies people he has come to care about, people working in a context he understands intuitively.

    10. Re:I think you are asking the wrong question ... by 2short · · Score: 3, Insightful

      "if your developers don't have any motivation to write excellent code, they won't."

      Excellent developers write excellent code partly because they understand lousy code is more work to write.

      Such developers are, of course, hard to find and expensive. If you're not going to find and pay someone really good, you probably want to do it yourself. It will probably cost more (counting your time) and won't be as good, but that will be true for hiring mediocre developers too. In the future, it will be better to have bad code you wrote then bad code someone no longer available wrote.

    11. Re:I think you are asking the wrong question ... by Chyeld · · Score: 2, Insightful

      Decades ago, a professor in college asked me what I considered was most desirable trait to look for in a potential hire.

      My response was, "I want lazy people."

      Among all other traits, maximizing laziness is the quickest way to efficiency.

      If you pretend that all other traits could be rolled into a single axis of which the two extreme ends could be labeled "Stupid" and "Smart", and then figured how much work got done over the spectrum of Stupid&Smart vs Lazy&HardWorker it would look like this:

      Stupid Lazy doesn't do work. You pay them and get zero units out of them.
      Stupid HardWorker does two units of work, wrong. You pay them and still get zero units out of them.

      Winner, Lazy. Hardworker cost you more in materials.

      NotStupid and NotSmart Lazy works just hard enough to get paid, finding a job is unpaid work. You pay them and get one unit of work.
      NotStupid and NotSmart Hardworker does two units of work. You pay them and get two units.

      Winner, Hardworker. Lazy didn't produce as much

      Smart Lazy realizes that thinking long term pays off and works out a way to produce one unit of work for less than half the effort. You pay them and get two or more units.

      Smart Hardworker realizes the same and does the same and combined with their work ethic, produces more than four units. However, because management notices that Smart Hardworker is pumping out over four units of work for each you pay for, he's just been promoted to your job.

      Winner, Lazy. He doesn't want your job. Plus Hardworker now needs to hire a replacement for their old position.

      Of course, I was a comp sci major in an engineering school and the professor was teaching a business class, so my answer was tounge in cheek.

      But on the other hand, I think you are greatly underestimating the power of pride in your work. Even if someone is lazy, they realize doing a good job means happy clients. Happy clients mean more potential for work in the future. And if they don't realize that, perhaps crap work isn't because they are lazy but because they aren't able of making anything better.

      If your contractors provide you crap, you either need to review how you treat them or how you pick them.

    12. Re:I think you are asking the wrong question ... by Krishnoid · · Score: 1

      I don't think 'wanting someone else to do it for you' quite falls into this category.

      Neither does SugarCRM. But a developer who has a personal interest in being a part of furthering the field of research you do, even if somewhat removed, will share that itch with you.

    13. Re:I think you are asking the wrong question ... by Anonymous Coward · · Score: 0

      Perhaps so, but if the programmer is aware that his code will be available for future customers to see, that provides a pretty strong incentive not to churn out crapware. This works in most of the rest of the economy, and it's hard to believe on faith, as so many seem to, that it can't work for software. I doubt that all of the programmers hired to work on Apache or MySQL always feel pumped about writing whatever regression test needs doing, but even if they had no personal pride in their work, there would be the external incentive.

      Note much of one. When did you last trawl through the hundreds of thousands of lines of code in the previous employer's svn repositories to try to identify which specific lines of code the candidate wrote or edited, in order to determine whether his or her particular input was crapware? Most hiring processes go no further than "yup, you've got the right keywords on your CV, and you answered our irrelevant 'why are manhole covers round' questions in a way we happened to like".

    14. Re:I think you are asking the wrong question ... by Anonymous Coward · · Score: 0

      Open Source simply does not work for applications that don't attract either big businesses (support fees) or developers (code for free). It is very unlikely for something like that to be funded by a single person, or by donations (how much would you donate to vaporware?).

    15. Re:I think you are asking the wrong question ... by corbettw · · Score: 1

      Except this guy isn't a developer. Or did you not read that part of the summary?

      --
      God invented whiskey so the Irish would not rule the world.
    16. Re:I think you are asking the wrong question ... by AmberBlackCat · · Score: 1

      I don't know. If I'm getting paid to do it, the last thing I want to do is give my best to somebody who is going to make it so I'll never get paid to do it again. I'd be compelled to give him something that gets the job done and makes him happy, but I can still beat later if I have to. I'd be more compelled to give my best to somebody who is not releasing the source code. If he wants to release my best to the world, he should be paying me with my future loss of income in mind, to make it worth my while. It's not that I'm against free software. It's just having your source of income cut off will hurt.

  4. How Do I Get Open Source Programs Written For Me? by jollyreaper · · Score: 4, Funny

    How Do I Get Open Source Programs Written For Me?

    Offerings of pizza and beer usually work.

    --
    Kwisatz Haderach
    Sell the spice to CHOAM
    This Mahdi took Shaddam's Throne
  5. a few ways by i.r.id10t · · Score: 4, Informative

    If you find a project similar to your needs on freshmeat, sourceforge, etc. you can always contact the developer and ask them to modify/extend, etc.

    A second option is to look at rentacoder.com - put out a request, your budget, and include the requirement about being F/OSS software. Get your bids, make a choice, etc.

    --
    Don't blame me, I voted for Kodos
    1. Re:a few ways by lysergic.acid · · Score: 4, Insightful

      If you find a project similar to your needs on freshmeat, sourceforge, etc. you can always contact the developer and ask them to modify/extend, etc.

      that's actually a very good idea. i'm surprised nobody thought to mention this earlier. there are already tons and tons of open source projects out there. there's no need starting a fresh new project when there's already an open source application that fits your needs and is much more mature and already has a development community around it.

      if you're willing to pay the developer(s), there are tons of open source projects out there that could use the funding. who knows, maybe one of them is exactly what you're looking for. it's hard for open source projects to reach critical mass when everyone wants to create their own application rather than contribute to an existing project that might fulfill the same objectives.

      one of the great advantages of open source is that there is room for both cooperation and competition. even if you don't find a project that fits your needs perfectly, you might be able to fork an existing implementation that you can use as a starting-off point. that reduces the amount of redundancy in the code space. and if you can revived a dead project, then even better.

      i think part of what kills off open source applications is a perceived lack of interest, which is partially due to the dispersal of resources over too many redundant projects. luckily, FOSS being what it is, anyone can pick up a dead or inactive project and resume development on it. so before you go off and contract a developer for a brand new open source program, see what's already out there that might fit your needs.

    2. Re:a few ways by dubl-u · · Score: 1

      A second option is to look at rentacoder.com - put out a request, your budget, and include the requirement about being F/OSS software. Get your bids, make a choice, etc.

      This is a reasonable option for throw-away software, but the original poster is a non-programmer looking for something solid and reusable, qualities he can't personally judge.

      For any sort of fixed-price contracting, the incentive for the contractor is to develop something minimally compliant and then flee. Reusable code requires discipline and polish. Because reuse always comes later, and because it's hard to measure or prove shoddy construction, odds of getting a christmas-paper-wrapped turd are high.

      I personally haven't tried rent-a-coder, so maybe they are miraculously different there. But I have a lot of experience with outsourced development, generally as the guy who has to clean up the mess. 100% of the fixed-price jobs I've seen were junk, and probably 85% of the time-and-materials jobs were also throw-aways, where the code base had so much technical debt that it would be cheaper to throw away and rebuild than to try to reuse.

      I think his better bet is to find some local former grad student turned developer and hire him to work on the stuff intermittently but indefinitely. If the developer believes that he will have to live with the code for the foreseeable future, and in particular if he believes he'll be the one reusing it, he'll have the incentive to do a good job.

    3. Re:a few ways by Nesman64 · · Score: 1

      One of the downsides to having your code done by the lowest bidder is: it's being done by the lowest bidder.

      As a coder, it's very difficult to get reasonable pay from these sites because there is always someone with a lower cost-of-living that will undercut your best price.

      --
      coffee | nose > keyboard
    4. Re:a few ways by discogravy · · Score: 1

      I have tried this several times with very discouraging results. I need a particular bit of code -- shouldn't be too difficult, it's a common language and implentation w/ a more or less well known API -- Specifically I am looking for a plugin for mu-wordpress that does authentication via LDAP/Active Directory and is aware of LDAP/AD Groups. There's a plugin that exists but it doesn't care about groups, rather OUs; There's a plugin for the non-multiuser version of WordPress that does exactly this but it fails miserably in the MU version -- the author of this version is not-contactable and his personal site is broken good and hard). But I'm not a programmer, I do networking and servers and end-user support and mostly security/infrastructure. So I hit up the related sites (the product, mu-wordpress, has forums and a dev community as well as a couple of companies and prominent developers that advertise that they do work for hire etc etc). None of them want anything to do with it. One refers me to the another, who says 'we are too busy, but try XXXX' who answers back that they put all their effort into the community project and so cannot. The only thing left to me is to wait and hope that someone does it or learn PHP and how to query AD's LDAP implementation to auth against it.

    5. Re:a few ways by Sentry21 · · Score: 1

      Rentacoder.com is widely regarded as drastic fail. It's full of unrealistic contracts for improbable sums that get spammed with lowball bids by individuals with no capacity or intention to complete or even understand the requirements.

      People put out requests that make no sense ('I want a Facebook clone, only better and written in AJAX and .NET, but it needs to be done by next weekend and I'll pay $150 for it') which are snapped up by untalented or incapable programmers from India, China, Mexico, and various other countries*, who accept lowball bids, perform 8% of the work allotted, and then expect payment.

      * (Which is not to say all programmers from these countries are untalented or incapable, just the ones that bang out crappy work on rentacoder and other sites; the capable ones get real work and keep their dignity)

  6. If you are paying the bill... by Ngarrang · · Score: 5, Informative

    ...I should think you would be determining the end result of the program. If I read the question correctly, that is. You want to pay someone to write a program or programs. Then, you want to release them to the world as open source. The contractor would not own the code if as part of the RFC you stated the code would not be owned by them in any manner. The programmers may insist proper attribution in the source code, but attribution does not imply ownership.

    --
    Bearded Dragon
  7. The more specialized, the more expensive by Anonymous Coward · · Score: 4, Insightful

    That's the basic rule. Based on what we pay for our contractors (Qt experts -- they are really hard to come by), count on between 600 and 1000 euros a day.

    1. Re:The more specialized, the more expensive by Anonymous Coward · · Score: 0

      I agree - Qt would be the way to go for this... Cocoa programmers are going to be quite rare, and if you want any open-source traction (e.g. for the open source community to actually contribute to your project) Qt will give the finished product a native OS-X interface AND allow it to work on everyone's favorite OS (even if that favorite isn't OS-X).

      To the parent, where are these Qt expert jobs posted?

    2. Re:The more specialized, the more expensive by w3woody · · Score: 1

      That's about the same in the United States as well.

      Unless you can find an individual who has a personal itch to scratch or a university writing something similar that is in alignment with what you're doing, or there is a private company already trying to enter your market and is willing to allow you to give it feedback on it's software to add the features you want, then you're looking at perhaps $85/hr to $130/hr for someone who has experience and has specialized skills.

    3. Re:The more specialized, the more expensive by Anonymous Coward · · Score: 0, Funny

      Damn, for that kind of money, I'm willing to become a Qt expert. Not kidding. Please post your contact details :)

    4. Re:The more specialized, the more expensive by Anonymous Coward · · Score: 0

      600-1000 Euro a day? Isn't this a little high?
      That would equate to ~230,000 euro a year annual wage.

      That seems awfuly high for a devloper wage.

    5. Re:The more specialized, the more expensive by Anonymous Coward · · Score: 0

      What the hell. Qt is like the easiest framework in existence to learn. In one month you will have an "expert" in Qt.

      And since KDE is build on Qt you should be able to find loads of them very easily.

    6. Re:The more specialized, the more expensive by Anonymous Coward · · Score: 0

      ... and that's expensive, how? That's the rate for a junior developer in Western Europe. From 250 euros / hour on, that's starting to get expensive.

    7. Re:The more specialized, the more expensive by Anonymous Coward · · Score: 0

      Currently high end contract Cocoa programmers tend to be charging around $150-$200 an hour, depending on a lot of factors. I imagine they are more common than Qt experts, but iPhone has caused a sudden surge in demand.

    8. Re:The more specialized, the more expensive by bpepers · · Score: 1

      I'm a Qt expert (12 years developing with it!) and looking around for work. Contact me if you are looking for more Qt experts!

  8. The Academic Route by EaglemanBSA · · Score: 5, Insightful

    Perhaps you could contact a University with a good CS program, or something of the like. You could fund a few grad students to develop your program for beans, with the stipulation that the source code be GPL'd. Grad students can be cheap, believe me - I am one, and I make a whole lot less than minimum wage.

    --
    Quiz: True or False -- On a scale of 1 to 10, what is your middle name?
    1. Re:The Academic Route by tzhuge · · Score: 5, Insightful

      I second this idea... especially the grad student part. Better yet, find a way to make this work part of a thesis for one of these students... then you might not have to pay them at all. :)

    2. Re:The Academic Route by rnaiguy · · Score: 1

      If you're at a university, undergrads often work just as well, and there are tons of them looking for work/study (cheap) or "independent study" (often free) jobs. Advertise and see what you get.

    3. Re:The Academic Route by Anonymous Coward · · Score: 0

      If you continue pretend you work 80 hours a week you make less than minimum wage. If you're like 99% of grad students and put in _real_ 5-15 hours a week you're probably doing quite well hourly...

    4. Re:The Academic Route by Anonymous Coward · · Score: 0

      Is there any central website for student jobs? I need some help with "Ajax" based application, Where can I find grad students?

    5. Re:The Academic Route by Abcd1234 · · Score: 1

      You could fund a few grad students to develop your program for beans

      Yeah. Problem is, if a maintainable, well-design result is your goal, a grad student might not be the greatest idea... ;)

    6. Re:The Academic Route by Anonymous Coward · · Score: 0

      that's how many hours per week i work at my full time gig...

    7. Re:The Academic Route by fiziksphreak · · Score: 1

      I definitely agree. I am an undergrad working on my CS degree and I volunteer in a physics research lab writing custom simulation software. I do it because I will be listed as a coauthor in articles submitted to research journals. I intend to go to grad school and that is a make or break selling point at most decent schools.

    8. Re:The Academic Route by rockmuelle · · Score: 4, Insightful

      No! No! No!

      CS grad students are in their program to do research, not develop software for other departments. Their time should be spent working towards their thesis. There is no research value in applying software engineering practices to develop an application for a researcher in another field. I know some schools allow theses along the lines of "A Software Framework for Cool Science Problem X", but these types of projects only shortchange the CS student. The projects are simply software engineering and should be handled by software engineers, not potential researchers.

      There's also the problem that most CS grad students have never developed large scale software and are essentially in the "0-3 years experience" range. While they are usually very bright, they are not skilled practitioners yet. The code they develop will have all the same problems that plague young developer's code: little reuse, lots of reinvention, tendency towards trendy solutions (Oh! Let's do the whole thing as an Eclipse Plug-in/OO Framework/Scheme Interpreter/etc), and overly clever solutions. If the research wants to learn software engineering, their time is much better spent earning decent wages at a real software company with people who can provide proper mentoring.

      Finally, there is the conflict of interest. A researcher's main goal is to perform research and publish papers. Software does not count as a publication. Thus, the software will be developed up to the point where there is something to publish and not much beyond. And, once the student completes their degree, they are off to greener pastures and support will quickly dry up.

      So please: Stop using CS grad students as software developers!!! It hurts everyone!!!

      -Chris

    9. Re:The Academic Route by Anonymous Coward · · Score: 0

      This is the typical of professors, and, sadly, grad students buy in. If you able to write commercial quality software, why work for beans? Use your brain, do real software development for a contracting firm. The idea of exploiting grad students to benefit the professor's cv (or worst his income) is sad, but tolerated.

    10. Re:The Academic Route by Anonymous Coward · · Score: 0

      God forbid that we have the CS grad students do something that's actually useful...

    11. Re:The Academic Route by VirginMary · · Score: 1

      Student programmers are crap! We hired 4 different student programmers from a pretty decent CS department over the last 9 years. 2 were undergraduates. Students' priorities are to pass their classes and not to work for you. Furthermore, CS programs, while teaching some useful skills, are not software engineering programs. Most of their projects are small toy projects monitored by graduate students who have neither the time, skill nor inclination to determine whether a program is readable and maintainable. Basically most students and recent graduates are terrible hack programmers. I have also worked with recent graduates. They may stay with you for 3 years and then it's "thanks for the great training" and they'll move on, applying what you taught them while paying them a decent salary and benefitting a new employer. So, just stay away from anybody without several years of full-time development work. I also suggest giving applicants a quiz. There are so many pretenders out there it's not funny! I found that about 9 out of 10 C++ programmers can't even implement strcmp and can't answer basic questions about how the language works. It's really sad but it appears that in the software development world there are more incompetent people being employed than in probably most other fields. According to the excellent "Code Complete" there is a 20:1 ratio in productivity of a good programmer to an average programmer. I can easily believe it. I have been a programmer for over 20 years and I read lots of programming related books but I still find many programmers that don't even read a single book about programming per year. Many so-called "programmers" have no real interest in programming.

      Some people here have suggested that it makes no difference whether a programmer works on open-source vs. closed-source projects as long as they're being paid. Bullshit! You want a person that is excited about open-source work. Motivation makes a big difference in productivity, duh! I am getting paid to work on an open-source project and I love it! It certainly keeps me more motivated than just the need to eat.

      --
      When 1person suffers from a delusion,it is called insanity.When many people suffer from a delusion,it is called religion
    12. Re:The Academic Route by Metasquares · · Score: 1

      I put in as many hours of work as I need to get my work done well. That should be the requirement for any job. If that happens to be 3 hours a week, so be it; the system is not challenging me enough to require more of my time. Paying for time spent rewards inefficiency.

    13. Re:The Academic Route by Anonymous Coward · · Score: 0

      Why can they find a grad student, who is new, and get them to work their project into their thesis.

      If they aren't developing software while there they will fail when they reach the corporate world.

    14. Re:The Academic Route by sorak · · Score: 1

      I second this idea... especially the grad student part. Better yet, find a way to make this work part of a thesis for one of these students... then you might not have to pay them at all. :)

      The problem with GPs suggestion of giving the project to a CS department is that the programmers are mostly inexperienced, not putting in forty hour weeks, are dividing their time between working for you and studying for the test (with the test getting a higher priority), and are given a relatively short time to crank out a product.

      What I like about your idea, is that, although it is probably a lone effort, getting a grad student to devote three semesters to the project will ensure that by the end, you will be seeing quality work. It will cost a great deal of time, but it will also provide some grad student with a very valuable experience.

      But, if there is a nearby CS department like the one at my alma-mater, then they offered an undergrad class in Software engineering, and graduate level courses in requirements elicitation, validation & verification (testing), Software Design, three semester thesis options for grad students, and three semester capstones to their students. This department was very interested in getting ideas for projects that they could pass on to these classes.

      He could consider breaking the project up, proposing the test plan as a project for the V&V class, a set of design candidates as a project for a design class, etc...If he does not have a great deal of money to throw at the project, then he could probably get a great deal done by investing a little time. At least then, you could get some preliminary ideas fleshed out, which could be handed off to whoever you are hoping could produce the final product.

      P.S. That makes me think...I had a project management class, which pretty much became "Software Engineering III". I'm wondering how that would have worked out, if one of our projects had been to take the professor's idea, to determine what his options are (on campus, looking for existing open source projects that could be adapted, etc), and to figure out a way to get the project started (even if it simply means developing a plan for how the project will be undertaken next semester). But I haven't really put enough thought into this to know if it could work. I'm just floating this thought out there, in case someone else finds the notion interesting.

    15. Re:The Academic Route by plu5even · · Score: 1

      You might look around for a Core at your university. Cores are like internal businesses that provide services for researchers. Often there is a biomedical informatics core or some such entity that will do software / web application development for a fee (usually reduced for internal clients). Also, because they themselves are academics, they are pretty open to open source and such.

    16. Re:The Academic Route by HeckRuler · · Score: 1

      [Putting out open source] Software does not count as a publication

      Huh? Well maybe not for professors mired in academia, but out here in the real world, we like to call that verifiable experience.

    17. Re:The Academic Route by dubl-u · · Score: 1

      Better yet, find a way to make this work part of a thesis for one of these students... then you might not have to pay them at all. :)

      I can understand the appeal of this, but it is probably a terrible idea.

      There is an almost universal problem with CS students that gets worse the longer they are students. Because classes end soon and school ends eventually, they have little or no experience maintaining code. They thus don't know how to write for maintainability, and instead have a host of tricks for quick solutions.

      Because students are always throwing away their code bases, short-term wins are great, and the long-term costs don't matter. But for professional software development, the opposite applies; almost any successful code base lives forever. Short-term wins are minor bonuses, and long-term costs dominate massively. When hiring people fresh out of school, I always make sure they work closely with grizzled veterans, as they have a lot of habits to unlearn.

      Since the original poster wants reusability, he should hire somebody with enough professional experience to know what they're doing. I'd say at least 2x the time he'd like the code base to last without a major rewrite.

    18. Re:The Academic Route by Bill_the_Engineer · · Score: 1

      Finally, there is the conflict of interest. A researcher's main goal is to perform research and publish papers. Software does not count as a publication. Thus, the software will be developed up to the point where there is something to publish and not much beyond. And, once the student completes their degree, they are off to greener pastures and support will quickly dry up.

      If the Grad student wants to actually get a job in research, any references he can cite as applicable research experience will help him.

      However I do agree with most of what you are saying.

      In your case, you may want to use Biomedical Grad Students. They could use the coding experience, they understand the requirements for the program, and they gain experience working on a project in their field of study. Not to mention, they could publish the findings and use the program as evidence.

      My employer does pretty much the same thing. Except substitute physics grad students in place of biomedical students.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    19. Re:The Academic Route by Anonymous Coward · · Score: 0

      I've hired undergrads for programming. While they come very cheap and the experience is very rewarding for both parties, they require lots of mentoring and hand holding, and the code is always a unmaintainable mess. Grad students from degrees where programming is taught produce a much better result, but are harder to find, since they need the project to be these related. Using students is a bit of work, but you advance the goals of your institution much more by keeping it in house.

    20. Re:The Academic Route by Anonymous Coward · · Score: 0

      I agree, but there are times when a case study of a particular approach can be useful to a researcher, and in these cases you're not bothering the grad student.

      For instance, he's a biomedical researcher. Depending on the program, perhaps he should approach the parallel computing & scheduling department, if he needs to do DNA or genetic work, ask them about if they have experience with parallelizing tasks such as this, they might find it a good case study for something they're working on anyways.

      Stuff like that. I'm an undergrad right now, but we generally treat requests to write software as things for worker bee undergrads to do, or as case studies that researchers (upper level undergrads & grad students) work on.

    21. Re:The Academic Route by Anonymous Coward · · Score: 0

      Actually, CS grads are usually the least competent. At my firm one of the investors brought someone in (they met at a cooking class in temple). The fellow had a computer science degree from McGill. We interviewed him, he hadn't done much programming. He wanted to "architect" things (he may have been a time traveler from 1994).

      I asked him, what's the command to restart a web server? He asked, UNIX or Windows. I said, "either." He didn't know.

      We still laugh about him, we call him the "Golden Child." He was hired as the CTO for another company, but fired within 3 weeks.

    22. Re:The Academic Route by calmofthestorm · · Score: 1

      CS != computer programming. If I were interested in the latter I'd be making a lot more right now. I'm going into CS because I want to do research and am willing to make less to do it.

      That said, everyone wants to make some mone yon the side.... (not an offer personally, but there's probably someone like me who'd do it)

      --
      93rd rule of Slashdot: No matter how obvious my sarcasm is, my comment will be taken seriously by someone.
    23. Re:The Academic Route by calmofthestorm · · Score: 1

      Not all of us are that bad, but I do have to say the average physics major is probably a better programmer, at least of the ones I've met.

      --
      93rd rule of Slashdot: No matter how obvious my sarcasm is, my comment will be taken seriously by someone.
    24. Re:The Academic Route by calmofthestorm · · Score: 2, Insightful

      Good point, no real world use for ivory tower concepts like encryption, programming language design, machine learning, AI, network flow analysis, compression, etc. What have those damn latte-sipping elitists ever done for the real world?

      You should realize that what is developed in industry, FOSS, etc has its roots in the work of theorists. Ever looked through the kernel source tree? You'll find quite a few citations to journal publications and the like.

      Last summer I did research on predicting corn yield using satellite imagery months in advance of harvest. It works better than USDA estimates. No use for that, not like you could optimize crops, predict supply and demand to optimally distribute wealth (by whcih I mean play wall street), or anything like that. It was a waste of a summer, and I was overpaid at minimum wage. Damn kids getting paid to do nothing.

      Even the people who work on pure theory are producing work that is used by others in CS, who produce work that is useful to engineers. I'm so sick of hearing this kind of elitism from people like you. Just because I don't write web 2.0 apps in Java or RoR or whatever the PHB buzzword is today doesn't mean I'm not contributing to the field.

      --
      93rd rule of Slashdot: No matter how obvious my sarcasm is, my comment will be taken seriously by someone.
    25. Re:The Academic Route by nitroamos · · Score: 1

      the "academic route" is probably not going to pay off since they're already busy with their own academics, especially if it is a "good CS" program.

      most good scientific software projects that I know about were written by the scientists themselves who wanted to use that software. seriously, as a computational chemist, i know of almost no software comes out of companies. a company might take over and sell academic software, but there are very few projects that i'm aware of that *started* outside of a research group.

      a better route might be, if you really believe that this is useful, is to DO IT YOURSELF. you're going to be wanting to add new features anyway, so you'll want to be able to modify it yourself. starting from scratch yourself isn't so difficult these days. just go with java, find a good IDE, load up one of their template projects, and you're 10% done already.

      if you need to, submit applications for federal/state grants, and you'll possibly even get a publication or 2 out of the project, AND increased name recognition. when i was a freshman, i worked as a programmer for some faculty who went this route.

    26. Re:The Academic Route by Anonymous Coward · · Score: 0

      I'm fairly certain most colleges won't take modern day software projects as thesis for grad work...

      Unless you throw buzz word of the week like Location specific, Social Networking or something like that in the project. So if you can get a location aware social networking based billing system, you would write your thesis about it!

    27. Re:The Academic Route by elgatozorbas · · Score: 1

      CS grad students are in their program to do research, not develop software for other departments. Their time should be spent working towards their thesis.

      This may be true for you. Around here the purpose of grad students (as opposed to phd students) is not to do research. The goal of their thesis is to do work which is similar to what they will be doing professionally. Not everybody is an Einstein, and not everybody wants to be one. And cool things are also done outside of "research".

      There is no research value in applying software engineering practices to develop an application for a researcher in another field.

      Why? It is possible that e.g. a biologist has need for say a stereoscopic renderer of molecules. I would say this is a challenging project for a fresh CS student.

    28. Re:The Academic Route by markds75 · · Score: 1

      Yes! Yes! Yes!

      As a current graduate student, I can tell you that this is an *excellent* way to go. Not all graduate students are heading to research positions. Masters students (at least in the US) generally do not write research theses, but instead do large-ish development projects (generally expected to take 6-12 months of 10-20 hours per week). Even students who are planning to go into research can use funding to support their research. I've had to be a Teaching Assistant and a Research Assistant for most of my graduate career and I can tell you that it is just as distracting (if not more so) than having a regular job on the side when you're trying to get your research done. Even better, from a research perspective, is if the student is able to turn the software they write for you into a platform for their own work, via features you don't need (but they do) or testing new algorithms for the computational work and comparing them to the "traditional" methods that you would be using (and in this case, you may find that you don't need to pay them at all because the work is covered by an existing grant that they already have).

      Chris is correct, however, that you will need to be selective about who you pick for this, and you should try to find someone who has worked in industry and is going back to school (as I did). You should also be very clear about your requirements to make sure the student(s) write something that you can't actually use and don't go off the deep end. The best way to start is to contact a university with a large and active research group in bioinformatics or software engineering (preferably both). If you can find a professor willing to help pick students and shepherd the project, you have a much higher chance of success.

      Good luck!

      Mark

      PS: Here's a shameless plug for my school: UC Santa Cruz, School of Engineering has a well known Bioinformatics program (think Human Genome project and Human Genome Browser) and a Software Engineering group.

    29. Re:The Academic Route by Anonymous Coward · · Score: 0

      Yes!! what he said. I've been a physic grad student, and am a biomedical one now. This is what some of us (me for example) can/want to do.

    30. Re:The Academic Route by Anonymous Coward · · Score: 0

      At our university, we have a dedicated eResearch center that exists solely to develop software for academics. The staff are a mixture of part-time grad students and full-time experienced professionals. It's not particularly cheap, but it is good quality and closely tied to academia, and it's often not hard to find funding in the form of grants.

      I'm not saying you should hire us in particular, but I imagine other universities would have similar programs. If nothing else, it saves you the trouble of sourcing individual coders.

    31. Re:The Academic Route by rockmuelle · · Score: 1

      There were some good points raised in the replies. I was definitely referring to Ivory Tower-type PhD students. Their job is research, not development. If they want to do development, they really need to rethink why they are in a PhD program. Any development they do should be to further _their_ research, not someone else's. This is a distinction often lost on people who haven't experienced graduate school. The research aspects of software engineering and computer science are very different than the development aspects. It took me about a year and a half into a PhD program (after years of working in industry) to realize this. Unfortunately, I still haven't found a way to easily communicate it to people who haven't been on both sides. Every now and then, there is value in a software-oriented thesis, but those that can become usable software while still making valuable research contributions are few and far between (projects like the Boost Graph Library fall in this category). And, those are usually personal, not collaborative projects.

      CS/Informatics Masters students are an interesting case, especially at schools where a Masters Thesis is an extended software project. In this case, it's OK to partner with a student as long as you: 1) make sure the project you're doing is within their abilities and 2) make sure the time line for the project aligns with the the student's program. This is valuable experience for the student and their colleagues.

      Physics, biomed engineering, bioinformatics, etc students are little trickier. In the case of Masters students with thesis projects, the comment above still holds. But, in these cases, it's important for everyone involved to make sure the best interests of the student are respected. These students are often lacking the software foundations that CS students have (not that CS students have much more) and require the proper mentoring from a good software developer in order to develop good habits. I've seen firsthand the effects of letting students learn to program without a good mentor and it's not pretty. The real risk here is that the software will not be scientifically valid - it may run and appear to produce good results, but without the proper oversight, there's no way to be sure if the results are valid. (again, this is true of CS students too, but the risk is higher when there are no experienced software people involved).

      The most important point in this discussion, however, is this: Graduate school is for furthering education and, in a PhD track, developing research skills. Graduate school is not the place to do a software apprenticeship (that magical 0-3 years experience that gets you into the more interesting jobs). In most cases, the student is losing money by being in grad school and taking advantage of them as a source of cheap labor is not fair to them or the discipline of software engineering. Unfortunately, students rarely understand this and a number of professors actively exploit it. Of course, money isn't everything and there is something to be said for working on fun projects, but just make sure everyone's best interests are taken into consideration when entering into an academic development partnership.

      -Chris

    32. Re:The Academic Route by Anonymous Coward · · Score: 0

      As a CS grad, I would take offence if it weren't so true. most of my "peers" are complete idiots who dont know their arse from their elbow. too many people choose to study CS because they heard there was big bucks in computers.

      I've done some tutoring and it's really quite sad just how computer illiterate some of the students can be; it seems to be especially bad amongst the international post-grad students. I dont know how some of them managed to get their undergrad degree in order to even be eligible for a post-grad course.

  9. Step 1: by Qzukk · · Score: 3, Insightful

    Find an interesting problem that people would like to work on.

    --
    If I have been able to see further than others, it is because I bought a pair of binoculars.
    1. Re:Step 1: by Anonymous Coward · · Score: 0

      1: Find an interesting problem that people would like to work on.
      1a: Elect Obama
      2: ???
      3: Prophet!

  10. Simple.... bribe them by mediis · · Score: 1

    Go to their Amazon wish list... and grant a few wishes.

    1. Re:Simple.... bribe them by calmofthestorm · · Score: 1

      They sell girlfriends on amazon? Is that legal?

      --
      93rd rule of Slashdot: No matter how obvious my sarcasm is, my comment will be taken seriously by someone.
    2. Re:Simple.... bribe them by L4t3r4lu5 · · Score: 2, Funny

      Developers often aren't picky.

      Flamebait or funny, you decide.

      --
      Finally had enough. Come see us over at https://soylentnews.org/
    3. Re:Simple.... bribe them by bigstrat2003 · · Score: 1

      Minor quibble, but please note when a link is potentially NSFW. That's probably not the sort of thing most of us want to be clicking on from our typical /.-reading environment.

      --
      "16MB (fuck off, MiB fascists)" - The Mighty Buzzard
    4. Re:Simple.... bribe them by maxume · · Score: 1

      You should just put a big sticker on any computer that can connect to the internet that says "NSFW".

      --
      Nerd rage is the funniest rage.
  11. Re:How Do I Get Open Source Programs Written For M by Entropy2016 · · Score: 0, Redundant

    Of course, how much beer & pizza is an important factor. Given sufficient quantities of pizza & beer, hell, I'd do it.

    Its not like programming with Cocoa is terribly hard or anything.

  12. Know Your Targets & Draft the Requirements by eldavojohn · · Score: 5, Insightful

    There are a few things about this blocking your path to open source success ... and even then, it's not guaranteed. So right off the bat, if you're depending on this to get a job or research done, you might want to exhaust all other options (footing the bill yourself/coding it yourself/seek help in your department).

    First off, the Cocoa requirement reduces your target development community substantially. Is this necessary? Are you opposed to Linux based development and execution? Personally, I haven't done a darn thing with Cocoa nor do I own a single Apple ... and I'm not a fan of the cost associated with OSX. But if this is a hard set requirement, you're winnowing down your possibilities. Just get them out there, put them on Sourceforge, post them here, get eyes looking at them.

    Second, where is the list of requirements? I know you're not a Systems Engineer but if you're not worried about this stuff getting out there, why not link us to a list of requirements. I know very little about what you need and therefore would have a hard time advising you on who to approach and how to do the job. I know a little bioinformatics (FASTA) ... is this what you are interested in? I recommend your first step being to approach a friend who is a system engineer (again, seek help) and drafting requirements for your initial program. Once you have that, it will both make development very easy to do via open source and help you concrete your end vision.

    If you do end up approaching a business to help you, research them. Do they have competitors? Is this their bread and butter or a side project? Have they historically contributed to open source? Figure out these answers so you don't have a pitch meeting that they take as an insult.

    --
    My work here is dung.
    1. Re:Know Your Targets & Draft the Requirements by Anonymous Coward · · Score: 1, Interesting

      It is important to consider the cost savings that proprietary libraries might provide. It is obvious that the OP has a specific goal in mind apart from just having the program written. If OS X has a built-in library that does the job well, the expense of the operating system and hardware may very well be less than the time he or a contracted party would spend re-implementing the same functionality using only OSS libraries.

      For a more concrete example, let's look at audio. Core Audio, OS X's audio API, is well thought-out and well-documented, and the system comes with licensed codecs for a number of audio formats. Linux has OSS and Alsa that take care of basic PCM audio, Jack to implement the audio path functionality of Core Audio's Audio Units, and the whole legal issue of unlicensed codecs. If you're writing audio software, which is easier (a.k.a. cheaper) to use to gain the same functionality?

    2. Re:Know Your Targets & Draft the Requirements by AndrewNeo · · Score: 1

      I'd be willing to bet that where he works uses Macs, so it's easier to get software that runs on the machines they already have, instead of having to run Linux on all of them, or buy new machines?

    3. Re:Know Your Targets & Draft the Requirements by Entropy2016 · · Score: 3, Interesting

      It sounds to me like you might be trying to change his mind purely because of your own personal development biases. It's not like Linux is supposed to have some sort of monopoly on open-source software. And in a medical setting, you're going to want as few potential technical problems as possible. Using a Mac there makes quite a bit of sense.

      Cocoa is by far the easiest application framework I've seen so far. If you know C++, you can learn Objective-C in an afternoon on a weekend. And you'll be better off for it, as it's a dream to use. If he wants software made on a Mac, there's almost no reason to avoid using Cocoa.

      The best thing that this guy could have done is to get the backend in C++/C so its portable and keep parts like the GUI as Objective-C. The parts between can be compiled as Objective-C++. It's not like if it was a Linux/Windows application you weren't going to have to rewrite the GUI-code to port in the future it anyway. I can tell you if the programs I wrote weren't Cocoa apps, they'd have taken much more time, and if that had been the case I probably wouldn't have even attempted them.

      If you know Cocoa's history (dating back to NeXTSTEP), you'd also realize that for scientific research, Cocoa really can be ideal. Scientists/researchers are often able to program, but they're not "professional programmers", so when they do it, they want it to consume as little of their time as possible. A scientist's priorities are not the same as a programmers priorities. Cocoa definitely makes sense there. I doubt this guy would be asking for an open source app in the first place if he didn't plan to at least review and consider modifying some code himself.

    4. Re:Know Your Targets & Draft the Requirements by Anonymous Coward · · Score: 0

      It sounds to me like you might be trying to change his mind purely because of your own personal development biases.

      Try "my own personal development experience." Are you disagreeing that he is narrowing down potential coders by selecting their platform for them?

      Cocoa is by far the easiest application framework I've seen so far.

      Great! Now, how the hell do I start that when I refuse to pay over a grand for a machine just to get the OS? Or are you asking me to buy into Apple just so I can learn Cocoa?

      you'd also realize that for scientific research, Cocoa really can be ideal.

      I think it is you who are trying to force platforms & technologies on others.

      Should have known never to speak about Cocoa lest an Apple fanboy hear me.

    5. Re:Know Your Targets & Draft the Requirements by Draek · · Score: 2, Insightful

      It is important to consider the cost savings that proprietary libraries might provide. It is obvious that the OP has a specific goal in mind apart from just having the program written. If OS X has a built-in library that does the job well, the expense of the operating system and hardware may very well be less than the time he or a contracted party would spend re-implementing the same functionality using only OSS libraries.

      Except that it's not just the OS and hardware to run the app on, but also the expense of finding and hiring programmers skilled in that particular toolkit, which is what the GP is saying.

      For a more concrete example, writing the exact same application in Java is much cheaper than doing so in Smalltalk, because undergrad CS courses all use Java nowadays, and practically no one has ever used Smalltalk. What's easier and cheaper, finding a bunch of fresh graduates who know Java, or a contractor who's skilled in Smalltalk?

      --
      No problem is insoluble in all conceivable circumstances.
    6. Re:Know Your Targets & Draft the Requirements by Entropy2016 · · Score: 2

      Try "my own personal development experience." Are you disagreeing that he is narrowing down potential coders by selecting their platform for them?

      Though you seem to be implying that biases & experience are different, experience does result in biases, and this isn't inherently good nor bad. Some of my best professors openly state on the first day of their classes what their personal biases are. Everyone has them. Experience is an educated bias. This isn't bad, except when the bias is not the result of experience (you may be thinking now "Hey, that was my entire reason you dipshit, I am experienced", but I'd point out that you're not experienced specifically in what the guy was asking for). You misread what I wrote if you felt you needed to take personal offense to my suggestion that your biases were behind the statement that I contested. To me, this is little different than a biologist getting corrected by a geologist regarding a geological topic. You aren't a Cocoa programmer. You aren't even a Mac programmer.

      Are you disagreeing that he is narrowing down potential coders by selecting their platform for them?

      Of course he is. Doesn't mean he won't be able to easily find the type of developer he was asking for.

      Cocoa is by far the easiest application framework I've seen so far.

      Great! Now, how the hell do I start that when I refuse to pay over a grand for a machine just to get the OS?

      Except that the fact he is asking for Mac software probably means he already has the hardware and OS, thus making it cheaper for him to get the type of programmer he was asking for. Maybe he's not totally clueless and actually knows what he needs, and is only really needs to know how to go about getting it.

      Or are you asking me to buy into Apple just so I can learn Cocoa?

      My my, you've gotten personal. This was never about you, this is about what advice to give to a biomedical researcher who is asking for a Mac software developer to do a job. Don't try to make it more about you than it really should be. (Of course I'm assuming he hasn't hired you for this proposed job).

      you'd also realize that for scientific research, Cocoa really can be ideal.

      I think it is you who are trying to force platforms & technologies on others.

      Or maybe if you did your homework you'd realize that OpenStep (later renamed Cocoa) has always been attractive to researchers.
      Page 3 of Cocoa Programming for Mac OS X by Aaron Hillegass (a former NeXTSTEP programmer):

      Programmers loved OpenStep. It enabled them to experiment more easily with new ideas. In fact, Tim Berners-Lee developed the first Web browser and the first Web server on NeXTSTEP. Securities analysis could code and test new financial models much more quickly. Colleges were developing the applications that made their research possible. I don't know what the intelligence community was using it for, but they bought thousands of copies of OpenStep.

      Keep in mind that this was back when OpenStep was very expensive and many people could not afford this stuff, but still, the people who had it loved it. Also refer to the website http://www.macresearch.org/ which is devoted solely to Mac/Cocoa developers in the scientific community. I wasn't just pulling lauds out of my ass. There is history you could have researched which supports my original statement.

      Should have known never to speak about Cocoa lest an Apple fanboy hear me.

      Yeah, I'm such an Apple fanboy that I go out of my way to keep my software's backend C/C++ so it's portable to non-Apple systems. I suppose what makes me an even bigger Apple fanboy is suggesting that other people do the same to keep their stuff portable too

    7. Re:Know Your Targets & Draft the Requirements by avandesande · · Score: 1

      Use Java for the interface and for the most part the code will be portable.

      --
      love is just extroverted narcissism
    8. Re:Know Your Targets & Draft the Requirements by Anonymous Coward · · Score: 0

      For fuck's sake: Nobody has a Mac.

      If you find a random pool of experienced coders, chances are that 95% have never touched a Mac before.

      By setting the "must be on a Mac" requirement, you're immediately narrowing the field - and adding a $3000 cost-of-entry requirement. Macs don't grow on trees.

      As great as you believe Cocoa and Objective-C to be, .Net and C# are every bit as awesome - particularly for ease of use if your primary goal is just "get it done." And with the Mono runtime, apps should also work as-is on Linux and Mac.

    9. Re:Know Your Targets & Draft the Requirements by Entropy2016 · · Score: 1

      True, that is certainly an option.

      Before recommending it though, I'd be sure to check a few things first:
      1. Does the employer intend to play with the open-source code he hired someone to make (assumably yes or he wouldn't care about it being open-source). In which case, you must consider if he's comfortable, or even capable by himself of using code written in Java.
      2. Assuming he knows both Java & Obj-C, and could use both, do his needs/preferences lend themselves to either language by virtue of the languages biases toward statically typed objects (Java) or dynamically typed objects (Obj-C).
      3. Does he need all the low-level features of C (which Obj-C inherently has)? Pointer arithmetic is useful.
      4. Does he need to include any pre-existing C or C++ libraries?

      If he wants a widely adopted, mult-iplatform application, then yes an open source Java/Swing might be his ticket. But if he doesn't care about it being widely adopted, doesn't care if it's multi-platform, and only cares about getting an open-source Mac application made for his research, then he doesn't have to.
      Sure, you and I would prefer to have him do what benefits us most, because we're all "gimme free stuff!", but maybe he doesn't care about us. Who knows.

      What I do know is that simply having to use a pre-existing C or C++ library is reason enough for him to choose Cocoa over Java.

    10. Re:Know Your Targets & Draft the Requirements by Entropy2016 · · Score: 1

      For fuck's sake: Nobody has a Mac.

      Apparently the guy looking for a developer has one.

      Being in the OS minority doesn't mean that it isn't worth writing software for the platform. Look at the first Web-browser & Web-server, it was done on NeXTSTEP for God sakes. Their tiny sliver of the marketshare was so miniscule, by comparison it makes Macs look common. Yup, helluva lot of good that worthless web-browser and web-server did us today eh? Silly CERN researchers. http://en.wikipedia.org/wiki/Image:First_Web_Server.jpg

      If you find a random pool of experienced coders, chances are that 95% have never touched a Mac before.

      Fictitious statistics are so easy to use, aren't they? The vast majority of experienced coders have probably never owned a Mac, but never touching one, that is an unlikely hyperbole.

      By setting the "must be on a Mac" requirement, you're immediately narrowing the field - and adding a $3000 cost-of-entry requirement. Macs don't grow on trees.

      More likely $2000, given that's the entry price on their increasingly popular Macbook Pro line, but that's besides the point. If he already has that computer, or, if the workplace he does research at relies on those computers, that's the type of developer he should consider looking for.

      As great as you believe Cocoa and Objective-C to be, .Net and C# are every bit as awesome - particularly for ease of use if your primary goal is just "get it done." And with the Mono runtime, apps should also work as-is on Linux and Mac.

      That's nice, but you don't know if the guy asking for a programmer wants to be able to modify the code himself in the future. If this is the case, he may not be familiar with C# or mono, and may already be comfortable with what he was originally asking for.

      Accept the fact that sometimes people ask for hard to find things that they actually need, and that these things are not what you would ever need. What you prefer might not work for his needs. Contributing to one fo the countless and pointless OS/API/language holy-wars on the Internet is unlikely to be the best use of anyone's time.

    11. Re:Know Your Targets & Draft the Requirements by bgspence · · Score: 1

      Reducing your target development community substantially is often a good thing. A small team of top quality programmers working in a top quality environment you have specified is a much better choice than lots of people offering a mishmash of solutions.

      The Macintosh mixes well with other open source projects as well as Microsoft's and Adobe's software suites.

      It is critical that you can communicate clearly what are the functional requirements of your software. Translating your vision into a realistic software development plan is the key to success. Given a clear vision and plan, good tools and solid software foundations can deliver quality solutions.

    12. Re:Know Your Targets & Draft the Requirements by avandesande · · Score: 1

      I have built c++ libraries for Java and never had any problems.

      http://en.wikipedia.org/wiki/Java_Native_Interface

      --
      love is just extroverted narcissism
    13. Re:Know Your Targets & Draft the Requirements by Entropy2016 · · Score: 1

      Ah wonderful, I learned something new, thank you. The wiki article mentions several times that the API isn't easy to learn & use. You seem to have implied you're experienced with it. What's your opinion of its difficulty learning and debugging with?

      Also, is there a reason you'd use that over sockets?

      And if you think it's hard to use (as suggested in the Wiki article you linked), what are the chances this researcher (a non-professional programmer) would be able to maintain it once his application is written? (please don't read that question as feigning sincerity, though I understand its wording could be misread as such).

      While it wouldn't get me to drop C/C++/Objective-C/Objective-C++, it's nice to know about nonetheless. I prefer handling things at a low-enough level like C (and its variations), but not so low that I have to learn something as unpleasant as assembly.

    14. Re:Know Your Targets & Draft the Requirements by Anonymous Coward · · Score: 0

      It's not like if it was a Linux/Windows application you weren't going to have to rewrite the GUI-code to port in the future it anyway.

      Use Qt (my personal favorite) or WxWidgets, and you will NOT have to modify any code to run on a different platform. At my last job we had dozens of apps that worked on Linux/Mac/WinXP/Vista with no code changes.

    15. Re:Know Your Targets & Draft the Requirements by Jaime2 · · Score: 1

      Reducing your target development community substantially is often a good thing. A small team of top quality programmers working in a top quality environment you have specified is a much better choice than lots of people offering a mishmash of solutions.

      Reducing the size of the community and reducing the size of the team are two totally different things. You can easily get 10 high quality Java programmers in just about any area of the world. Just because there's millions of them doesn't mean you have to hire all of them. However, it would be much more difficult to put together a team of 10 highly skilled Erlang programmers. It's not that you couldn't get a team of 10 highly skilled Erlang programmers, it's just that of the available pool, most of the highly skilled ones would be otherwise engaged at the moment.

  13. Cocoa? by andy753421 · · Score: 2, Insightful

    If you're looking for Free/Open Source Software, you'll probably have better luck if you use F/OSS development tools such as GTK+ or QT.

    1. Re:Cocoa? by pembo13 · · Score: 1

      Quite.

      --
      "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
    2. Re:Cocoa? by Anonymous Coward · · Score: 0

      yeah and then development-time will double caus GTK+/QT are far inferior to cocoa in terms of RAD. (well and GTK/QT UIs just suck)

    3. Re:Cocoa? by Anonymous Coward · · Score: 0

      What an insightful statement.

    4. Re:Cocoa? by mebrahim · · Score: 4, Informative

      For 1000th time: It is not QT, it is Qt. QT is QuickTime.

    5. Re:Cocoa? by Creepy · · Score: 1

      Well, there's also GNUStep, but that wouldn't be possible if Core Data is used. From my understanding, Core Data is more-or-less a database without a database - basically a uniform way of storing data objects so they can be read by many different programs (much like the dicts in mac, which are XML files, if I remember correctly).

      The alternative would be to have an actual database backend and write the programs to use those data objects.

          The advantage from the mac end is their data model ties directly into the Model part of the model-view-controller (MVC) presentation model, so it is fairly easy to write front-ends because you can do almost everything with gui tools where in the past you needed to write the data model as code. All data processing is still code, however (it's more of a convenient way to tie in the displaying and storage of data). I'm not sure how reusable it is because I've mostly just looked at some demos (most of my serious dev time has been devoted to Vista... not intentionally, more because Vista has been a hellish nightmare to support).

    6. Re:Cocoa? by FunkyELF · · Score: 2, Funny

      Are you saying that I only need to double my development time to get a 3,000% increase in user base!?!? Where can I find this GTK+/Qt?...I want to start using them today!

    7. Re:Cocoa? by Anonymous Coward · · Score: 0

      Very cute.

    8. Re:Cocoa? by andy753421 · · Score: 1

      In my (somewhat limited) experience I've found that programmer productivity depends more on the language and tools used than on the widget toolkit. Working with GTK+ in pure C/Glib is going to be a lot more time consuming than using something like Ruby or Python and using a UI designer like Glade.

    9. Re:Cocoa? by pherthyl · · Score: 1

      Spoken like someone who hasn't used Qt (I don't know much about GTK so I can't speak to the subject). Qt is at least as productive and feature rich as Cocoa. And unlike Cocoa, you're not bound to one platform. So if you want to support Windows and MacOSX, Qt lets you do that with one codebase, while your cocoa app will need to be entirely rewritten.

    10. Re:Cocoa? by Anonymous Coward · · Score: 0

      Yeah like nothing ever written in cocoa ever goes open source...

      GTK+ and Qt are ass compared to Cocoa.

  14. Your best source by shareme · · Score: 1, Insightful

    Your best source are those students in your labs with CS classes already completed..Bioinformation Degree students usually have that area covered

    --
    Fred Grott(aka shareme) http://mobilebytes.wordpress.com
  15. Bribery... by Anonymous Coward · · Score: 0

    Offer them food or women... or tickets to the latest sci-fi/fantasy flick or linux expo...

  16. Beaver pelts? by Anonymous Coward · · Score: 0

    I would expect to pay around 150/hr for quality work. the f/oss nature will probably not get you any discount, if that's what you're after. no programmer should really care if their code becomes f/oss, the code isn't theirs anyway.

    1. Re:Beaver pelts? by slashnot007 · · Score: 1

      Nah just whole beavers.

  17. Appeal to their better side by Anonymous Coward · · Score: 0

    You can always try appealing to their sense of citizenship. If you are trying to develop software that will be of benefit to society, then you can post on message boards (such as SourceForge) asking people to contribute for the good of humanity.

    That is how the metagovernment project got started. Even so, it only attracted people who were deeply concerned with the state of their governance mechanisms. Likewise, you will be best served appealing to people who work in your field who happen to be programmers too.

  18. Start with Google by oprahwinfree · · Score: 1

    There are places like getafreelancer.com and similar sites that have developers for hire who will code to your standards. You yourself can choose to release the code under whatever license you choose.

    You might also check out Sourceforge and try to find developers there on the forums.

  19. Re:How Do I Get Open Source Programs Written For M by MBGMorden · · Score: 1

    Its not like programming with Cocoa is terribly hard or anything.

    I've had my share of difficulties figuring it out. These days most of my coding is done in PHP for web frontends, but I've also done a fair share of GUI development in Visual C++ as well as some using GTK+ in Linux. While I haven't sat down and hit it up hard, Cocoa programming has still confuzzled me. Maybe it's just that I have never programmed for the Mac before trying to jump into it, but even trying simple rewrites of programs that I'd done on other systems gave me trouble. Maybe I'll give it a whirl again though.

    --
    "People who think they know everything are very annoying to those of us who do."-Mark Twain
  20. I don't think that's his exact goal by Weaselmancer · · Score: 5, Informative

    The second half of his question is about pay rates and how to find programmers for hire. He does mention open source in the first half of the question though.

    It seems like he wants to scratch a personal itch, but he's willing to put up some cash for someone to scratch it for him. Then once it's working, open source it and have the community improve upon it. So it's not the typical open source scenario of "start it yourself, put it on sourceforge, then try to get people involved."

    I'm picturing this guy as an open source project manager. Eventually anyways. He's going to start out as a client to some programming firm. Then he'll take the code he paid for and open source it on sourceforge. Then he'll go through an open source recruitment phase. Finally, he'll be the one saying "we need this feature" and "I'm not accepting that patch."

    What I'd recommend is to read the commit logs and notes for a large project. Study your Linus Torvalds. Read how he manages kernel commits paying close attention to how he handles rejected submissions. And the occasionally poorly received edict (for instance, when Linus moved to a pseudo-proprietary source control system) X.org might not be a bad study either, especially around the time of the split from XFree.

    Learn how to manage an open source project correctly, and your odds for success will greatly improve.

    --
    Weaselmancer
    rediculous.
    1. Re:I don't think that's his exact goal by Kjella · · Score: 2, Insightful

      Then he'll take the code he paid for and open source it on sourceforge. Then he'll go through an open source recruitment phase. Finally, he'll be the one saying "we need this feature" and "I'm not accepting that patch."

      Somehow, I have a bit of a problem seeing this scenario come true. Either I'm afraid it'll die without someone at the core or that someone at the core would take much of that position. After all, the initiator here is more of a subject matter expert than a software architect from the sounds of it. Maybe the "we need this feature" part but there's always been a surplus of the wanters and a shortage of the doers. I don't know, it all depends on how much he wants people working with him or people working for him.

      Linus is an exceptional doer - his code is 2% of the entire Linux kernel. Remove all the driver and arch-specific bits and he's the shining center of Linux. Likewise, X.org was the doers splitting away from the talkers. I can't think of any project where the project leader has come in as a "lightweight" so to say, so unless he really wants to be that guy and grow into that position it's basicly the usual OSS model except with a kickstart. Or he could be more of a detached sponsor of sorts, but it doesn't really sound like he's got the pockets to do that long-term.

      --
      Live today, because you never know what tomorrow brings
  21. advertise, yes, depends, no diff by Anonymous Coward · · Score: 0

    There are many good Cocoa app developer consultants out there. You should figure out your requirements first with as much detail of what you need as you can figure out. Use some of that information in your advertising or posts looking for help as you can. If you're still connected to a school, ask around the CS department about consultants. Check with Apple, they may have some sort of registered consultants. And of course go to apple related blogs that are about the nasty bits and pieces of Cocoa.

    As for the other questions. Making it open source is a non issue. You hire them to do the work where you own it, then it's yours to license as you wish. A good consultant should be able to help with that aspect and with hosting it somewhere like sourceforge. The rates depend on the region of the world of course. In the US rates these days for good quality contractors (but not giant consulting houses) seem to be in the range of 75/hr to 150/hr. As you go to bigger consulting firms the rates of course go through the roof say from 175/hr to 300/hr.

  22. Do what other researchers do... by Anonymous Coward · · Score: 0

    Get enough grant money to pay a programmer to write code, either as a contractor, or an employee, then advertise for a person to do the programming. Forget about students doing anything worthwhile - their priorities are elsewhere.

    If you want to find a competent developer, it won't be easy, and they often don't come cheap. Incompetents usually do come cheap. Sometimes you can find a beginner that wants the experience, and is really talented - take care of him if you do, they don't come by often...

  23. The Open Source requirement by 49152 · · Score: 1

    "Would a requirement that programs are released as open source make it more or less difficult to find someone to do the job?"

    I do not think this will make it any harder. But if you approach commercial companies be prepared to pay a substantial extra to have them give up copyrights. They would also have to make damn sure they actually have the right to open source (or sign away the copyright for) all the code that goes into the project. In some cases this might be difficult.

    I know for a fact the company I work for would at least double if not triple the price.

    If you hire a developers directly "work for hire" and pay them from your own funds then you will own the copyright and it is not a problem.

  24. I used - Rent a Coder by jchawk · · Score: 3, Interesting

    I've used - http://www.rentacoder.com/ for a few different projects.

    You can put the request out with whatever terms you'd like and the let the market set the price.

    1. Re:I used - Rent a Coder by Anonymous Coward · · Score: 0

      Something similar to this is oDesk (http://www.odesk.com/), "Hire, Manage, and Pay remote contractors as if they were in your office."

    2. Re:I used - Rent a Coder by anomalous+cohort · · Score: 1

      The problem with rentacoder.com, guru,com, and getacoder.com is that they are all about brokering the deal and getting a percentage of the take. They couldn't care less about quality or satisfaction. The coder is asked to make a fixed bid on what usually amounts to less than a paragraph of information. It promotes incompetence for both the sellers and the buyers too. In terms of quality, it's a race to the bottom.

      May I introduce an emerging alternative to these kinds of sites? I am building an online community where entrepreneurs and engineers get together to produce custom software by hosting the venue for this community in a free collaborative software development project life cycle management solution called Code Roller.

      • Code Roller uses deliverables that just work when it comes to specifying and developing software; user stories, use cases, design documents, test plans, and defect reports.
      • Code Roller uses a practical, time honored work flow that is Agile friendly.
      • You don't just lob a paragraph describing the software you want and expect the coder to be able to read your mind. The people who want the software need to be just as involved as the coders.
      • Code Roller neither brokers, tracks, nor collects any money on the deal. How coders collect pay (or not) is entirely up to them.
      • All Code Roller is about is building community and promoting sound SDLC practices.
  25. what, you've never seen the movies? by circletimessquare · · Score: 5, Funny

    as a biomedical researcher, you can:

    1. inject them with a lethal toxin or virus that gives them 48 hours to live. you possess the antidote, but you won't give it to them until the programming is done. you may find this code to be slapdash and hurried

    2. reprogram their genetic makeup so that they slowly devolve into an insect. revertion to homo sapiens status only occurs if the programming is done. their coding effort will be highly hierarchical, with independent nodes functioning in close cooperation, like a hivemind

    3. surgically insert a biomechanical morphine injector directly into their spine. press the button, and give them rapturous pleasure. get them addicted, then demand they get no more fixes until the programming is done. code produced from this approach will be alternately pure genius, and pure garbage

    combine #1,#2,#3. be the perfect bad guy. code will resemble naked lunch

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
    1. Re:what, you've never seen the movies? by spaceturtle · · Score: 1
      They also have a Slashdot account. That is fairly easy to use.

      The obvious way is to pick some random unrelated software project and threaten to use windows unless they rewrite it to be a medical app. This is the number one n00b mistake. You will be quickly identified as a troll and hounded off Slashdot.

      Instead continually praise the unrelated app as being the best biomedical confubulator ever written. Then you'll have thousands of users attempting to use it as a biomedical confubulator getting angry and threatening to switch to windows for you.

      The best thing about this technique is that the Slashdot hive mind will never catch on, and in fact everybody who contradicts you by saying that your victim project can't do medical confubulations, *they* will be labeled as a troll and hounded off Slashdot. The technique is infallible I tell you ;)

  26. Often times... by Anonymous Coward · · Score: 1, Funny

    Often times, beer works too.

    1. Re:Often times... by mebrahim · · Score: 5, Funny

      But be careful about Ballmer Peak.

    2. Re:Often times... by geoffrobinson · · Score: 1

      Make payable after delivery. No beer upfront. You want the thing to run.

      --
      Except for ending slavery, the Nazis, communism, & securing American independence, war has never solved anything.
    3. Re:Often times... by pezmanlou · · Score: 2, Funny

      For those who didn't notice, the ballmer peak occurs when the blood alcohol level reaches .1337

  27. Even Easier by Anonymous Coward · · Score: 0, Troll

    Sexual Favors. Neither party pays taxes, the geek gets something worth more than money itself.

    1. Re:Even Easier by NormalVisual · · Score: 1

      Depends on who is providing the favors.

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
  28. Raise Money by kevin_conaway · · Score: 2, Insightful

    First off, please realize that custom software development is likely to be a 5-figure investment. Just because you want to open source the end product doesn't mean that it will be cheaper to do. You may find someone to quote you a really cheap price but I guarantee you that you won't be happy with the end product and you'll probably end up spending more over the long run than if you had paid up front to do it correctly.

    With that in mind, there are plenty of quality software consulting firms that will do this for you. To your developers, it shouldn't make a difference what you do with the end product. If you want to open source it, thats your business because you've paid for it.

    If you don't have the money to pay someone else to do it, I'd start learning to write software and/or reach out to other lab rats in your field who may want to help

    1. Re:Raise Money by jcoleman · · Score: 1

      Try six figures.

  29. you need someone you can trust by cinnamon+colbert · · Score: 3, Interesting

    Over the last 20 years, I have worked for several small biotech companies in the boston area, and all have had large (> 200 K) budgets for software. The take home lesson is that there are a lot of really bad programmers out there, and the only way to survive is to have someone you trust , who knows how to code, vet them.

    My current company has a really sharp VP/programming (whatever his real title is, thats what he does) and he hires good people.

    This may seem like chicken and egg advice, but it is all I have

    For examples, scan through almost any story at www.thedailywtf.com

  30. Re:How Do I Get Open Source Programs Written For M by Archangel+Michael · · Score: 1

    I contracted a guy once that offered to work for pizza and beer. He quit working even though I tried to pay him with pizza and beer.

    Not my fault he wasn't specific about what kind of pizza or beer.

    --
    Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
  31. Osirix / Slicer / VTK / ITK by mma · · Score: 2, Informative

    Post your job offer to the mailing list of any projects listed in the subject:
    - Osirix (www.osirix-viewer.com/)
    - VTK (http://vtk.org)
    - ITK (http://itk.org)
    - Slicer3d (http://www.slicer.org)

    They are all 'BSD' type, meaning familiar with both the open source people and the industry !

    cheers

  32. Networking by cybaz · · Score: 1, Insightful

    Since you plan to release this as open source, I expect that you believe there are others who would be interested in this software. I would try to identify other people who may be interested in it. Then see if they have the time/talent or know others who do that could assist.

  33. step 1 (a lulu): find someone competent by mkcmkc · · Score: 2, Interesting

    I commend you for trying to find a programmer to work on this, rather than a biology student. As a bioinformatics programmer, I've seen the wreckage that results from the latter, and it's not pretty. There's a reason they don't let me in the wet lab, and it works the other way around, too. (I would never discourage anyone from learning to program for their own enjoyment, but if the results matter, you should act accordingly.)

    The most difficult part of what you're trying to accomplish is finding a programmer who's competent and has the right mindset. I've been programming for decades, and it's still difficult for me to figure out whether a particular person is good until I've observed them for quite a while.

    Regarding Cocoa, I think you should consider very carefully whether that's actually a requirement or whether it's simply something that sounds good. It's kind of like going to a doctor: you don't necessarily say "I want you to give me a bypass"--rather, this should be a long conversation with an expert in which you describe what you're really trying to do, and he/she provides suggestions and information about the pluses and minuses of various approaches. There may very well be alternatives that will be much cheaper and that you would be much happier with in the end.

    On the whole, the requirement that the results be released as Open Source should actually make it easier to draw good people.

    --
    "Not an actor, but he plays one on TV."
    1. Re:step 1 (a lulu): find someone competent by EvilIdler · · Score: 1

      wxWidgets is a good alternative to Cocoa, since the programs look like proper native apps. An added benefit is easy porting to any other platforms they may use, and the only drawback is a few megs of library overhead.

      But DO find a proven, open source-friendly developer.

    2. Re:step 1 (a lulu): find someone competent by WhiteHorse-The+Origi · · Score: 1

      I agree. I programmed in Cocoa using CodeWarrior C++ and then we couldn't run it on other platforms without a massive amount of porting work. Stick with Eclipse, wxWidgets, and Python and you'll be able to reuse the code and get other people involved. If you lock yourself into Cocoa, you'll be defeating yourself by excluding the majority of the open source community.

  34. use the source luke! by Anonymous Coward · · Score: 0
    Write them yourself, or grab the code from another project and fork it to your personal needs.

    You need to knowledge to do this obviously, but that's what books and friends are for.

    Yes, I'm a prick.

  35. why not ... by ianare · · Score: 2, Funny

    post a question to this site, there are many programmers there. One will anwser you I'm sure.

  36. Re:How Do I Get Open Source Programs Written For M by EvilIdler · · Score: 1

    Cocoa has its issues, and I think some things are a bit backwards (and too verbose). Key-value pairs are actually value-key pairs, which confused me for a bit.

    "Cocoa Programming for Mac OS X" by Aaron Hillegass is all you need to get your head wrapped around it (make sure it's the latest edition, with XCode 3+ instructions).

  37. Re:How Do I Get Open Source Programs Written For M by Isaac1357 · · Score: 1

    While PHP is technically a scripting language, not a programming language, there is no reason to attack him like that. I wouldn't say PHP folks are the lowest of the low by a long shot. And knowing both PHP and C++, while there are some differences, skills in PHP easily translate over to C++. Syntactically they seem very similar to me.

  38. First of all.. by Anonymous Coward · · Score: 1, Insightful

    Don't limit yourself to Cocoa.

    Go with an open source cross-platform toolkit, and then you won't be stuck with OSX apps if someone needs to run the program on Windows. The realistic choices in this area are GTK+, WxWidgets, and Qt. I would recommend Qt because it has the best documentation and is by far the most mature and provides far more functionality than the other two.
    The only disadvantage of Qt is the GPL license, which means you won't be able to make it closed source if you decide you want to in the future (you have to buy a commercial license first to do that). But if you're going for open source anyway, it is the only sensible choice for getting things done quickly.

    1. Re:First of all.. by try_anything · · Score: 1

      Eclipse is a viable alternative for cross-platform GUI development. (Cue the "Java is slow" crowd.) You may end up writing a little bit of JNI boilerplate to interface with libraries, but that's actually quite easy and will account for a trivial proportion of developing any GUI application. Eclipse's plug-in architecture is a great fit for sophisticated, incrementally-developed scientific applications. Plus, the plug-in model and the liberal licensing mean that commercial and open-source code can coexist nicely.

      To the original poster: I think you should hire a company to develop an open source application based on a plugin architecture (Eclipse, Qt, and Netbeans all have some support for plugins) that is thoroughly documented and friendly to third-party extensions. That way you aren't dependent on the whims and interests of open-source volunteers, but you create an open platform that encourages open-source contributions and, if your platform becomes popular enough, commercial offerings as well.

  39. OSX? by FunkyELF · · Score: 2, Insightful

    For my purpose, Cocoa applications relying on Core Data seem to be the best way to get the job done quickly. While I have some programming experience

    Why don't you either get more than "some" programming experience or stop making decisions on the framework / platform. This kind of crap happens all the time when non-technical people make high level decisions on language, framework, or platform.

    And if you want it open-source why are you tying it to a particular OS?

    If you use QT, or GTK, or WX you can still have it on OSX as well as others.

    1. Re:OSX? by GrahamCox · · Score: 1

      If you use QT, or GTK, or WX you can still have it on OSX as well as others.

      Yes, but if he *wants* it on a Mac, primarily, it will look like crap.

  40. Re:How Do I Get Open Source Programs Written For M by MBGMorden · · Score: 1

    Actually I have a Computer Science degree and I'm most familiar with C and C++. It's just that my current employer doesn't have a need for that right now so any development I do there is as a hobby, and PHP is what I do for a living. I actually picked up PHP years after the others.

    --
    "People who think they know everything are very annoying to those of us who do."-Mark Twain
  41. Research Software by rockmuelle · · Score: 3, Insightful

    Developing software in a research environment is challenging. There are a number of constraints and conflicting interests that make it difficult for researchers unfamiliar with software to be truly successful. To make matters worse, the relationship between academics and professional software developers is almost non-existent, in large part simply because the research community has limited funds available for software development.

    I've worked with a number of research labs to help bridge this gap and have developed a basic set of guidelines for developing software in research environments. In the end, the most important thing to do is draw a clear line between research tasks and development tasks. Understand what is in your area of expertise (research) and what is best handled by software engineers and other professionals. Then, depending on your resources, either hire a full time development team, a part-time consultant, or work with your university's IT staff to find local resources (many universities provide software development services). The place not to look is in the CS department: those students are there to do research, not write software.

    I've put together a presentation that outlines a number of the challenges and how to address them. This presentation has evolved over the last 5 years based on a few ongoing academic research projects that have applied the ideas in it. Most of the ideas are standard practice in industry, but applying them to academic projects can be trick.

    The slides are at:

    http://www.osl.iu.edu/~chemuell/projects/presentations/vt-software.pdf

    Good luck with your project!

    -Chris

  42. My company does work-for-hire by jcoleman · · Score: 1

    My company develops on Macs on a work-for-hire basis. We have experience in the defense field with scientific legacy desktop applications, server-based enterprise apps, and process simulation. We charge $100/hour for development, develop using agile methods, and are extremely customer focused (redundant since I already said agile). You can do whatever you want with the code when we're done; you will own the copyright. We are quite comfortable with OSS; we rely on it for our dev tools and the frameworks we use to develop our products. We're not a huge firm like CA or SAIC; you'll deal directly with the lead developer and project manager. Since we develop with agile, if you don't like what you see after 30-60 days, you can stop us, pay us for what we've done, and find another team. You get to keep the code we've already written.

    Check us out:

    http://www.traxintl.com

    You can contact us via the Contact Us form or by contacting me via Slashdot (click my name above).

  43. School's CS department? USE IT!! by plasmacutter · · Score: 0, Redundant

    Do you do your research at an academic institution?
    Alternatively, Does your company maintain close ties with one or more academic institutions?

    You can leverage this to the advantage of both you and their CS students.
    There are undergrad practicum courses, students hungry for internships, etc. etc.

    It probably won't be as fast as a "rent-a-coder", but it's a great way to get things done "on the cheap", and a lot more people than just the open source community will be helped in the process.

    --
    VLC FOR MAC IS DYING! IF YOU DEVELOP, PLEASE SAVE IT!!
  44. Re:How Do I Get Open Source Programs Written For M by blindd0t · · Score: 1

    Yeah, you put that PHP layman in his place, Anonymous Coward! (Sarcastic)

    Seriously though, I think you comment should be modded down. As someone who's worked with a huge variety of different languages and frameworks, on a variety of different platforms, it's sometimes a bit of a pain getting accustomed with how a particular framework is organized and meant to be used. Some are just easier to learn than others depending on what your prior experience is. The same is also true for a given framework's documentation -- just getting used to how it is organized can take a little time and effort. I hardly see that as a reason to belittle someone for primarily coding in PHP, however. The language alone is definitely not a good metric for measuring one's competence. Even given the "holy grail" of languages (none exists imho), a bad programmer can make the "lowest of the low." Also, when you speak about the PHP front-ends being the "lowest of the lowest," what are you referring to, precisely? Because the "front-end" is really just the markup generated, along with graphics and CSS in that world. While PHP dynamically generates the markup, nothing about the language forces anyone to put out horrible looking/functioning front-ends.

  45. College Capstone project by chemosh6969 · · Score: 1

    Go to a college's CS department and offer it as a capstone project. Someone may or may not do it, but it'd get done for free.

    1. Re:College Capstone project by Anonymous Coward · · Score: 0

      Yes - University of Technology (Sydney) requires all their engineers to do a 12 month Capstone - projects like this would be ideal, especially if you paid a stipend :-) Although, you would need to provide good, solid requirements and restrict the scope, check regularly that work is actually being completed, etc.

  46. Re:How Do I Get Open Source Programs Written For M by Tubal-Cain · · Score: 0, Troll

    ...the lowest of the lowest in the IT world.

    VisualBasic, anyone?

  47. Parent link not work safe by Anonymous Coward · · Score: 0

    Just warning ya.

    1. Re:Parent link not work safe by Anonymous Coward · · Score: 0

      needed to know that before I clicked on it. doh

  48. Re:How Do I Get Open Source Programs Written For M by MBGMorden · · Score: 1

    While PHP is technically a scripting language, not a programming language,

    You're actually making a distinction there that doesn't exist. A "programming language" is any set of instructions that can be setup to produce results on a computer. It is inherently neither scripted nor compiled; implementations of it are. For example, QBASIC and QuickBASIC were nearly the same syntax-wise (and both were implementations of BASIC), but one was interpreted, and one was compiled.

    In the same way, the PHP language is very much a programming language, but current implementations of it are interpreted rather than compiled. If one so wished however a compiled implementation could be created, and that wouldn't have any effect on the language itself ;).

    --
    "People who think they know everything are very annoying to those of us who do."-Mark Twain
  49. I'd check the universities by Opportunist · · Score: 1

    Depending on where you are, you may either land a job with students who need money for their tuition (US) or profs desperate to prove that their ivory tower actually produces anything useful for the economy (Europe).

    In any case, I'd start looking around the universities. You have a vast pool of highly intelligent people who will probably work for rather little money or even free provided the software may be used in their research and/or they can use it as proof for their interdisciplinary research efforts for more grant money.

    Some universities teaching CS have a medical/biomed branch because, as you may have noticed (hehe), there's a need for programmers who know both. I'd start looking there. There's always students looking for money and something for their thesis, and of course departments looking for "reality based" problems to show off and cash in on.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  50. I might know someone who can help you... by MacOSXHead · · Score: 1

    I have worked for several Biomedical companies as a contractor over the years and I have done Cocoa, Java/Swing, and Qt along the way.

    Feel free to contact me

    tomcondon@mac.com

  51. Simple... by Anonymous Coward · · Score: 0

    www.rentacoder.com
    www.getacoder.com

    The best ways to find qualified programmers in my opinion.

  52. cofundos by BertieBaggio · · Score: 1

    Have a look at cofundos. While it may not suit the OP, those who are in a similar situation may find it useful.

    --
    If all you have is a grenade, pretty soon every problem looks like a foxhole -- MightyYar
  53. Find a LUG by Anonymous Coward · · Score: 0

    Your best source for this would probably be to find your local LUG, and they'll most likely be able to get you in touch with people who do OSS development. If there's someone with a similar interest as you, you could probably get a partner on that project--but offering money would get it done much quicker.

  54. Re:How Do I Get Open Source Programs Written For M by Isaac1357 · · Score: 1

    haha... I was thinking it, but didn't say it ;)

  55. Try me! by Snocone · · Score: 1

    I'm a Cocoa (specifically iPhone by preference these days) contract programmer who's quite open to the idea of working on an open source project, as virtually all my contractees insist on keeping my involvement secret which is very annoying indeed. It would actually be rather nice to have a freely available example of my coding skills to point people at.

    Not nice enough to work for free, mind you, but if the project's halfway interesting I'd consider something in the range of $50/hr probably which is about half of what a decent Cocoa programmer is going to cost you at the going rate these days.

    If that's in discussion range email me, alex at alexcurylo dot com.

  56. Bounties?? by Anonymous Coward · · Score: 1, Interesting

    Personally, I think hiring someone is a bad idea. You don't have a lot of coding experience so you won't be able to judge quality. I think you are better off using some sort of competition as a means to get the job done. How about breaking the tough part of the work into smaller portions that can be easily tested for performance, quality, etc. Give out prizes to whoever completes the code on time and scores the highest marks against your tests. This requires more work on your end because you have to quantify how you are going to judge the submissions but you would have to sort of do it anyways if you were trying to measure the quality of the work you paid for. Since you are a researcher, I assume you have contacts in Academia. Advertise the bounties in the CS department and wait for the submissions to trickle in. I've never tried this but I think it might work well.

  57. choice of toolkits by Rich_Morin · · Score: 1

    As has been mentioned, there's a relatively small number of Cocoa and/or Objective-C programmers around. However, you don't need all that many people (maybe only one?), so I don't see this as a major constraint. In fact, I might suggest that you consider going into an even smaller niche. By choosing RubyCocoa (or its upcoming replacement, MacRuby), you might be able to create a framework that would encourage scientists to add their own code. A great deal of Open Source software is written by employees and released by the companies that employ them. This can offer real benefits to the company, in that they may get outside help in the project (eg, in development, documentation, maintenance, and testing). If the code base starts to attract outside attention, the company may be able to have the developer(s) take on some organizational tasks (herding cats :), as well.

    --
    Technical editing and writing, programming, and web development
  58. Comment removed by account_deleted · · Score: 2, Insightful

    Comment removed based on user account deletion

  59. Plus management by btarval · · Score: 1

    Sorry, I have to respectfully disagree. If it was as simple as throwing money at it, Vista would be the greatest OS ever made, instead of the dying pig that it's become.

    Cash helps. But without good management (on the client's part), it's going to lead to disappointment. Unless you happen to get one of the very few contractors who knows how to manage things (like the customer) themselves (maybe 10% do, but 80% will claim to :) ).

    There's an old Engineering saying:
          - Better
          - Faster
          - Cheaper

    Choose any two. This is still true today as it was 30+(?) years ago when it first came out for software development.

    My personal experience though, is that you are very lucky to even get one of those, unless the project is well managed.

    --
    The best way to predict the future is to create it. - Peter Drucker.
    1. Re:Plus management by nine-times · · Score: 1

      Cash helps. But without good management (on the client's part), it's going to lead to disappointment

      Yes, to me this also raises some other questions. For one, I'm assuming that the guy asking the question has a reason for wanting specifically to open source it. He's probably hoping to get some amount of work put into the project that he's not paying for, or else why bother?

      Now that doesn't necessarily mean that he's expecting completely free labor to be given selflessly for his own sake, but he might have the idea that other individuals or companies would have an interest once he got the project rolling.

      So once he's heading down that road, it seems like his questions should turn to things like, "How do I attract a good community?" or "How do I manage different people with different business interests contributing to the same project?" So he might also want to ask, "Once I get these programmers writing things for me, how do I manage an open source project?"

      But then maybe he already has ideas about that.

    2. Re:Plus management by Tekfactory · · Score: 1

      I'm not certain you're right. Sometimes people want at least the illusion of control that comes with contract work. Maybe he has a deadline, or a vision he doesn't see coming from a community dev project. I have an idea for a project, a video game in fact, and a MMO to boot. Yeah, I know how 'those guys' are treated on the internet.

      However, instead of just saying I have this idea, I am also writing requirements docs, a story bible, and have paid artists to create 2D concept art and 3D models for the game. When I'm ready I intend to solicit bids against the requirements doc, and run this thing like a real SW dev project. Later I would like to Open Source parts of the game as appropriate. Most likely the client, server, and any 3D models and textures we can spare.

      I don't have much interest in relying on the community development model to get me to release. When the game is released, or maybe around beta I'd like to release the code as OSS, and a community can develop around it or not, but I don't want to have to rely on that to get me through demo/alpha/beta status.

      I have the possibly misguided belief that there needs to be some structure or critical mass to build around first. Something for people to get excited about before you can attract a community.

      Some of the Concept Art is up at http://www.evilrobotgames.com/

    3. Re:Plus management by j-pimp · · Score: 1

      Yes, to me this also raises some other questions. For one, I'm assuming that the guy asking the question has a reason for wanting specifically to open source it. He's probably hoping to get some amount of work put into the project that he's not paying for, or else why bother?

      I think its quite possible some of the free work he plans on getting will be done by other than the original contractors.

      --
      --- Justin Dearing http://www.justaprogrammer.net/ We're just programmers.
  60. ze monies by Anonymous Coward · · Score: 0

    How much money you got?

  61. Re:How Do I Get Open Source Programs Written For M by Isaac1357 · · Score: 1

    You certainly have a point, and there are PHP compilers out there, but they are still in their infancy. I have never really understood the distinction between scripting and programming, and always just assumed that the distinction was interpreted vs compiled.

  62. Bioinformatics by bakuun · · Score: 2, Informative
    The field of bioinformatics is basically all about developing software to solve biomedical informatical problems.

    If you want somebody to develop a program to solve a scientific problem in the biomedical domain, it is likely that what you need is a bioinformatician.

    The asker does not mention in what context he is doing research. If at a university, offer the problem for bioinformatics msc students that need to come up with something for their dissertation project (or even as a phd project if the problem is considerably larger).

    If the asker works in industry rather than academia, student placements would still be possible (offering a connected studentship), or simply hiring a bioinformatician.

  63. Software is very hard by ChrisA90278 · · Score: 3, Interesting

    What kinds of rates to expect. It depends a lot. You can find kids who will work for peanuts but then you want profesional quality well documented work that is well tested. You will have to hire some real software engineers, some real quality control peopel and some real technical writers and editers and graphic design people. I've worked in the software business for 25+years and I'll tell you that it is expensive. You'd be shocked at how little a million dollars will buy. For example I live in So. California and have a wife and two kids. How much money would I need to support a middle class lifestyle? Then figure in typical levels of productivity. In my area, embedded systems used by military equipment we are lucky to see 200 lines of code per month per engineer. But that is fully debugged and tested and we have very, very strict quality controls. If you are writing for the web then you can be almost 100 times more productive because crashes and failure is tolerated because people don't die when a web page fails. Productivity is also a matter of luck. Studies have shown that in any group of 6 engineers there will be a 2:1 ratio of productivly between members of the group.

    "Lines of code" is a horrible mearse of a program's size but is as good as anything else we have. Typical LOC counts are about 5,000 for a simple but non-triveal program that one or two people might write. The Postgresql database system has nearly 500K lines and the Linux itself has about 10M line.

    So take the productivity numbers, your line of code estimates and an assumed salery plus overhead, payroll taxes, worker's comp insurance, social security and so on. Pick 100K per year for young people and double that for those with 10+ years full time experience. Run the numbers with low, average and high estimeats and you will get the range of costs. And yes you might be able to pullit off using all low estimates if yuo hire students who work at home and alrady have a solid understanding of the science and math.

    The worst case would be back when I worked on a radar system. In industry, radar is hard. Just over half the projects fail for technical grounds and this is even for organizations like Raytheon. We blew through millions and had nothing to show for it. But then producing maps in real time in the cockpit as a supersonic aircraft flies over the ground is not easy. But on the other hand if you are only creating forms on a web page, some kid will do it for you in a few hours. Cost depends very strongly on the problem domain AND the experiance of the enginers in that feild. In our radar case no one had yet solved this specific problem so going in we know we had a high risk.

    Risk is I think a worse problem than cost. Most software managers try very hard to reduce risk and make of a plan A, B and C. at least. It is worth paying double to reduce risk by half. Your best risk reduction technique is to find engineers with the relevant experience. Who understand both the science and the programming environment. On a large project yuo simply can't find enough of these people unless your project is very generis (like an on-line store)

    Good Luck.....

    1. Re:Software is very hard by Corson · · Score: 2, Insightful

      "Pick 100K per year for young people" Those were the times, my friend...

  64. Too far down the line... by meburke · · Score: 3, Insightful

    You have already "jumped to solutions" with this question. You have made decisions about the outcome that you haven't related to the actual problem. For instance, you have specified Cocoa, but you don't say why that specification solves a specific problem.

    So, I guess I'd recommend asking a few questions like:

    What do you want? What problem are you trying to solve? How many alternative ways could you solve this problem? What are the necessary constraints? What is the best alternative that satisfies solving the problem within those constraints?

    For instance: You need to have a program that does "X". The program solves the problem of calculating and communicating by typewriter or longhand. The program could be written in C/C++, Qt, Python, Smalltalk, etc., etc.. The program must be maintainable by you and you only know C++ and Cocoa. Therefore you must select an alternative that includes these languages...

    Most decisions are sub-optimal because people don't evaluate enough alternatives. This is OK if the decision is not important or easy to change, but the more time and money invested, and the more people involved in the use of the solution, requires you try to create an optimized decision.

    Then you start picking the programmers. Under similar circumstances, I have found it best to check with the employment agencies, and ask around among my IT friends for referrals. Get references.

    Good luck on your project.

    --
    "The mind works quicker than you think!"
  65. Jim Waldo says... by FrozenFOXX · · Score: 2, Funny
    While at USENIX 2008 I got to listen to Jim Waldo from Sun Microsystems and among other topics he covered programmers. He had the following to say about getting a programmer.

    Have you ever seen these programmers? Most of the time they've got more metal in their faces than in my car. It's like I always tell people, you want to attract a good programmer? Use an electromagnet.

    --
    "Just a fox, a whisper."
  66. Re:How Do I Get Open Source Programs Written For M by joss · · Score: 1

    Ok, ok, I'll feed the troll... front end work especially in php is often done by people who barely qualify as programmers, but it can also be pretty respectable work and has its own challenges that are as tough to solve well as anything else.

    I'm also not convinced they are the lowest of the low either, the guys who made facebook did ok for themselves, as did the people who put together ebay, amazon, etc. None of those involved anything justifiably patentable but making a front end that works well can pay off.

    --
    http://rareformnewmedia.com/
  67. Cardinal Peak by Mr+Howdy · · Score: 4, Interesting

    Well, to start, posting the question anonymously means that nobody who actually does this sort of a thing for a living can contact you :-). Not sure if that was the intended effect or not.

    I run a 25-engineer development shop in Colorado named Cardinal Peak (http://www.cardinalpeak.com). We do quite a bit of development on OS/X and Linux, including open-source development, and I'd be happy to talk with you about your needs.

    Please forgive the obvious self-serving nature of this response, but it seemed on-topic for the original question.

  68. We'll do it by prayag · · Score: 1
    Hey,

    So I work in one of the reputed services company based out of New Delhi, India. We have worked on both iphone and Cocoa framework. We are also working on a few of our own Open source projects so we can help you little on that aspect as well. Rest assured that you would retain the full rights of the software.

    For more details you can contact me at prayag D0T narula AT gmail DOT com

  69. Learn Cocoa :-) by Silas+is+back · · Score: 1

    I am also a biomedical researcher and I've found the best way to get your custom applications written in Cocoa: Do it yourself. :-)

    --
    this sig is useless
  70. call an international temp agency... by davidsyes · · Score: 1

    That tests its candidates. Then, try contacting the investors at Biopolis in Singapore--if your company is in a position to.

    --
    Previously: "Linux... Toward the Sunrise..." Now: "Linux... Toward the-- No, now, part of Every Sunrise"
  71. expect to pay more by Cajun+Hell · · Score: 3, Funny

    Would a requirement that programs are released as open source make it more or less difficult to find someone to do the job?

    Here's how my previous job worked: We would find someone who wanted something, and charge them hourly to write it, and then give 'em a binary to which we're the copyright holder. Then that program would be a "product" that we would sell to other people in the same business. It was great for us (and not so great for them, but they didn't know better).

    If you make it so that we don't have a proprietary product (developed at your expense) to keep selling over and over, then we're going to ask for more at the "charge them hourly to write it" part. (Well, either that, or you're going to do business with someone more competitive than us, who is ok with only being paid once for each unit of work.)

    And to be fair, the business was actually a lot more honest than I just made it sound. And it is still a standard practice in the business (there just wasn't anymore more competitive than us). That's how things will be, until enough people like you say they're willing to pay for free software, so that it reaches critical mass and becomes the new standard.

    --
    "Believe me!" -- Donald Trump
    1. Re:expect to pay more by swillden · · Score: 1

      The same thing can be done with open source, pretty close. You, the developers, retain copyright, with the understanding that you release it under a copyleft license, like GPL (it doesn't work so well if you use a permissive license like BSD). As far as future revenue goes, you then have two options, and you can pursue both.

      First, you can provide contract development services to other organizations and individuals who need additional features added. These contract services can charge a premium hourly rate because while anyone can do the work (it's open source), you can almost certainly do it faster. Also, since your name will be all over the product, you'll nearly always get asked whenever someone has a need and is willing to pay for it.

      Second, you still have the option of releasing the program as a closed-source binary when that makes sense, and you can do that under whatever terms you like.

      Where this approach gets to be really sweet is when you can let other people add to the product -- at no cost to you! -- which you can then sell. By retaining control of the master source repository for the open source version, you can require that any submissions that go into the main tree have copyright assigned to you. Some contributors will balk, but as long as you're open about what you're doing many will be willing to sign over copyright in order to get their code into the main tree. While someone COULD fork it, as long as you're a reasonably good steward, that's unlikely.

      In some cases, you may find someone who builds a new feature you'd really like to have, but who isn't willing to assign copyright. For those, it might make sense to negotiate, offering a little cash. Since the feature code is worthless without the rest of the code, you ought to be able to buy it for far less than it would cost you to build it. Or, sometimes it just makes more sense to reimplement the feature so you own that code.

      This is a pretty well-proven business model at this point. Of course, it relies heavily on the software being the sort that can build enough of a user base to get contributions, and the sort that can also be sold. It seems to work best with development tools, but can work with other software as well.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    2. Re:expect to pay more by Cajun+Hell · · Score: 1

      I just want to say I'm amazed I was modded funny here. I presume someone thought that the idea of being paid hourly to write a program and yet also retain the copyright and then resell it multiple times, is so perverted that the situation is hysterical.

      But I'm telling you: that's the real world I'm talking about. Things really work like that.

      --
      "Believe me!" -- Donald Trump
  72. You ask me by kndyer · · Score: 1

    I've been developing software for the medical industry (diagnostics and therapeutics) for eight years, much of that using ObjectiveC under OpenStep. I'd certainly be interested in discussing contract work of this type.

    Kelly.

  73. how high-quality? by Anonymous Coward · · Score: 0

    Open source is not an issue at all, so long as it is clear that you own the copyright of the developed code. Then, you can do what you like with it.

    There are many ways to approach the engineering of "high-quality programs." However, in general, they will be very expensive. The real issue is how high-quality of development do you need. If you are truly after a full-up engineered piece of software, which includes:
    requirements analysis
    design documents
    test procedures
    traceability matrices
    implementation
    formal qualification/certification
    etc...

    the price can be quite large. This type of effort is certainly not a rentacoder job. It is unclear what you want the software to do, but if it is be used in any sort of safety-of-life situation (patient diagnosis perhaps) there may be some legal issues as well. Also note that there are additional requirements that need to be considered to protect patient privacy per the HIPAA (in the US at least).

    In general, right now in the US, you can contract good software engineers that can perform all these tasks for about $80-$120 per hour depending on location and area of expertise. For a complete software development cycle, it is not uncommon to see a performance of 10 SLOCS/hr (lower for highly secure or life critical systems). If I remember correctly, the US Government assumes around 2 SLOCS/hr for most systems. So, if you want 10,000 source lines of code engineered and guaranteed to work, $100K is not unreasonable. (Estimating how large the program will be is a whole other issue).

    Of course, if you just want the Mac freak above to draw you some moving pictures, you could probably get it done for the cost of a bag of Cheetos a subscription to his favorite p0rn site (no offense meant to all the other normal, friendly, polite Mac folks).

  74. Sorry, OS X is not BSD. by Medievalist · · Score: 1

    Last time I checked it was XNU.

    XNU certainly had vast quantities of BSD source shoehorned into it in order to provide near-complete BSD APIs.

    But a fruit cocktail is not a pineapple.

  75. The best coders don't want to wear straitjackets by Medievalist · · Score: 1

    It doesn't matter if Cocoa is any good or not.

    What matters is that you shut out a significant number of potential community members when you are too narrow in your requirements, and that always hurts your chances for success when you are trying to leverage a community-dependent process like open source software development.

    The more esoteric your application is, the more important it is to allow your programmers to use the tool set they prefer to use. You've already cut the talent pool down drastically when you want to code up a phylogenetic tree inference engine instead of a porn browser mode; if you also expect to dictate the brand of computer that must be used and the color of socks the programmers must wear, you will dramatically decrease the odds of finding someone really good to work on your project.

    Use something truly multi-platform, like C or perl, and eschew toolset specifications.

  76. A 6 step guide :-) by Anonymous Coward · · Score: 0

    1) Hire Programmer/s
    2) PAY HIM - Most important
    3) Get the code done
    4) Review it
    5) Add LGPL license or GPL one
    6) Put the code with free access in internet for rest of the world.

    -- As simple as that.

  77. Re:How Do I Get Open Source Programs Written For M by Entropy2016 · · Score: 1

    I suggest next time you try learning Cocoa, you first have this book handy:
    "Cocoa Programming for Mac OS X" by Aaron Hillegass.

  78. Widen your platform, and use elance by scorp1us · · Score: 1

    Looking for Mac programmers alone is likely to restrict your talent pool. Try widening it by using Qt, that way you can use standard C++ with Qt talent. Which I think is a much larger user base. Your OSX deliverable is just a compile away.

    Why do you, a biogeek think Cocoa is the way to go? Shouldn't your developer have some say if he's the one to code it?

    In addition to rentacoder, there is also elance.com

    --
    Slashdot's rate-of-post filter: Preventing you from posting too many great ideas at once.
  79. Guru.com by ACMENEWSLLC · · Score: 1

    I use this often. Check out GURU.com. I have a guy in India that does work for me through Guru. He is superb at what he does and inexpensive. It's not Cocoa, but I'm sure if you post your project you'll have many bids within a day to two.

  80. Go ahead! by famebait · · Score: 1

    The open source bit will count as positive for most developers.
    If it's work for hire at competititve rates, most people don't expect any ownership or even credit anyway. OSS gives them the credit and an incresesed chance that someone will actually see their work. We really like that. If the work itself is interesting too, you might be able to get rates noticably below the industry norm.

    And finding coders/consultants that will work for hore is easy, if your pay is reasonable.

    The difficult part is finding the really good ones. They tend to be otherwise occupied, and spend their extra-curricular coding on stuff that is fun to them.

    For your project you probabaly need two really good ones: the chances of finding soeone who is really good at both programming the core of scientific programs _and_ making great guis is essentially zero. If someone feels offended by this: I'm not saying that they're inherently mutually exclusive, just that both are rare and a combination is rarer. Plus that for someone who specialises in usability and interaction, if they have a second speciality, it is unlikely to be number crunching, and vice versa. I'm sure they exist, and i'm equally sure they are all very well paisd doing very interesting jobs already. Both fields are entire scientific disciplines in their own right, and you can't get good at them without investing a whole lot of attention to studying them.

    --
    sudo ergo sum
  81. Re:The best coders don't want to wear straitjacket by Entropy2016 · · Score: 1

    What matters is that you shut out a significant number of potential community members when you are too narrow in your requirements, and that always hurts your chances for success when you are trying to leverage a community-dependent process like open source software development.

    Don't confuse not-being-able-to-find-programmers with not-knowing-where-to-start-looking-for-programmers. Also I'd like to point out all he has to do is ask some professors at a nearby university if they have any biomedical grad students who know how to program on Macs. You may think this is a near non-existent demographic, but I'm an environmental science major who's done Mac software for my own research purposes (and had fun doing it), so hey, we're out there.

    Use something truly multi-platform, like C or perl, and eschew toolset specifications.

    I'm doubtful anyone would be willing to use strict C to write an entire application nowadays, especially not for research which requires flexibility and the ability to do quick/easy experimentation with ideas that might end up going nowhere. Don't get me wrong, C is great for tons of stuff, but I'd avoid writing an entire program with a GUI in just that alone (especially if a non-professional-programmer like him is supposed to be able to make use of that open-source code). Objective-C & Cocoa really let you get away with letting the code evolve from nothing, with fairly little planning. It feels so casual. ANSI-C, well, takes more planning to avoid the code from becoming a mess. Once it becomes a mess, he'll be wasting time on managing the code rather than using the fruits of the code to further his research.

    By the way, you could always tell the programmer to develop a C-backend, and turn it into a library for an Objective-C frontend.

    Objective-C is is totally compatible with C. In fact, there is no Objective-C compiler, just a preprocessor that turns Obj-C into straight-C, THEN GCC compiles that. This is also the reason why you can get away with things like Objective-C++ which let you mix Obj-C code and C++ code in the same source code files. (You can't tell Obj-C objects to call C++ methods, but hey, you can always exchange data via primitive int/float/double). The C/C++ backend method is what I personally prefer.

    All I'm suggesting is to avoid the knee-jerk reaction to tell-him-what-he-really-wants and help him get what he's asking for. Don't assume he's completely clueless. If he wants to be able to use Cocoa, or at least a Cocoa front-end, let the man do as he pleases.

    Take a look at how the leading BitTorrent client on Mac OS X was designed: http://theocacao.com/document.page/548

    Transmission doesn't just give the appearance of being a good Mac app, it actually is. There's real, solid Cocoa goodness here. Based on a quick survey of the project (so don't hold me to the details), it looks like the developers did this by separating the core application logic out into a library called libtransmission, which I assume is shared across the different platforms.

    The Mac application project imports libtransmission and uses Objective-C's natural integration with ansi C to layer a Mac UI on top of the core library. The Torrent Objective-C class wraps the low-level C structs, acting as a bridge for the data model.

    Cocoa doesn't have to break multi-platform compatibility except at the GUI. If you're porting software, then you were probably going to have to rewrite the GUI anyway which makes that issue relatively moot.

  82. try elance.com by Anonymous Coward · · Score: 0

    elance.com is a freelance programming site that you can post your project on to have other bid to complete it. Working with contractors in this way works better if your project is well specified. Good luck.

  83. Be available by LordActon · · Score: 1

    Well, for one thing, say where you can be found. Your query made me wonder just what you had in mind. Maybe I'd be interested in helping out, but I don't know how to contact you.

  84. Post the job by stwf · · Score: 2

    Most cocoa heads are well acquainted with the cocoadev wiki. Its job page seems to get alot of action. I know I've seen Apple post jobs there.

    http://jobs.cocoadev.com/

    Most experienced Cocoa programmers will cost you between $100 and $200 an hour. Maybe you can get someone to bid by the job and get it cheaper. Also if you are willing to deal with someone doing the work part time it should get even cheaper, especially if your project is interesting.

    Less experienced programmers might take less to get a foot in the door or something for their resumes.
    The open source thing would probably help, I think I would prefer to work on a open source project and would be more likely to take a job if it was going to be open.
    But as far as determining rate I'm not sure it would affect things too much. I'll charge by the difficulty and time required.

    So if you do want an experienced cocoa programmer and don't mind someone part time, leave some contact onfo in your reply. I can get back to you.

  85. Call me for software programmers... by Anonymous Coward · · Score: 0

    Hello,

    If you need software programmers give me a call because I work with a consulting agency and that is what we do all day long. We'll help you with your contracts for hire and everything else and will also do a drug test and bachground check if that is what you please. You can call me at (888) 541-0400. THANK YOU!!!

    Sincerely,

    Zack Wright
    Pro-Tem Solutions, Inc.
    Connect With Me On LinkedIn- http://www.linkedin.com/pub/6/a7a/340
    249 E. Ocean Blvd., Suite 500
    Long Beach, CA 90802
    Toll Free: 888-541-0400
    Fax: 562-216-6412
    www.pro-temsolutions.com
    Right People Right Client Right Time

  86. Suck my dick by Anonymous Coward · · Score: 0

    you whiny mac faggot!

  87. Women by Fujisawa+Sensei · · Score: 2, Funny

    Find him a girl with a who likes geeks.

    --
    If someone is passing you on the right, you are an asshole for driving in the wrong lane.
  88. Predictive Patterns by radtea · · Score: 1

    Let's see if we can start a "competitor's thread" for people who do this stuff. :-)

    My company, Predictive Patterns Software (http://www.predictivepatterns.com) does development and data analysis, specializing in the difficult transition from "a program that works in the lab with expert users" to "an installable, documented application that works in the real world with naive users".

    Much of this is based on open source frameworks, and we are dedicated to writing cross-platform code whenever possible, mostly using wxWidgets as the application framework.

    --
    Blasphemy is a human right. Blasphemophobia kills.
  89. BOINC by kpearson · · Score: 1

    Why not ask for some volunteers to write your application for BOINC, a popular, open-source distributed computing platform? This would give you the added benefit of global, free computing resources for your project(s). Several people are knowledgeable about writing applications for the BOINC platform, and several others have experience writing code for other BOINC-based scientific applications and might be interested in contributing to yours.

  90. Just hire me! by Anonymous Coward · · Score: 0

    PhD in biophysics and ace programmer. I also freelance part-time. Yo, just hire me, I'll do the job for $65/hour.

  91. Why are manhole covers round? by skroops · · Score: 1

    I'd guess it's so that if it jumps up and rests at an angle, that downward pressure of road traffic or gravity is much more likely to push it back in if it's round than if it's square. What's the right answer?

    1. Re:Why are manhole covers round? by The+Bean · · Score: 1

      A round cover can never fall into the manhole, a square one I imagine could...

    2. Re:Why are manhole covers round? by pintpusher · · Score: 1

      Because a round man-hole cover has the least edge for its area, thus helping conserve our precious edge resources. Imagine what the world would be like if we ran out of edges!

      --
      man, I feel like mold.
  92. Who to hire by Anonymous Coward · · Score: 0

    Getting a program written for you in the open-source world should be, and is, easier than when you require the source to be kept confidential. There is a number of software companies out there whose business model is similar to the companies you know except two things: 1. they only accept projects dealing with opensource, 2. they're extremely good at what they do, usually they specialise in something. Well, why are they so good? Because they're made of people who created the open-source programs used by millions on their desktops (or elsewhere).

    So if you go to rentacoder you will get an average coder who doesn't care what the license. With that new range of companies though, you get something extra by paying for opensource: you get people who's portfolio is on your desktop already, who are in the community for years, who know how to leverage existing software rather than spending your money on rewriting the basics, and who will probably make sure that the contribution can be benefitted by others (because likely the project will be maintained for longer than until the first deployment).

    Some names that come to my mind are: OpenedHand Ltd., TrollTech, Imendio, Fluendo. The former two don't take new customers anymore because both have been acquired by their previous customers. Also notice that the all four specialise in embedded software, it's because I was in one of them and I only know about this small niche, but you can be sure there are more such companies. Our customers would come to us with their ideas and we would implement them and we would make sure everything is done in the free software spirit. Our customers generally knew about us from looking at the number of contributions made to projects they were interested in. This way they knew what to expect.

  93. How to find a good scientific Cocoa Engineer.... by Anonymous Coward · · Score: 1, Informative

    If I wanted to find a good Cocoa engineer to do a scientific application there are a couple of things I would consider:

    1) Apple Worldwide Developers Conference.
    Mac OS X has a very strong penetration into many scientific disciplines, few more so than the life sciences. This has been reflected at Apple's annual gathering of the creme-de-la-creme developers mid-summer in S.F. For the last 7+ years there have been many diverse science related sessions, gatherings, poster sessions, etc at the conference. It would be a great place to get to know some of the many hundreds of best scientific coders.

    2) MacResearch
    Over at MacResearch.org you'll find a huge number of technology oriented researchers and forums where you might be able to gather a critical mass of interest in a project or even someone to code it for you.

    3) Software lists
    Check out the many lists of Mac OS X scientific software out there. You might find that it, or something very similar, has already been developed. Here's a very non-comprehensive list to start with...
    http://www.apple.com/downloads/
    http://www.apple.com/science/software/
    http://www.finkproject.org/
    http://www.versiontracker.com/macosx/home-edu/math-scientific
    http://mac.sofotex.com/Educational/Math_And_Science/
    http://www.macosxapps.com/index.php?topic=sci
    http://www.pure-mac.com/science.html
    http://www.macinchem.fsnet.co.uk/macosx.htm

    4) Unix software
    It is usually open source, a good programmer can usually recompile it for Mac OS X in a very short time and it makes a great starting point for a conversion to Cocoa.

    5) Respond to Apple's Call for Science Apps
    (see the grey bar bottom of the page)
    http://www.apple.com/science/software/
    Give them a good business case for your app and the good people on Apple's science team in marketing and worldwide developer relations may be able to help.

  94. Um, slashdot bug maybe? by therufus · · Score: 1

    Anyone else notice in the title that there is no "from the someone-ate-my-from-the department"?

    Off topic I know, and mod me down as you probably will, but I've never seen that before on /.

    --
    You moved your mouse. Please restart Windows for changes to take effect.
  95. I am a Mac BioTech developer by sgraesser · · Score: 1
    In my experience, there isn't a single place to find Mac OS developers.
    Posting a job opening or project on rentacoder.com or dice.com is very often like looking for a needle in a haystack.

    Two groups that specialize in Mac OS development jobs are:

    As to programming rates, it varies with experience and which part of the world you are dealing with. If you are dealing with programmers in the USA, you will have to pay higher rates for programmers working on the East or West coast because the cost of living is higher. Don't expect experienced programmers to work cheap either! An experienced programmer with 5-10 years of experience will start at $50/hour, with a typical rate of $75-$100 depending on project length and difficulty.

    Remember, a good experienced programmer will do the job right the first time. An inexperienced programmer will sometimes take several tries to complete that task and the resulting program will be fragile and difficult to maintain.

    A quick check for determining programming experience is to get a development estimate for your project specification. Give the programmer a complete project specification (including screen mock-ups) and have them give you a project development estimate. An inexperienced programmer will typically under-estimate the time and difficulty of the project.

    If you are developing "general-purpose, scientific programs developed and released as open source", you should check the BioCocoa site to see if your project can leverage work already done there. If you can do the work in Java, the BioJava project is a good place to look for BioTech related libraries.

    Another good place to find more information about doing scientific research using Mac OS X is the Mac Research web site.

  96. Possible zero cost starting point by Anonymous Coward · · Score: 0

    Presumably you work within a university, so start by checking with your computing faculty to see if there's any interest as a student project. Final year undergrad and postgrad students usually work on projects of this nature.

    At my university each semester the engineering faculty sent out invitations for candidate projects, which extended to the local community. Students were required to work closely with the "client" and achieve a professional standard of work. The quality of the work can vary but can provide a starting point provided you, as the client, remain closely involved.

    Generally, with open source you must attempt to make the project interesting to the broadest possible cross section of potential developers. In terms of platform/technology choice, this works three ways: maximises the number of potential developers interested in your project; gives any developers you do attract the broadest range of open technologies to use in their work; helps to improve those technologies which in turn improves your own product. And the multiplier effect grows a little more.

  97. It is very similar to closed source development by Bunyip+Redgum · · Score: 1

    1. Get formal approval for the project, stating which license(s) will be used for the code, libraries and documentation.

    2. Establish your governance including project management framework etc (same as closed source, except all tools will need to be accessible to anyone involved in the project). Find a lawyer who understand FOSS licensing and ensure he/she reviews the contracts you will be using.

    3. Define your requirements. Make the high level design as modular as possible. Decide on the development environment.

    4. Search for similar projects to see if you can leverage them or entice the developers to work on your project.

    5. Setup a project environment - either on your infrastructure or somewhere like sourceforge. As a minimum this needs a code repository, wiki for documentation, mailing lists and a bug/ feature request tracking application.

    6. Ensure that you know who wrote every line of code and that you have the right to include it in your application. Where code is reused you need to ensure that the license is compatible and appropriate attribution is retained. (You do this with closed source applications anyway, don't you!).

    There are two models for paying the programmers - by the hour (which means you may want them working in your office at least part of the time) and by delivery of an agreed output with suitable quality. For the former, simply follow your normal recruitment practices for a contractor but advertise through your local Linux or other FOSS groups as well as the normal channels. If you are paying by the completed module you can either follow the normal quotation process or simply offer bounties of a set amount for a module. Bounties are likely to appeal to a different group of programmers including folk in developing countries and are a low risk way of tapping this resource.

    You will also need to decide whether to run the entire project openly or just open source it when you release version 1.0 - I recommend you start publishing code as soon as you can since that will maximise the benefits of open source flowing to your project.

    Good luck.

  98. I'm a contractor by hax4bux · · Score: 1

    I've been contracting since 1992 (mostly SF Bay Area). I'm cheap, around $125/hour. I could not imagine anybody worthy of the job to work for much less.

    Consider a post to CraigsList, and see what comes back.

    Not to discourage you, but this will be a long journey, much of which involves stuff you apparently are not interested in. You will have to staff and supervise the work. If you are unable to communicate what you want done, you might have to pay for multiple attempts to get it right.

    Another alternative: If you really have some coding ability (however meager) you should try to produce a prototype and make it available. Perhaps you will attract some interest and attract a community, which is what you wanted anyway.

  99. Digital Networking by WhiteHorse-The+Origi · · Score: 1

    My company, Digital Networking, has experience writing software for research and we have degrees in fields like Physics(from reputable universities).

    I wouldn't recommend the bidding sites based on my own experiences with them. Many of the bidders lie just to get the job. I've seen many bids for $30 to make a complete website. Does that sound realistic? Perhaps if it's a frontpage template that takes 5 minutes to modify, but a decent site can take a month or more to produce.

    I'd also recommend staying away from software shops(programming companies). They are in the business of keeping you locked in to upgrades, security fixes, etc. They're not going to just hand you some great source code and walk away...

  100. At least in France... by mmu_man · · Score: 1

    http://www.lolix.com/ brings together proposals for FOSS jobs and resumes of FOSS developers.

  101. Re:How Do I Get Open Source Programs Written For M by Anonymous Coward · · Score: 0

    Offerings of sex work better.

  102. Sure, USA is odd... by Flu · · Score: 1

    In the rest of the world, the copyright _always_ belongs to the original author. But USA never wants to do what the rest of the world does...

  103. Re:How Do I Get Open Source Programs Written For M by fyoder · · Score: 1

    Of course, how much beer & pizza is an important factor.

    Beyond a certain point you'd want to escalate to hookers and cigars. Actually, forget the cigars.

    --
    Loose lips lose spit.
  104. Hitch up with a CS dept. and go Agile by beef3k · · Score: 1
    • If you're a university researcher, get the CS department involved.
    • If you're in the industry, it's the same plan, but get your company to sponsor the student's pay (or their final degree, or a PhD project or two for some of the more techincally advanced/research focuesd parts of your software)
    • Go with Agile development, for instance SCRUM. Create a Product Backlog of all the stuff you want in your software and get it prioritized. This shouldn't take more than a few days. Hire a scrum master, or educate yourself. The product backlog is your long term plan. Don't waste time and money on waterfall and huge upfront specs, this is a project that needs to be dynamic.
    • Try to sign up one or two people who can act as chief architect/systems designer in the long run (say, at least a year or two) and make sure things don't get out of hand.
    • If you want the industry to support you, get in touch with them and ask what kind of features would be useful to them. Stuff it in the backlog, and make sure to present them with a demo once it's implemented. If this doesn't get them interested in supporting your project by developing code or providing you with resources, they weren't really interested in the first place.
  105. Re:The best coders don't want to wear straitjacket by Medievalist · · Score: 1

    Cocoa requires a mac; that cuts out at least 90% of potential contributors, doesn't it? Why impose this unnecessary restriction? Where's the gain, once we discount the supposed religious appeal to cult of mac followers?

    I've found that integrating a GUI with a program development is nearly always a bad idea. Write the program with clean APIs and text interfaces, then let the GUI guys write "pretty" interfaces to it after the fact.

    The example you provided (Transmission) looks like a good model of this. The application code is in a libary that is machine-independent C. The mac port has a mac GUI pasted on it for optimal useability on that platform. There's also a BeOS port, a wxWidgets version, and of course a CLI for dinosaurs like me.

    It's sadly rare to find someone who is both a top-notch app coder and a top-notch UI coder. I usually try to find someone else to build UIs to my code - and I prefer that the UIs be web-based, because desktops come and go too quickly to be worth targeting. I try to write apps that will run for decades without modification, and UIs don't last that long.