Blog

And We’re Live!

By | January 26th, 2012 at 11:01AM

The 2012 JRubyConf site is live, and we’re really excited about it!

We’ll be using the site as a way to keep you up to date with conference developments and details as they unfold. This will be the fourth annual JRubyConf and definitely the biggest and best yet! Join us in talking about and celebrating the union of the Java and Ruby communities. Follow the news section of the site to find out more about sponsorships, speakers, after-events and a soon-to-follow call-for-proposals. Also, stay tuned for more information about Workshop Day (Monday the 21st) and the conference schedule (Tuesday & Wednesday the 22nd & 23rd).

This year’s JRubyConf will take place in Minneapolis, Minnesota, home to some of JRuby’s main contributors and biggest cheerleaders, at the Guthrie Theater on the banks of the mighty Mississippi.

Want to support our cause? We’re currently looking for sponsors for everything from snacks to after-parties, so check out our prospectus for more information, or email us at jrubyconf@engineyard.com if you have other cool ideas. We’d love to see your participation.

Want to join us? Buy your tickets now. Can’t wait to see you all there!

RVM Stable and More

By | January 24th, 2012 at 12:01PM

Stable RVM has been available for some time now. Many of you may know what goes on in RVM, but there is still a story to tell.

RVM is now using git flow, following the model outlined here, which makes a diametrical change in the release model of RVM. We will no longer make small releases using the master branch. We will have rare larger releases (called latest). Even so, we will maintain a stable branch which gets only fixes and important updates like ruby version updates. This new release model will allow for development of new features in head whilst keeping a stable version of RVM available for production use.

To install stable RVM:

$ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

To update stable rvm:

$ rvm get stable # the same as:
$ rvm get branch wayneeseguin/stable

It is also possible to use your own fixes for rvm, which is especially useful for contributors. They can test their work or ask someone else to test their work before sending a pull request. Simply fork the project, add your changes, commit, push and then anyone can install / update to your fork:

$ rvm get branch mpapis/master

RVM now provides information about the age of the installation, in order to see exactly how old the installation is, we can run:

$ rvm info rvm
rvm:
version:      "rvm 1.10.0 by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.beginrescueend.com/]"
updated:      "2 hours 52 minutes 49 seconds ago"

Bridging the Gap Between Development and Design

By | January 19th, 2012 at 1:01PM

At a recent conference, I had the privilege of attending a talk entitled “Developers Can’t Design (and other completely untrue design myths)” by the incomparable Jen Myers. Jen is one of those rare individuals who effortlessly flows between design and development, having a formal education in computer science, but also a passion for design. I am not one of those people.

At least, not yet. For, you see, I have traditionally considered myself in the “graphically challenged developer” camp. There was no hope of bridging that gap. I know my limitations and embrace them. But Jen said something that caught my attention.

“Design is teachable.”

What’s that, you say? But what if I don’t have the eye for it? What if I don’t have the natural talent? Doesn’t matter, she says.

“There are rules to be followed. It’s about solving problems, not just personal preference, or what you think looks good.”

Hmm, I like rules. I can follow rules. There are a lot of rules to development as well. Maybe she’s on to something.

“It’s not magic.”

Jen then went on to describe basic design principles (such as balance, proximity, emphasis, unity, repetition) and a few design concepts (such as positive/negative space, color theory, contrast, typography, ratios). As well, she says that there should not be “design” or “development” silos, but the two should be fully collaborative, and work as one team from start to finish. Jen says she’s hard on designers who have no interest in learning any code, as well.  Being able to speak the language of the other person can make all the difference.

One of the biggest takeaways I got from Jen was the encouragement for developers to just break out of our comfort zone.

“Find a UX group. Go to a UX conference. We won’t bite, I promise. In fact, we’ll be thrilled to see you there.”

Good advice, indeed. Really, that’s what it comes down to. Us breaking out of our comfort zone and being open to learning something new. The “I can’t design” fallacy is really just that. Instead, we should s/can’t/haven’t taken the time to.

Coincidentally, the awesome @rands also recently posted a fabulous article on his blog, A Design Primer for Engineers. He goes through the different types of design, and gives us all food for thought.

“Engineers are uncomfortable with ignorance, but worse, we’re bad at asking for help outside of our domain of expertise.”

I don’t know that this applies to everyone, but in general, yes. Perhaps that’s the case. He also provides some books to check up on, one of which being “The Design of Everyday Things.” Jen also mentioned this book in her talk, and I can personally vouch for its awesomeness. Believe it or not, it’s fascinating.

Probably the best words of advice in his post mirrors what Jen had to say.

“Party. More. Together.”

Bringing our communities together seems to be the best answer to bridging the gap between development and design. So what are we waiting for? It’s not magic.

Have you already bridged the gap? Do you know of other resources that will help others do the same? We’d love to hear them!

Introducing the New Feature Request Forum

By | January 17th, 2012 at 10:01AM

Here at Engine Yard we are committed to making you, our customer, successful. Today we are happy to share with you a new Feature Request Forum available to you within our support ticketing system. The Forum is a place for you to communicate directly with us and with other users. We hope you’ll use it to exchange ideas with the community, and discuss ways we can continue to improve our platform and services to better meet your needs.

This is the first of many community topic forums we will be opening up in the near future. Your opinions and ideas are very important to us, and we want to ensure that you have the platform to share them, not only with us, but with the rest of the community.

All you have to do is log into your Engine Yard Support account and you will see the “Forums” tab on your home page.

Please check out our new Feature Request Forum and share your thoughts on what enhancements you would like to see in our products and services.  We are looking forward to hearing what you think!

Chicks That Rip: Carin Meier

By | January 12th, 2012 at 11:01AM

Carin Meier is a ballerina-turned-developer who hails from Ohio. I met her at JRuby Conf 2011, where she gave a fantastic presentation on Semantic Web and JRuby. She is a comitter to the 4clojure project and a Ruby devotee who loves to explore new development communities in the Cincinnati area, where she works at EdgeCase with the likes of Jim Weirich and Joe O’Brien. Carin’s got a lot to say about the power of shared data and the value of JRuby–check it out!

You started your career as a professional ballet dancer. How did you make the switch to computer science?

I really enjoyed my time dancing with ballet companies, but I always knew that I wanted to go to college as well. I chose to study Physics because it was challenging, appealed to my curiosity, and, quite frankly, the math just made my brain feel good. It also helped that I had a really inspiring female Physics teacher in high school. I remember distinctly one of my first Physics labs, in which we set up a ramp with a ball on top and calculated the distance to place dish to catch it. I made the calculations and when the ball actually dropped in the cup, I was hooked. This Math and Science stuff was very cool. Later in college, I worked on computer simulations with Mathematica and discovered that I really liked working with with software. So when I graduated, I took a job with a consulting firm and starting doing software development full-time.

What were your first experiences with software development like?

My first experience in the professional world was doing a HR conversion project for a large company. It was very different from the scientific modeling projects that I had done in school. The thing that I enjoyed about it was the immediate impact and value of the work that I was doing. Working with business owners and helping them solve problems was very gratifying. I also enjoyed collaborating with other developers in a team environment. Picking up all the new software development tools was not very difficult for me. Learning the domain and how to apply the right technology, was to me, the more challenging and important learning.

You mentioned that you have had the rare experience of working in two very different environments (as a dancer and as a programmer)—one where women are the majority, and one where they are the minority. Can you tell us more about this and what you’ve learned from both experiences?

I see a lot of similarities. Men in ballet are definitely in the minority. Ballet, in our culture’s view, is more for girls and not boys. As a result, there are not many men in professional ballet companies. It would be much easier to have dance company of all women. However, dance performances are so much richer and more expressive when they have both men and women performing. Having both makes the performance better, the audience happier, and the company stronger. There are the same sorts of cultural stereotypes with girls in math and science. But, in my opinion, the benefits of having a diverse software development team are similar. It allows a more comprehensive and expressive application of technology that, in the end gives you a better product, happier customer, and a stronger company. I am very hopeful that as technology and software become a more integrated part of our children’s lives that we will increase the diversity in our software communities too. I think role models are important too. I have a 5 year old daughter and was quite pleased when she announced that she wanted to be a computer programmer, like Mom, when she grows up. On the lighter side, one of the best perks of being a woman attending a technical conference rather than a ballet performance is – no lines for the women’s restroom.

You’ve worked for Fortune 500 companies and startups, as well as running your own consultancy. How do these environments compare? Which do you prefer?

Each environment has it owns advantages and disadvantages in my view. At the large enterprise level, there are some really interesting technical problems to solve having to do with scaling and data wrangling that you don’t usually encounter at the smaller company level. However, at the small company level, there seems to be more freedom in choosing and shaping the technology, as well as working directly with the customer. I, of course, loved the freedom of running my own business, but at the end of the day realized it was quite lonely for me and I preferred working in a team. Working with EdgeCase has been the best blend of all worlds for me.

How did you discover Ruby and what do you like about it? What has your experience with the Ruby community been like? What is the Cincinnati Ruby community like?

I discovered Ruby through our local community Cincinnati Ruby Brigade, which totally rocks. I was immediately impressed with both the people and the language. After working with Java, the dynamic power of Ruby and it’s ability to create clean and concise code really got my attention. I was equally impressed with the Ruby community. I have found it a very warm and welcoming environment. There is always someone more than willing to help you learn and overcome any problems. The open source community is full of incredibly smart and vibrant developers making really cool things. Oh, I and really like the Ruby whimsical streak too.

In your opinion, what is the value of JRuby? How do you use JRuby?

JRuby combines all the dynamic power and expressiveness of Ruby with enterprise ready platform of the JVM and gives you access to the rich world of Java libraries. That is a huge win. At our EdgeCase and Gaslight Software office, JRuby is being used on several projects. One current example is a project that is using JRuby access PDF libraries that are not available in Ruby. Another project is using JRuby’s ability to deploy as a war file to enable their product to be plug and play for any enterprise.

You gave a great presentation on Semantic Web at JRuby Conf 2011. Can you talk a little bit about why you’re passionate about this subject?

I have always had a deep respect for data. But, data alone is not as powerful as data shared. Semantic web gives us the ability to share and link data to other data in a standard way across the internet. This may sound like a simple thing, but look what sharing and linking documents to other documents through HTTP has done to our world. We have already seen great advances in search engines, analytics and data integration from Semantic Web technologies. But, I really think it is just the tip of the iceberg and I am very excited to see what the next few years bring as we shift our focus to an open data world view.