Archive for the ‘Speaking’ Category

Ruby DCamp

Posted Sunday, October 12th, 2008 by Youssef Chaker

Ruby DCamp is the first conference, of any type related to ruby or my recent work with Ruby on Rails, I have attended since graduating from UVa. I have been awaiting this opportunity for a while now because my colleagues at OSC have been raving about the kind of people that will be present. People like Rich Kilmer, Brian Marick, Jeremy McAnally, Lucas Cioffi, David James and many more. Being new to the Ruby community, it is very important to meet the people who are responsible for the development of the Ruby ecosystem.

It was very convenient that the first topic that we discussed on the first day of the conference was the Ruby ecosystem. One of the key points that I got from that discussion was how people got introduced to Ruby through different ways and different circumstances but the majority got in through Rails. But a consensus between the “expert Rubyists” was summed up by one of them in the sentence “Came in for Rails, stayed for Ruby” which indicates that although Rails is the reason why people start learning Ruby, it is in itself not as appealing as Ruby is. This is why during one of the discussions we had, people were interested to find out more about the different technologies out there that leverage Ruby and give the developer the same functionality as Rails such as Merb. It was really cool to get the input of the people at the conference on their experiences with the language and the community itself.

There were two interesting things I want to mention specifically from the first day. The first one is that I found out that I am not as much a beginner as I thought myself to be.  I came to this conclusion from the Beginner Talk discussion I listened in on. During that talk, a few people who have been working with Ruby for a long time and one of them even teaching it were giving an outline of the language and mentioning things to look out for. Surprisingly enough, I already had experience with all that stuff unlike a few others who have a lot of experience with other programming languages but are new to Ruby. This was interesting to me because I came in thinking that I was the least knowledgeable person attending RubyDCamp in terms of Ruby and Ruby on Rails, but that was not true (much to my relief). The other thing would have to be the fact of how smart some of the Rubyest at the conference are. I heard all about it from my coworkers but I had to see it for myself to believe it and it was very apparent the moment I observed those people planning to patch ruby gems to add a functionality they figured to be important. This was not just it, as people were mentioning ideas of what needs to be done, one person in particular was already done implementing some things and the best part was how he had it all done before everyone even reached a consensus about it.

Saturday was great in the sense where I got to meet a bunch of new people and get an idea of what kind of projects everyone is working on. Sunday on the other hand was great to get into more detail. The first session I attended was titled “CouchDB hack session” and as the title indicates, it was a session focused on CouchDB. I think it was the most popular session of the morning because there were a lot of talks about it during the first day but most of the people had no idea what it was. It was a good session with a lot of discussion about CouchDB and its uses.

The next session I sat through was a session about SproutCore. I already had an idea of what SproutCore is because I had considered using it to develop one my apps, but ended up not using it. So it was interesting for me to get the perspective of someone who had already used it and also contributed to it. What distinguishes SproutCore is how it is modeled on Rails and allows the developer to use Ruby in development but then generate JavaScript and Json to be deployed once the application is done. This allows developers to keep using Ruby even in environments that limit them such as developing an application for OpenSocial. The main thing I got from this session was some sort of validation that SproutCore is a technology that can be trusted and used, which is a fear that I had because I did not want to develop an application using a new technology that will not be supported in the future, but I learned from the conference that Apple used SproutCore for their MobileMe application and also contributed to the project. This gives me some sort of relief that it will be around in the next few years.

At lunch we started sharing our “ruby experiences” and our “favorite tools” and here’s some of those tools: git-bisect, limelight, hpricot, mechanize, jruby… So if you haven’t heard of these tools before, make sure you do your research!

Oh… and one more thing that I should mention: We at OSC need to do a bit more pair programing!

All in all, it was a great conference and special thanks to Evan Light for organizing the event. Hopefully we will be able to build on this to grow and improve the Ruby community.

Helping Today’s High Schoolers Become “Future Leaders”

Posted Friday, September 26th, 2008 by Youssef Chaker

Stuarts Draft High School is launching their new event called: “Lunch with Future Leaders” and we have been invited to spend some time with the students to discuss with them our careers and the paths we took to get to where we currently are. This is a great opportunity for us to show our passion for what we do and give some insight to students who are trying to make important decisions about their future. As a community focused company we value events like this that allow us to interact with young people who will soon become the bright minds of the future.

Eric and Youssef will be having lunch with the students at Stuarts Draft High School on Tuesday, October 14, 12pm – 1pm.

Below is one of the news releases sent out by the school:

Stuarts Draft High School is launching “Lunch with Future Leaders”, an opportunity for young professionals to promote job skills and career pathways.  Once a month over lunch in the high school cafeteria, the featured guest and a group of students will be able to discuss educational foundations, the joys and challenges of a particular career, and job-specific knowledge necessary for achieving the students’ plans for their future. The first guest will be Sam Rasoul, candidate for the United States 6th Congressional District on Spetember 18th. Anticipated future guests will include local individuals in their 20’s and 30’s from a variety of interesting fields and professions. The core idea behind “Lunch with Future Leaders” is to allow students the opportunity to learn first-hand about the varieties of careers available and how to reach their potential in a chosen field.  The featured professionals will also benefit from hearing about the next generation’s ambitions and enjoy the chance to display how their own dreams have come to fruition.  Questions about this program can be directed to SDHS Principal, Donna Abernathy, or program sponsors Jonathan Kern, Government teacher, and Jenny Gardner, Career Coach.

HighTechCville@Neon Guild 9/15/08

Posted Wednesday, September 10th, 2008 by Eric Pugh

I’ll be presenting HighTechCville to the Neon Guild next Monday, September 15.

I’ve been looking forward to this for months because most of the people information in HighTechCville comes from the Neon Guild public membership database. My initial success in finding Communities of Interest came about by looking at the over 200 people in the Neon Guild and finding 8 folks who were all technical writer folks! I would never have guess that there are enough people in the Neon Guild who do technical writing to do a group dinner together!

See you’all there!

Here are directions from Debra Weiss:

Location:
Inova Solutions
110 Avon Street
Charlottesville, VA 22902

Directions from downtown Cville:
Take Market Street E to Ninth/Avon St, turn right.
Go over the bridge, get in the left lane.
Look for Spudnuts on the left.
Turn Left at Spudnuts, and then another immediate left.
Follow around, you’ll see a large brick building. That’s Inova.
Go around to the front of the building and park.
Take the elevator to the second floor. We’re in the café.

Charlottesville .NET User Group Meeting: Sept. 18th.

Posted Tuesday, September 2nd, 2008 by Matt Sposato

The Charlottesville .NET User Group will meet on September 18th from 6:30-8:30PM at the SNL Headquarters building (One SNL Plaza, Charlottesville VA 22902)

G. Andrew Duthie, Microsoft Corp. will present “Controlling AJAX when you’re out of control”

While implementing and troubleshooting AJAX functionality in an application is rarely easy, it gets even harder when you don’t have complete control over the site where you have to implement it. Shared hosting environments, blog accounts on large blog sites, etc. are situations where you may have only limited control over where and when your javascript gets loaded and executed. In this talk, Microsoft developer evangelist G. Andrew Duthie will walk you through some examples of how you can overcome limitations on such sites, and how to troubleshoot some of the inevitable issues you may run into. Some basic understanding of javascript and AJAX is assumed. Examples will span from simple mouseover image manipulation to implementing controls such as Microsoft’s Virtual Earth and Vertigo’s Slideshow Silverlight photo gallery.

Jason Hull to present at AAAE NextGen Airport Conference and Expo

Posted Wednesday, July 23rd, 2008 by Jason Hull

On August 6, 2008, Jason Hull will be presenting at the AAAE NextGen Airport Conference and Expo. He will cover how airports can use their websites as marketing tools to passengers, airlines, and general aviation. He will discuss the case study of the Charlottesville Albemarle Airport website and the AeroWeb product and cover best practices of websites throughout the industry.

More information can be found here.

Slides of my presentation are available here.

Charlottesville .NET User Group: Thursday July 17th 6:30-8:30PM

Posted Tuesday, July 15th, 2008 by Matt Sposato

This Thursday, July 17th 2008, the Charlottesville .NET User Group will meet from 6:30-8:30PM. Kevin Hazzard will present “Accessing Web Services from Silverlight 2 Beta 2″. The meeting will be held at the SNL Galactic Headquarters: 1 SNL Plaza, Charlottesville, VA 22902 (map).

Agenda:
6:30 - 7:00: Sign In, meet & greet
7:00 - 8:00: Presentation
8:00 - 8:30: Informal discussion, socializing
Description:
Silverlight is a client-side technology. So it’s not really a part of your SOA strategy, right? You may want to think twice about that. SOAP and WSDL support are coming to the web desktop via Silverlight. And Silverlight has good client support for REST+ JSON/POX and RSS/ATOM-based web services, too. During this discussion, we’ll dive into data serialization, security and cross-domain access policy capabilities inside Silverlight 2 Beta 2. We also talk about the nuances and pitfalls of provisioning your web services for an Internet audience. This presentation will be heavy on coding, demonstration and interactive discussion.
There is no charge for this event and everyone is invited. Food and beverages will be provided.

Trip Report: Shenandoah Ruby User Group

Posted Wednesday, April 30th, 2008 by Eric Pugh

Last night Joe Meade and I road tripped up to the Shenandoah Ruby User Group (ShRUG) meeting in Harrisonburg, Virginia, hosted at the RosettaStone offices.
Alex Herron kicking off ShRUG meeting
We went there to find out why there is a hotbed of Rubyists in rural Virginia! There were 20+ people at the meeting which was hosted in a conference room at RosettaStone. RosettaStone sponsors the group, kindly providing great sandwiches and soft drinks.

This week’s meeting was based around a Lightening Talk approch, so I of course spoke up and said I’d be happy to do one!

Lightening Talk 1: Learning Rails
Lynda.com is a good resource for beginners to Ruby and rails.. Most books deep dive into Ruby very quickly, and this site provies some simpler materials. Also some vidoes, including free ones…

Heroku.com is an online IDE plus platform for Ruby… So don’t fight with the installation, just go through web interface to get that first hit of coding Ruby on Rails!

He had setup an account for us, the username is shrug.friends@gmail.com, and I have the password, however not sure if he wanted to publish it.. Email me and I can share it. You can see the deployed application at http://shrug.heroku.com/, right now it’s just an empty shell.

The idea of using Heroku as a learning tool really worked for me. I know anytime I teach someone Ruby on Rails we have the initial battle in getting SQLLite to work, or the right gems in place. And I always have to say: trust me, the rest is much easier. Especially when showing some on Windows Ruby for the first time… With Heroku they can get something up quickly, and get over the “I Suck” stage quicker.

I didn’t catch the name of the presenter…

Lightening Talk 2: Open ID
I talked about OpenID, starting with Code Monkey, because I like the line about “Maybe manager wanna write goddamn page himself” which is at second 28 of the clip. I did a demo of how HighTechCville uses OpenID, and showed a bit of the Ruby on Rails OpenID plugin, and how easy it is to integrate.

Lightening Talk 3: Prototype
“Snuggs” did a presentation about how simple Prototype is, and showed us how he used it to quickly create a gallery of pictures that allows paging via Ajax and Javascript that is on his media site MonstarOnline The photowidget javascript all based on Prototype is at http://www.monstaronline.com/global/ecma/photowidget.js.

Lightening Talk 4: IRB
JeffMo talked about what IRB is and what we can use it for… He did a great session showing IRB and demonstrating how you can do things like spelunk what methods are available on your objects:

s = String.new
s.methods

or search for a specific method

s.methods.grep /reverse/

We also learned a bunch about how to use method_missing to catch methods that aren’t defined, and make intelligent decisions on what to do with them, as well as defining methods on the fly.

Lastly we saw a Domain Specific Language for playing Tic-Tac-Toe, all using dynamic methods and method missing! You can download the files and try it yourself from JeffMo’s site: http://www.jeffmo.us/shrug/
.

So, to sum up, while the Charlottesville RubyCodeJam has beer and cool shirts, and ShRUG has softdrinks, clearly we’re doing something wrong as they have double the turnout we usually do! It was great to meet some new people, and I hope some of them make it down to beCamp, which is THIS weekend!

Facebook Applications and Privacy Concerns

Posted Thursday, April 17th, 2008 by Arin Sime

This week I spoke at the LSP Conference at UVa, and while I was there, I got to attend several other speeches that were very interesting.  One that I particularly enjoyed was on Building Facebook applications, and the potential privacy issues surrounding them.  Adrienne Felt is a graduating fourth-year student at the University of Virginia’s Computer Science department in the School of Engineering and Applied Science (also my alma mater).

She first talked about how to go about building a Facebook app, which was interesting because I have been curious about it, but I hadn’t had the chance to look into it yet.  But the second half of her talk was more thought-provoking, because she discussed her research into the privacy issues of Facebook.
Those privacy issues are particularly relevant because of this article today in the Silicon Valley Insider, titled “Facebook Borks Blockbuster: Beacon Turns Into A Lawsuit”

The short description of what happened apparently is Facebook and Blockbuster video had a deal where you could put an application on your Facebook profile, and this application in turn was broadcasting to your friends what movies you are renting.  When a lady by the name of Cathryn Elaine Harris rented a pornographic movie, she was apparently pretty embarrassed to see it broadcast on Facebook and now she is suing.

Now go back to the Alley Insider article and read the comments if you haven’t already.  Once you get past the crude jokes, you’ll see a reply by a poster named Roy stating that:

“You did not need to do any type of opting-in to get this behavior. Simply being logged *into* Facebook was enough for Beacon to push my Blockbuster rentals to my Facebook news feed. There was no “do you want to opt-in” email, there was no “do you agree to send information from one site to another” option … it just happened one day.”

That quote really rings true with what I learned from Adrienne at the LSP Conference.  Check out her site on Facebook Platform Privacy.

She is mainly talking about how when you build an application for Facebook, you can force people who install your app to let you get access to all their Facebook data or they won’t be able to install that app.  Most applications require you to let them have access to all your data, even though according to Adrienne’s research only about 6% of them use it.

Now this is a little different than the court case mentioned in Alley Insider, because that was a case of a company providing presumably private customer information to a public data feed without that customer’s consent (or at least that is what her pending suit will allege).

But nonetheless, the article reminded me of Adrienne’s presentation and her work at UVa on privacy issues because it highlighted how willing we are to give up control of our private information to anyone on Facebook who asks for it, just so we can install a Facebook app like Zombie Killer and play an online game with a friend.

While Zombie Killer is considered “safe” and is probably not doing anything bad with your Facebook info, the fact of the matter is that Facebook allows me as a developer to write an application, encourage you to install it, and then I am allowed to pull any information I want (except your email address) from the profiles of Facebook users of my application.  I can then store that data on my own server indefinitely and use it for anything I want.  Most uses of this will probably be for more direct marketing of products to you as a Facebook user, but frankly is still creepy to me.