Showing posts with label opensource. Show all posts
Showing posts with label opensource. Show all posts

Saturday, August 3, 2013

Michigan Should Create a Prize for a Working Animal Abuser Registry

Michigan was marching toward becoming the first state with a registry of animal abusers, much like the registry of sex offenders. Those plans are now canceled, for reasons that surprise no one.
the proposed registry has run into resistance from state police officials and others who fear it would be expensive and cumbersome
Instead, Republican Senator Rick Jones and Democratic Senator Steve Bieda are co-sponsoring a bill that requires breeders to pay $10 for Michigan-only background checks, and animal shelters to run free background checks. Why? A quote from Sen. Jones in the linked article (emphasis mine):
It's a start. Would I like it to be in law that no breeder or pet store would sell animals to someone who had been convicted? Absolutely. But we're looking for something we can get passed, and I think this is a good step,
We hear this constantly in software consulting. A good solution is identified and estimated only to discover the solution costs too much. The right next move is to find a way that gets you to the right solution for a lower cost, usually incrementally. Often, the next move is like what's quoted above -- finish something, anything, whether or not it accomplishes the goal, so we can say we finished something.

If we want a registry by the end of the year, let's put out a prize for a working registry by the end of the year. Make the prize $100,000; a reward high enough that I'd start working tonight, and lower than any piece of current government software. End the contest on November 30 and take two weeks to select the best application, in public. Every submission must be an open source web application.

By January 2014, we'll have a registry running. It worked for the railroads.

Thursday, May 6, 2010

Initial Git Push to RubyForge (Xbee Project)

Recently I became part of a team that is beginning to do quite a bit of work in Ruby. As a group committed to open-source, we immediately gave back in the form of a Ruby Gem. Our gem is called Xbee for Ruby and is focused on reading incoming data from the Xbee RF microcontroller. It's very low-level and exciting stuff.



Joining RubyForge is easy. Pushing to your Git repository is not. There is some documentation, but it is sparse and makes things difficult for people that are brand new to ssh public keys. So let's go through the steps from the beginning:



  1. Head to RubyForge.org and click the New Account link at the top of the page

  2. Once signed up, log into your email account and confirm

  3. Now that you're logged in, you can register a project by clicking the Register Project link near the top of the screen

  4. Fill in the requested details of your project: full name, purpose, pick a license, description, unix name, and choose Git as your SCM

  5. Once your project is approved, you're ready for your first commit...and this is where it gets tricky for a newcomer. Click the My Account link near the top of the page

  6. Scroll to the very bottom of the page and in the Shell Account Information section, click the Edit Keys link.

  7. If you're on Mac or Linux, fire up the Terminal and enter ssh-keygen -t dsa -C "your_email@email_provider", preferrably using the email address you've configured Git with.

  8. Terminal will prompt you for a place to save the newly generated keys. It automatically suggests ~/.ssh/id_dsa, and for most uses I'd say this is more than fine.

  9. So now you've created two files in your ~/.ssh/ directory. Open the public key file with your favorite text editor like so: vi ~/.ssh/id_dsa.pub

  10. Select all of the file, including ssh-dss and the email address you added and copy

  11. Head back to the RubyForge window you still have open and paste your public key in the box

  12. Click the update button and be prepared to wait until the top of the hour for your key to be added

  13. If you haven't done so already, head to the folder where your gem files are stored and initialize your Git repository with git init and commit everything with git commit -a -m "initial add"

  14. Next you'll want to add the remote RubyForge repository with git remote add origin gitosis@rubyforge.org:my_project.git

  15. Finally the last step! If the top of the hour has passed since you added your public key to RubyForge, you should be ready to push to the remote repository with git push origin master:refs/heads/master. Done!



A little more difficult than we would have liked, but we did get there eventually and now it's quite easy.