Support for SQLite2 has been removed in edge rails. You can still install the plugin separately but the recommendation would be to update to SQLite3.
Here are a couple of interesting blog postings I've found.
Gemcutter - A New Gem Hosting Repository
Bowline - A Ruby GUI Framework
Thursday, August 20, 2009
Saturday, August 15, 2009
Committed to Giving Back
BTI is committed to giving back to the community. See this video to learn more!
Tuesday, August 11, 2009
New in Edge Rails - Active Resource Enhanced SSL
Active Resource is incredible and makes using web services a breeze but it was lacking when it came to connecting to services over ssl. This past weekend an upgrade was added to edge rails that allows you the ability to define the certificate validation you require and gives you the ability to use x509 certificates. Below is an example of the new use case as described in the documentation:
Though this is may not be used by a large number of people it provides a great deal of flexibility for using Active Resource over ssl.
# End point uses an X509 certificate for authentication. See ssl_options= for all options.
# class Person < ActiveResource::Base
# self.site = "https://secure.api.people.com/ "
# self.ssl_options = {:cert => OpenSSL::X509::Certificate.new(File.open(pem_file))
# :key => OpenSSL::PKey::RSA.new(File.open(pem_file)),
# :ca_path => "/path/to/OpenSSL/formatted/CA_Certs",
# :verify_mode => OpenSSL::SSL::VERIFY_PEER}
# end
Though this is may not be used by a large number of people it provides a great deal of flexibility for using Active Resource over ssl.
Wednesday, June 17, 2009
Commonly missed web service tests
I've been developing web services for a few years now and noticed that better testing is usually needed when you are using web services because there are some aspects that are out of your control. Over the past few years, I have seen many issues arise from using web services that could have been fixed or mitigated with better testing. Some of the most common come from a combination of lazy coding and unexpected results. All of these issues can be fixed or handled in a way that users don't get the dreaded 500 error with a stack trace which won't do much for your user.
The great thing about web services is that you can change what happens behind the scenes without having to re-issue a library or jar file, but this means that sometimes the order of the response may change. I've seen a few developers hard code the parsing of the xml response instead of following the service spec. For example, there are times a developer will just assume the first node is what they are looking for but not check to see if it is the data they want. When a service gets updated it should always follow the spec but that does not mean the order is guaranteed to stay the same. If you are lazy and don't check what attribute you get back it can lead to some unintended consequences. It would be wise to add a unit or functional test that might return things in a different order just to see what kind of results you get.
Most of the time I bet your web service is fast, Lightning McQueen fast as my four year old says, and returns in under a second, but what if it hangs for say a minute or two. If you expect the response in less than a second what will your application do. Will it timeout, will it just sit there and be unresponsive, or might it crash? These types of things occur rarely but you should still have tests for it. Otherwise you don't know what will happen when it does occur.
Incomplete results is something else that could really throw a wrench into your application. Let's suppose that you make a call it returns just like you expect. You check the response code and everything is good to go but unfortunately you didn't get the entire response. What will your application do when it starts to parse the response. Most that I've seen throw up a horrible 500 error with a stack trace to the user. I know this might be helpful for you the developer but most users won't know what to do with it. A simple test can be added to keep this from happening and you'll be able to recover gracefully.
I know that none of these examples are earth shattering but it's surprising how often these cause problems for developers. Web services can make our lives as developers easier but if you don't test properly you might start to curse the web service when it is actually your fault for not testing better.
Wednesday, June 3, 2009
Programming Language Popularity
This recent post to the Spring Source team blog has some interesting statistics from two independent rankings of programming language popularity. BTI is continuously expanding our skills into the most cutting edge areas of the industry, as well as strengthening our existing expertise. Studies such as these are valuable to understanding the software development landscape.
![]() | ![]() | ![]() | ![]() |
Tour de Cure

Please join BTI in supporting Paul on his ride: Paul's Personal Page
BTI is a fast growing software solutions company headquartered in Ashburn, VA. Founded in 2004, BTI provides Enterprise Service and Machine Translation integration solutions.
Wednesday, April 15, 2009
BTI Gives To Compassion International
BTI financially supported Compassion International this fall to provide assistance to their global efforts in areas of the world in extreme need. Corporately, BTI believes in the importance of supporting organizations that impact the lives of children that live lives of poverty throughout the globe.
Compassion International exists as a Christian child advocacy ministry that releases children from spiritual, economic, social and physical poverty and enables them to become responsible, fulfilled Christian adults.
Founded by the Rev. Everett Swanson in 1952, Compassion began providing Korean War orphans with food, shelter, education and health care, as well as Christian training.
Today, Compassion helps more than 1 million children in 24 countries.
BTI is a fast growing software solutions company headquartered in Ashburn, VA. Founded in 2004, BTI follows a Principles over Process approach to implementing software solutions for web applications and enterprise services.
Compassion International exists as a Christian child advocacy ministry that releases children from spiritual, economic, social and physical poverty and enables them to become responsible, fulfilled Christian adults.
Founded by the Rev. Everett Swanson in 1952, Compassion began providing Korean War orphans with food, shelter, education and health care, as well as Christian training.
Today, Compassion helps more than 1 million children in 24 countries.
BTI is a fast growing software solutions company headquartered in Ashburn, VA. Founded in 2004, BTI follows a Principles over Process approach to implementing software solutions for web applications and enterprise services.
Subscribe to:
Posts (Atom)