Archive for the ‘SaffronSierra’ Category
Tuesday, February 2nd, 2010 by David Young
A few weeks back there was an interesting article describing a security breach on Amazon’s EC2 Cloud. Of particular interest is this quote:
“On another part of the Sensepost presentation, they looked specifically at vulnerabilities of Amazon’s Web Services. To start off, they detailed the process involved in setting up a new instance on EC2… While Amazon has provided 47 machine images they built themselves, the remaining 2721 images were build by other EC2 users. Can you really believe that all of these images were built securely? Basically, the template directory is just a big archive of user-generated content.”
(more…)
Tags: amazon, ec2, security
Posted in SaffronSierra | No Comments »
Friday, January 29th, 2010 by David Young
A few weeks ago I was in the “post-holiday doldrums” and needed a lift out of my rut. I was missing Lisp (hadn’t written any Lisp code in two years); was curious about the details of the EC2 API protocol; and wanted a better environment for managing our Sierra instances that fit my style of working (I’m an old system-software guy that uses Emacs and Bash a lot). So I took a couple of days and wrote an EC2 API for Common Lisp, and then built a Sierra management interface on top of that. As it turned out, there were several open-source Common Lisp packages that helped: Edi Weitz’s drakma, a tidy web client; ironclad, an easy-to-use cryptography package; s-xml, a simple xml parser; and s-base64 for simple base64 encoding/decoding. Using these packages I had a functioning EC2 interface in half a day, and by the third day the package had everything I needed to build my Sierra layer on top. The decisive advantage this approach has over my previous python command-line interface is that my Sierra environment is running all the time (Lisp within an Emacs session); and thus I am able to interact with Sierra via the Lisp REPL., make changes without having to restart my Sierra environment, etc. Very cool.
(more…)
Tags: amazon, ec2, lisp
Posted in SaffronSierra | 5 Comments »
Monday, January 18th, 2010 by David Young
We’ve begun experimenting with the creation of Sierra AMIs using Amazon’s new EBS-backed AMI machinery, which allows one to store an AMI’s root device on an EBS volume rather than in bundled format on S3.
Right now, there seems to be little useful Amazon documentation on EBS-backed AMIs; the information necessary to attempt this experiment was gathered from several blog posts. Sierra is based on custom, internally built CentOS 5.3 AMIs; since none of the posts I found were CentOS-specific, some twiddling and guesswork was involved in getting a basic EBS Sierra instance started. However, this particular blog was pretty good: http://www.elastician.com/2009/12/creating-ebs-backed-ami-from-s3-backed.html.
(more…)
Tags: amazon, ec2
Posted in SaffronSierra | No Comments »
Monday, January 11th, 2010 by Chet Patel
After signing up for a Sierra account, a few simple steps can be taken to push your data into Sierra and then analyze your data.
First, you’ll need to grab our sample code. You can find the instructions for downloading our sample code here.
Once you have downloaded the sample code, look for the Ingest.java class (in the src/java directory). This is a command line tool that can be run from your JAVA IDE or as a compiled java application.
(more…)
Tags: development, REST, SaffronSierra
Posted in SaffronSierra | No Comments »
Thursday, November 12th, 2009 by Manny Aparicio
The idea of a memory base is simple. We define a memory as a matrix, keeping counts in the matrix cells between the names of things on the rows and columns. Let’s say we had a memory of me, called “Person: Manny”. If I query the row called “City: London” and ask for associated columns for “Carrier: ?”, I’d see “AA” and “BA” for American and British Airlines. Moreover, AA would be returned with a count of 6 and BA with a count of 1. More than just the existence of my travel relationships, we can also see the strength of my travel habits – in the context of going to London at least.
The idea is simple but fundamental. When we started Saffron and began working with one of the big intelligent agencies, one true believer in what we were doing would provoke others by saying, “It’s all just counts. What else is there?” What did he mean? When dealing with the analysis of massive data, so much of what is computed needs to be computed over counts. More deeply, information and knowledge is based on the frequencies of what we see in the world. Counts are fundamental to knowing what we know.
(more…)
Tags: analogies, classifications, entropy, frequency
Posted in Natural Intelligence, SaffronSierra | 1 Comment »
Wednesday, November 4th, 2009 by admin
This past year as we’ve developed Sierra and SMB (Saffron Memory Base, our enterprise product) we’ve tried to embrace the power of the web to deliver information to our users. Hosting our documentation online felt like a very natural, and valuable thing to do (still does). We decided to use PBworks to host our documentation. We probably made this decision because Twitter was using it for their online documentation,
As we lived with this solution for a few months we’ve noticed a problem with this approach that continues to haunt us. What’s the problem you ask? Versioning! We need versioning. As we’re developing features and fixing bugs for a new build we often need to update the documentation. We may change something subtle about the JSON that is returned from a REST call. We may add a new request parameter that we didn’t have before. The documentation stays fresh, but unfortunately our customers, both Sierra and enterprise, are not always on the latest build. Sometimes that is due to a choice they’ve made, but often the latest build hasn’t even been released. Either way we end up confusing our customers in an effort to keep documentation up to date. We’ve worked with PBworks support and have a strategy for helping with this, but I can already tell that the new strategy will not be perfect. We have customers on many different versions and we need them all to have documentation that matches their version.
Are there other tools that we should look at? We want it to be a hosted solution. We need to for all our developers to be able to edit and contribute. We like the “wiki” approach. Thoughts?
Tags: development, documentation, SaffronSierra
Posted in SaffronSierra | 2 Comments »
Monday, September 28th, 2009 by admin
Grails gives you a handy little class called Bootstrap.groovy. As it’s name implies this class allows you to “bootstrap” your application at startup (and shutdown). This is pretty handy in development when you want your application to start with some sample data loaded. For example, you might use Bootstrap.groovy to create a bunch of test user accounts (that’s what we do for Sierra). As you start to move your application into production you might find yourself commenting out lines of code (I did) in Bootstrap.groovy so that the production version of your application does not launch with all of your sample data loaded.
This week as I was working on some administrative functions for Sierra I found myself thinking there had to be a better way, and it turns out there is. As I’ve discussed before when Grails launches it knows what mode/environment it’s running in. The default environments are “development”, “test”, and “production”. The Grails configuration scripts Config.groovy, DataSource.groovy, etc… give you handy “environments” blocks, but what about classes such as Bootstrap.groovy. What should we do there? The answer is the grails.util.Environment class. This class knows what the current running environment is. If we use this in Bootstrap.groovy we now have a way to only load our sample data if we are in “development” mode. This is how it looks:
if (Environment.getCurrent() == Environment.DEVELOPMENT) {
// Insert sample data here
}
Tags: grails, SaffronSierra
Posted in SaffronSierra | No Comments »