Sunday, January 17, 2010

CodeMash v2.0.1.0 Recap, Part 2

In my previous post, I covered my Precompiler and Day 1 of talks experiences at CodeMash this year. However, I was there for the full conference, so let's continue on with what I saw on Day 2.

IronPython for ASP.NET

Many of you know that there are two of us who typically speak on IronPython out here in the Heartland District - Darrell Hawley and myself. Neither of us were speaking this time around - we brought out Chris Sutton from Iowa. It was good to see that there was someone else interested in IronPython.

It was good to see an ASP.NET approach for IronPython - typically I see us presenting on client apps rather than web apps, so it was a different perspective. I was hoping to see more IronPython and ASP.NET together, but unfortunately, it was a lot of what I had already experimented with.

I know that Chris is trying to get IronPython working with ASP.NET MVC - this would definitely be an interesting angle. Next time around, I hope that the Python background is more brief and that there's more content related to ASP.NET - or even something with MVC. Hearing Chris mention IronPython and ASP.NET did get me to look into it a little further, and I found the ASP.NET IronPython blog. So we'll see where this goes.

Looting Design Ideas from WoW

Although I don't talk about it much, I have returned to the World of Warcrack... er... Warcraft. After a 2 year break and finally finding my footing in public speaking and blogging, I returned to WoW. I fought the urge as best as I could, but when one of my friends asked if I'd go back if he went back, I knew I would give in and go back.

When I had heard that Jason Follas wanted to do a WoW talk at CodeMash, I was sold on it right away. Combine my love for gaming with my love for programming, and I had high hopes for this talk. Jaecynn, Jaesyn, and all of his other characters did not disappoint!

No, it wasn't a 40-man raid or even a 5-man raid. Jason pointed out some of the great features of WoW and how we can apply them to our software. It was neat to see him point out how having shortcuts, in-game macro scripting abilities, and even a decent API can help. Unfortunately, I was more focused on the talk than on taking notes, so that's about all I can say. If you play WoW and are a developer, I would recommend trying to get his slides or hear this talk to see how features in game can be applied to your real world apps.

Conclusion

Overall, I really enjoyed CodeMash v2.0.1.0. It's introduced me to yet another programming language and has caused me to think about one that I work with as a hobby. Based on what I saw, I'm looking forward to enhancing my talks and further pursuing a topic that I thought I had lost the passion for. I got to see many friends - some who I haven't seen since devLink or even earlier. It was great to finally meet some of my other Twitter followers in person - I look forward to gaming and hanging out with you guys in the future! I had a lot of fun attending sessions, and I'm glad to see others' responses to the conference. I also enjoyed being able to spend time with my friends and their families, both at the conference and in the waterpark afterwards. Is it CodeMash yet?

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Saturday, January 16, 2010

CodeMash v2.0.1.0 Recap, Part 1

Over the past few days, I have been in Sandusky, attending CodeMash. This was my second year at CodeMash, and once again, I think Jim Holmes and his team did an amazing job of putting this conference together. Their main quote of Free your mind! really got me thinking, and this year, I decided to attend sessions on things that really piqued my curiosity.

A Look into Ruby

Many of my friends had urged me to at least look at the language, and I figured that I'd appease the curiosity of my inner language junkie. I started out in Joe O'Brien and Jim Weirich's Ruby Koans session at the Precompiler on Wednesday.

Joe had said that many programmers are also gamers and that we need to treat the koans as a learning experience and not like some game. I'll admit it - when I first started working on the koans, my gamer tendencies wanted to just fill in the blanks and make it on to the next test. It wasn't until a few tests in when my inner programmer beat out my inner gamer and reminded me just how excited I get about programming languages in general. Having seen a lot of programming languages in my past - through college classes and other past experiences - I have a great understanding of the various programming paradigms out there. So when I saw how Ruby did certain things, it reminded me of other languages - both in functionality and in syntax. Working through these exercises in tests gave me a better understanding as to what tests can be used for.

I stopped with the koans towards the end of the session, but I have a feeling that once things settle down a bit more, I may focus on them again.

On Thursday, I caught the discussion What Makes Ruby Different with Marc Peabody covering Java, Leon Gersing covering C#, and Joe O'Brien covering Ruby. It wasn't a "my language is better than yours" talk, and I was glad to see that. I liked the approach of comparing multiple languages to see how one is different.

After getting a brief glimpse of Ruby, I hope to look into it a bit more later this year.

ASP.NET MVC

I've been given the heads up to pay close attention to MVC, as I may need to use it on some upcoming projects. So I made sure to catch Chris Patterson's talk on Maintainable ASP.NET MVC. It was good to see how the MVC pattern works. There was one point that he said that really caught my attention - "ASP.NET MVC is an alternative to and not a replacement for Web Forms." I've been in a Web Forms world for awhile, and I always have seen MVC as an alternative, even though I have friends with strong opinions that MVC should be a replacement. It was good to see that there are others who see it as an alternative.

Refactoring the Programmer

The last talk that I really wanted to catch on Thursday was Joe O'Brien's Refactoring the Programmer. Joe told us his story on getting into Ruby and the community, talking about having a mentor and how an informal mentor relationship is great too, and stressing the point to find something that you're passionate about. In his talk, he recommended 3 books - The Passionate Programmer by Chad Fowler, Pragmatic Thinking and Learning by Andy Hunt, and Apprenticeship Patterns by Dave Hoover and Adewale Oshineye.

I absolutely loved this talk. Joe is right - it really should be all about finding something you're passionate about and running with it. This year, you'll see more blog posts on web technologies and database topics, since that's where my true passion lies.

This is what I saw on the first couple days - the Precompiler and first day of talks. Look forward to the next post, Part 2, when I cover the talks I saw on Friday as well as some concluding thoughts.

Labels: , , , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Sunday, January 11, 2009

Sadukie's CodeMash Recap

Last Tuesday, I left work early to head out to the Kalahari resort in beautiful Sandusky, Ohio. Although "resort" may make you think of fun in the sun, this was definitely not the case.

Fun in the sun at Kalahari

We had fun in the Nia conference center there, at CodeMash v2.0.0.9.

CodeJam and the other Precompiler (Day 0) Events

CodeMash started on Wednesday with the Precompiler, also known as Day 0. I was part of the team that facilitated the CodeJam, so I spent a lot of the day in the CodeJam room.

We originally had an app set up for people to interact with, but that idea didn't seem to take off well. However, we had people float in, code, and talk about their experiences. So although it didn't go as expected, the CodeJam was still a success in one form.

I talked with Corey Haines, and he has some ideas for structuring it differently for next year.

CodeJam in Action

In my break, I did look around to see where some of the other precompiler events were. The Ruby Precompiler event with Joe O'Brien and Jim Weirich seemed well attended.

Ruby Precompiler with Jim Weirich

I would have loved to learn Ruby from those guys or even check out Groovy and Grails or Value Mapping. I heard a lot of attendees speak very well of those sessions.

So overall - loved the idea of the Precompiler, but I wish I would've had more time to check out the other sessions. So next year, as long as the Precompiler comes back, I hope to only be an attendee so that I can float more and see more of the awesome offerings.

Day 1

On Day 1, I had a rough start to the day. I made it downstairs in time to catch some of the Open Spaces opening circle. This year's theme was Techniques *NOT* Tools!, and there were some interesting topics proposed - including community building, getting started speaking, mentoring, pair programming, personal branding, IronPython Tools, effective knowledge sharing, green practices, what is an architect, and pragmatic thinking and learning.

From opening circle, I headed over to room F, to catch the end of Leon Gersing's talk on Scriptaculous and Prototype. Once he was finished, then it was time for me to give my talk on IronPython. Some people have heard me talk of IronPython from the Windows realm, but with CodeMash being cross-platform, I ended up taking a different approach. My demos were run from an Ubuntu 8.10 virtual machine. I was able to show how Mono works, and although MonoDevelop was mentioned, it currently supports C#, and there's nothing in it yet for IronPython. For me, the weirdest part so far about talking about IronPython in a non-Windows environment is seeing Windows Forms working. Although I had a small turnout, I did have an interactive group, and I did talk with some throughout the conference.

After my talk, I got to meet up with some of the women who were attending.

Impromptu WiT Gathering at CodeMash

They've told familiar stories, which were interesting to hear.

From there, I floated around, getting some pics of the event. I spent more time wandering and talking with people that afternoon, and I came out learning quite a bit.

Day 2

On Day 2, I started out by talking with John Kellar about my IronPython presentation, for his Edge of Dev series.

From there, I checked out the Open Spaces board to see what the day had in store, as there was one session I had to catch but it wouldn't be until after lunch.

Open Spaces on "Getting Started on Speaking"

The first Open Space I caught was Alan Barber's topic of "Getting Started on Speaking". Having been speaking for awhile - currently in my second life as a speaker, having been a speaker almost a decade ago for a short time - I figured it'd be interesting to see who else shows up and what words of wisdom we could share with him.

Getting Started Speaking Open Space

Some of the key questions that came out of that Open Space include:

  • How do you decide what to present on? Do you go with what you know or what you want to learn?

  • How do you become aware of events looking for speakers?

  • How do you get started?


Some key points that came out include:

  • Toastmasters can help for getting started in giving presentations.

  • It all comes full-circle to your passion. If you aren't passionate about a topic, your audience can pick up on that, and that wouldn't make a good impression of the topic.

  • It's not about money. As a speaker, you may or may not be compensated for your time. Some things we've found to help bring the cost of speaking down include carpooling and couch surfing.

  • The speaker community is always looking for new blood - it gets stale, and with new blood comes new perspective and new topics.

  • Definitely try to find someone who's already speaking to help guide you through the process and get you into the community. Find a mentor.


After that session, I was introduced to someone who has had many years in the field and has spoken at other events but hasn't figured out how to get involved in the technical arena. In a case like that, you need to identify a need (which our community definitely has) and then figure out how to get in (like when calls of talks open for local events).

Overall, it seemed like a lot of questions and points were hit upon. However, if anyone has questions on this, I'm always up for talking more about getting into speaking.

Open Spaces on Mentoring

After the Open Space on speaking, I headed over to Rick Kierner's "Being and Choosing a Mentor" open space. Over the past few months, I've been contemplating joining MentorNet and reading up on mentor/mentee relationships. So when I saw this open space listed, I figured I'd check it out.

Open Space on Mentoring

Some of the guys kept mentioning company-assigned mentor/mentee relationships and how those sometimes work. Although I've never worked for a company that has a formal mentoring program, I do see the flaw in having one. There has to be a certain chemistry there for a mentor/mentee relationship to work - if it isn't there, the relationship is destined to fail. Company-assigned mentor/mentee relationships don't always have a way of seeing whether the people involved will work well. It's almost as if they need their own mentoring matchmaker.

One of the guys asked about having multiple mentors, and I had to chime in and mention that one person may not fill all of their needs, so multiple mentors would be needed to do the trick. Of course, I had to mention Brian Prince's "Soft Skillz" talk, because he does mention that point as well.

A Programmer's Guide to User Experience

The one session I absolutely wanted to see was thankfully not scheduled up against my own. I was able to check out Josh Walsh's "A Programmer's Guide to User Experience" after lunch. He talked of wireframes, drawing UIs on paper, and typography, amongst many other aspects involved in developing with a mind for user experience. It was great to see this presentation, as it reminds me that there are other UX people out there and that my way of thinking isn't as skewed as I think it is.

Final Thoughts

Closing Giveaway

From what I heard about past events, I'm glad that the user IDs weren't GUIDs. However, even though they used regular numbers as identifiers, they used random.org to generate the winners, and some numbers were called 2-3 times. Our lottery babes prize guys didn't seem phased by that. Rumor has it that Jay Farrell wrote a program for them to use next year.

Special Thanks

Special thanks to the CodeMash team for putting together an amazing conference - this includes Jeff Blankenburg, Jason Follas, Jason Gilmore, Darrell Hawley, Jim Holmes, Josh Holmes, John Hopkins, Melissa Insko, Dianne Marsh, Brian Prince, Chris Woodruff, and Scott Zischerk.

I went in with an open mind, attended this "larger than life" conference, and came out with an overload of information and many new contacts. I look forward to CodeMash 2010!

Labels:


Share this post:             kick this!  live it!

posted by Sarah at 2 Comments Links to this post

Wednesday, January 7, 2009

CG's CodeMash Adventures: Morning of Day 0

As I check out Is it CodeMash yet?, I see that the day has finally come. Yesterday, when I arrived at the Kalahari Conference Center, I was totally at a loss for words. This place is larger than life, simply amazing. I have had many people tell me about the awesomeness of CodeMash, and I think I'll see why they said all that they did.

Last night, I met some of the guys that Joe Fiorini talks about on Twitter. I also met some of the people who follow me on Twitter. It was great to meet the guys last night, and I look forward to meeting more people today. I'm not good at the initial face and name recognition, so please don't be offended if I don't say hi right away - come by and introduce yourself!

I will be hanging out at the CodeJam for a bit of the day. So if you're attending the Precompiler, come to the Indigo room and hack with us there!

Later tonight, there'll be a Panel Discussion and the .NET Rocks! Show with Carl Franklin and Richard Campbell, so if you're arriving later, check that out.




This is my first CodeMash, and I'm definitely looking forward to see what's in store. I hope to blog throughout the event, and I will be taking pictures as well. So for pictures, keep an eye on my CodeMash 2009 Flickr stream.

Hope to see some of you out here!

Labels: ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Tuesday, January 6, 2009

CG's CodeMash Countdown: Final Thoughts

Tomorrow is the start of my first CodeMash experience, at the Precompiler. There are so many tutorials that I want to check out, but I will mostly be hiding out in the CodeJam.

It all started in 2007, when my buddy Russ from work told me about CodeMash. He's gone to past CodeMashes, and whenever he talks about it, his excitement gets to me. I didn't meet him in time for 2007, but he could have talked me into 2008. However, I also was uncertain of my vacation time and how I would handle taking time off with my husband. Lame excuses, I know... but I didn't go to CodeMash in 2008.

Of course, I met more people who reminded me of my epic fail - including Jeff Blankenburg, Mike Eaton, Michael Letterle, and Joe O'Brien. Thanks to the push from all of these guys (and all the others who helped), I made it a point to set the dates aside. But I had talked with one of my friends earlier in the year, and he had figured that I'd go and enjoy my first year as an attendee and worry about presenting there the following year. As much as that sounded like a good idea, I knew better - it was pretty much expected that I'd submit talks for it.

So it's my first CodeMash, and I am going as an event co-lead (CodeJam), presenter (IronPython), and attendee. Thanks to my friends for encouraging me to attend. I've been looking forward to it for the past few months, and it's finally here.

If you are there and you see me, come up and introduce yourself! I look forward to meeting you there!

Labels: , , , , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Monday, January 5, 2009

CG's CodeMash Countdown: Open Spaces

Today's countdown feature is the event known as Open Spaces.

While looking at the CodeMash schedule, you may find yourself not interested in any of the topics in a particular time slot. If you find yourself in that position, I'd recommend you check out Open Spaces and see what's going on there.

What are Open Spaces?

As noted in the Heartland Open Spaces wiki:

"The open-space meeting or open space meeting is a generic term describing a wide variety of different styles of meeting in which participants define the agenda with a relatively rigorous process, and may adjust it as the meeting proceeds. A large meeting of this sort is called an open space conference or unconference."

- From http://en.wikipedia.org/wiki/Open-space_meeting

What can I expect?

Go with an open mind and some ideas, and come out enlightened. Although topics aren't decided until the conference itself (based on whatever participants propose), you may have ideas that you want to talk about. Propose a topic, post it on the open spaces board, and show up at the time you plan on talking. Or if someone else proposes a topic you're interested in talking about, check out their session.

Open Spaces board from devLink 2008

Open Spaces topics may include talks on technologies, tools, methodologies, and everything else under the sun. Check out the Open Spaces area for more details.

If you are neither learning nor contributing in a session you are required to get up and leave and join another session in progress where you feel you'll be more useful and inspired. - the Law of Two Feet

Who is running Open Spaces at CodeMash?

According to @codemash on Twitter, the Open Spaces at CodeMash are being coordinated by Corey Haines, Steven Harman, and Alan Stevens.

Alan was the awesome facilitator for the Open Spaces at devLink 2008, where the Open Spaces board from above was used. I expect that the Open Spaces at CodeMash will rock just as much - so definitely check them out!

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Sunday, January 4, 2009

CG's CodeMash Countdown: Python, Jython, and IronPython

Last year, I wanted to learn another programming language. A part of me wanted to learn Ruby, since the cool kids were all doing it. But at the same time, I wanted to be different. One of my friends recommended that I look at python. When I saw that there was a .NET implementation, I decided to explore IronPython. Since about March of 2008, I've been reading up on IronPython and presenting on it a little in the area.

This year, I hope to get my IronPython resources section together here on CodingGeekette.com and blog about it a bit more. I will be talking about IronPython at CodeMash, PyCon, and quite possibly PyOhio. If other people want to hear me talk on it, just send me an email at sarah at codinggeekette dot com.

While looking at the session list, I noticed that there's a python implementation that's written in Java - Jython.

So today's languages are python, its Java implementation, and its .NET implementation.

Language: Python
Website: Python Programming Language -- Official Site

Language: Jython
Website: The Jython Project

Language: IronPython
Website: IronPython

Where will these be seen at CodeMash?

Python

  • Precompiler Event CodeMash Code Jam

  • Python Data Visualization and Imaging, presented by Zach Steindler


Jython

  • JVM scripting with Jython, presented by Mark Ramm


IronPython

  • Pumping Iron into Python: Intro to FePy, presented by Sarah Dutkiewicz


Where can I learn more about these languages?

For Python, check out The Python Tutorial, Dive Into Python, and Useless Python

For Jython, check out the Jython User Guide.

For IronPython, the places I tend to look the most are DevHawk's blog, The IronPython Cookbook, and Michael Foord's blog.

Labels: , , , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Saturday, January 3, 2009

CG's CodeMash Countdown: Ruby and IronRuby

My buddy Russ from work was one of the first people to mention Ruby to me. He was all excited about this language, and his excitement definitely got me a little curious. Within a few months after hearing it from Russ, I heard about it from Joe, Corey, and Mike. I was curious to hear more about it, and when I saw that we had Joe O'Brien coming to Cleveland Day of .NET 2008, I figured I'd check his "Why Ruby?" talk out. I didn't really look into it on my own because it seemed like "everybody's doing it". Unfortunately, I was busy in that first session, allocating swag and making sure things were running smoothly, so I didn't get a chance to see Joe's talk. To this day, I have yet to catch it, but he's one I'd like to hear more from on it.

There is a .NET implementation of the language called IronRuby. Mike Letterle happened to get into it, and whenever I want to find out more about IronRuby, I know that he'd be the guy to ask. If he isn't around, then I'd get in touch with Carey Payette, as she's also tinkered around with IronRuby.

So today's CodeMash countdown languages are Ruby and IronRuby.

Language: Ruby
Website: ruby-lang.org

Language: IronRuby
Website: IronRuby.net

Where will these be seen at CodeMash?

Ruby

  • Precompiler Event: Ruby 101 with Jim Weirich and Joe O'Brien

  • Ruby Desktop Application Framework, presented by Lance Carlson

  • What? Threads Are Hard?, presented by Jim Weirich

  • Ruby Isn't Just About Rails, presented by Adam Wiggins

  • Developing JoeMetric for the iPhone, presented by Joe O'Brien

  • Testing Rails, presented by Joe O'Brien


IronRuby

  • IronRuby In The Real World, presented by Michael Letterle



Where can I learn more about Ruby and IronRuby?

If you're looking for people who eat, breathe, and sleep Ruby or IronRuby, check out the following blogs: Jim Weirich, Joe O'Brien, and Michael Letterle.

Other sites to check out include: Ruby Revival, Programming Ruby: The Pragmatic Programmer's Guide, and Justin Etheredge's posts on IronRuby.

Labels: , , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Friday, January 2, 2009

CG's CodeMash Countdown: Java, Groovy, and Scala


Slow down, you move too fast.
You got to make the morning last.
Just kicking down the cobble stones.
Looking for fun and feelin' groovy.


When I had first learned about Java, I was in college. The first time I started working with it was at OOPSLA '99, when my team implemented a coffee vending machine in Java with Swing. I had never worked with it or had seen it, but having had other languages in my past, I was able to pick it up well. About a year and a half later, I had a class on Java, where I actually learned about it in more detail. However, I didn't get that interested in it, and I hadn't realized just how big it had gotten.

Java has grown from what I learned it, and it has a full track dedicated to it at CodeMash. There are 200+ languages out there that run on the Java virtual machine - including Groovy and Scala. A more comprehensive list can be seen here.

So today's language set includes Java, Groovy, and Scala.

Language: Java
Website: Developer Resources for Java (java.sun.com)

Language: Groovy
Website: Groovy - Home (codehaus.org)

Language: Scala
Website: The Scala Programming Language

Where will these languages be seen at CodeMash?

At the Precompiler, check out the full day tutorial of Java, Groovy, and Grails 101 with Chris Judd and Jim Shingler.

There is a full track dedicated to Java. From what I can tell, you'll see these languages at the following presentations:

Java

  • Actor Concurrency, presented by Alex Miller

  • Executable documentation with easyb, presented by Andrew Glover

  • Spring 2.5 MVC, presented by Ken Sipe

  • RIAs with Java, Spring, Hibernate, BlazeDS, and Flex, presented by James Ward


Groovy

  • Rich Apps with Groovy's SwingBuilder, presented by Andres Almiray

  • Dynamic Languages and the JVM, presented by Nathaniel Schutta

  • Griffon in front, Grails in back, presented by Jim Shingler

  • Groovy/Grails for non-Java developers, presented by Michael Kimsal


Scala

  • Programming in Scala, presented by Venkat Subramaniam

  • Practical Scala, presented by Dianne Marsh

  • Actor Concurrency, presented by Alex Miller


Where can I learn more about these languages?

Java

Groovy

  • Groovy Beginners Tutorial on codehaus

  • Grails & Groovy Tutorials

  • Fluently Groovy, from IBM


Scala

Labels: , , , ,


Share this post:             kick this!  live it!

posted by Sarah at 1 Comments Links to this post

Thursday, January 1, 2009

CG's CodeMash Countdown: Javascript

My first post in 2009 is a continuation of the CodeMash countdown, resuming with languages. Today's language is one that I've had a love/hate affair with for many years. It was only with AJAX that I really started to have a change of heart and started writing in it more. However, I still design my public sites at work for users who may have Javascript disabled.

Without further ado, here's Javascript...

Language: Javascript
Website: ECMA 262 Standards

A Little About Javascript

Once upon a time, there was a company called Netscape. They wanted to introduce a scripting language to their browser to make web pages interactive. Enter Livescript, the first implementation of this language. Shortly after Java came out, Netscape renamed their Livescript language to Javascript.

To compete with Netscape, Internet Explorer came out with its own scripting languages - vbscript and JScript. However, Netscape had a huge following, and IE's JScript grew closer and closer to Netscape's Javascript.

Javascript is currently a standardized language, maintained by ECMA. Although they renamed the language to ECMAScript, most developers continue to call it by its familiar name of Javascript.

Where will this be seen at CodeMash?

Javascript and its many forms will be seen at the following presentations:

  • Introducing Prototype and Scriptaculous, presented by Leon Gersing

  • Improving Web Application Performance and Scalability, presented by Steve Smith

  • Microsoft Virtual Earth, Now in 3D , presented by Aydin Akcasu (possibly)


Where can I learn more about Javascript?

Some good resources I've come across include:

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Wednesday, December 31, 2008

CG's CodeMash Countdown: The CodeJam

Today's CodeMash Countdown isn't about one of the languages, but rather
about one of the Precompiler events. Over the past few months, I've been working with Gary Bernhardt, Joe Fiorini, Corey Haines, and John Stockton on planning the CodeJam.

No, we're not make jams and jellies out of code. Nor are we making music with our code - although that would be quite fun!

So who are these guys that I'm working with?

Gary Bernhardt is the leader of the Cleveland Python Users Group. Joe Fiorini is one of the Cleveland Ruby Brigade organizers. Corey Haines is the famous Corey Haines of the recent pair programming tour. John Stockton was the leader behind Cleveland Day of .NET 2008 and is a co-author of a Silverlight book. I'm always excited to work with these guys - great senses of humor and just great to work with overall. Our bios are included with the event description on the Precompiler page.

And just what is the CodeJam? As John best described it:

Come take a look at how you can cross-breed technologies in your application to take advantage of the advantages of each. In this all-day lab we will be demonstrating an end-to-end solution using Silverlight, Ruby, Python, Django and MySQL. Experts in each technology will be on hand to show you how we did it and help you create a version of your own. Build a single tier or build it all, it's up to you.

Showing up ready to build in any of these technologies will make the day faster but we can help you install the tools as well. In fact, we will even have a pair of VPCs to provide attendees with the entire source code and trial versions of the dev environments so you can just show up, load up and code.


We'll have VMware images of a Linux environment and a Windows environment, so that if you want to develop in an environment other than your own, the VMs will work. These virtual machines can be run through the VMware Player.

Come on out to the CodeJam and see what it's about!

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Tuesday, December 30, 2008

CG's CodeMash Countdown: F#

First, D-flat... and now G-flat... which note will be the next language?

Amanda Laucher has been talking about F#ing for quite awhile. Although that may look like something obscene, all she's doing is talking about (and eating, sleeping, and breathing) a language called F#. The first time I heard about F# was at her presentation last spring at Central Ohio Day of .NET. I have since heard her give her F# talk at the GCPCUG VB.NET/C# SIG, and it is still quite interesting to hear, many months later.

Whether you're new to F# or an advanced user, Amanda covers it all. So if you're at a conference where Amanda is talking on F#, I'd check it out.

So today's CodeMash Countdown language is F#.

Language: F#

Website: F# at Microsoft Research

A Little About F#

Okay, so maybe this isn't a musical language.

Taken from the Microsoft Research site:


F# was developed as a pragmatically-oriented variant of ML that shares a core language with OCaml. Unlike other scripting languages it executes at or near the speed of C# and C++, making use of the performance that comes through strong typing. Unlike many type-inferred, statically-typed languages it also supports many dynamic language techniques, such as property discovery and reflection where needed. F# includes extensions for working across languages and for object-oriented programming, and it works seamlessly with other .NET programming languages and tools.


Where will this be seen at CodeMash?

F# is making its rounds at CodeMash at Dustin Campbell's talk "Multi-threading Mojo with F#".

Where can I learn more about F#?

Check out the Microsoft F# Developer Center on MSDN.

For all news F#, I'd recommend checking out Don Syme's blog.

For those developers familiar with C#, check out What does this C# code look like in F#?.

Dustin's blog also has many examples of F# in action. Matt Podwysocki also appears to have quite a few examples of F# in his blog.

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Monday, December 29, 2008

CG's CodeMash Countdown: SQL

I love working with databases. When I look at data, I see database tables, stored procedures, and everything that goes with them. Even when I look at everyday things - like this book sitting on my coffee table - I see various parts of it and how it would fit in a database. Author, title, ISBN number, publisher, page count... and that's just to start. My mind is just geared to see databases and the various relationships that belong to the tables.

My first database project was a freeware address storage app written in Visual Basic 3 with Access as its database. My first experience with databases in the business world was dealing with the ones in my internship right out of high school. For part of that internship, I had to make sure that the data in the database matched the spec sheets. For another part, I worked with a consultant on a VB 6 app that talked to a Microsoft SQL Server database. Towards the end of the internship, the Oracle DBA invited me to his cube to show me how Oracle works.

All of my internships in college dealt with some type of database work. From the one I mentioned above to making FoxPro programs Y2K compliant to upgrading Access forms to VB6/MS SQL, I always had some kind of database experience. Even in my student worker position in college, I co-wrote an inventory system using PHP/MySQL. Getting into the real world, I eventually took on database administration of MS SQL servers, and I am developing apps that work with MS SQL.

Anyhow, enough about my passion for databases and back to the CodeMash Countdown. Today's spotlight is on SQL - structured query language.

Language: SQL

Website: http://www.itl.nist.gov/fipspubs/fip127-2.htm (FIPS Standard for Database Language SQL)

A Little About SQL

This language is used for manipulating databases. Originally developed by IBM for their System R database system, SQL became the standard language for relational databases. SQL is standardized by both the ANSI and ISO systems.

Although there are standards in place, vendors have added their own features for their implementations, so not all SQL queries can be used across multiple database systems. For example, MySQL has a LIMIT clause that can be extremely useful when developing queries for paged data; however, there is no LIMIT clause in Microsoft SQL Server.

Some of the big database systems out there that use SQL include: Oracle, Microsoft SQL Server, MySQL, and PostgreSQL.

Where will this be seen at CodeMash?

You will see SQL in use at the CodeJam at the Precompiler. We are using MySQL as our database.

As for the CodeMash presentations, check out "Well, Isn't that Spatial... (SQL Server 2008 Spatial Data)", presented by Jason Follas.

Where can I learn more about SQL?

For a generic SQL tutorial, check out Webucator's SQL Tutorial.

If you are using Oracle, check out the Oracle/SQL Tutorial.

If you are working with Microsoft SQL Server, check out the SQL Server Developer Center on MSDN.

For MySQL, check out tizag.com's MySQL Tutorial.

Finally, for PostgreSQL, check out the tutorials found in the official PostgreSQL documentation.




SELECT ReaderName FROM BlogReaders WHERE IsAttendingCodeMash = 1

If you're in that result set, I'll see you there!

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Sunday, December 28, 2008

CG's CodeMash Countdown: Erlang

Here in Cleveland, I have the opportunity to collaborate with a talented and diverse group of developers. Corey Haines is one of those developers, and he's the first person that I've ever heard mention Erlang. I wasn't sure Erlang was, but Corey's talk of it sparked my curiosity. Without further ado, featuring Erlang....

Language: Erlang

Website: http://erlang.org/

A Little on Erlang

Erlang was created in the labs at what is now known as Ericsson AB, originally designed for use in telecom applications. Some of the key features of Erlang include native support for concurrency, distribution, and fault tolerance. It can run on a variety of platforms - including Solaris, Windows, Mac OS, and Linux. Nowadays, it doesn't stay in the lab - it is an open source language.

For more on Erlang, check out Ericsson's page on Erlang.

Where can this be seen in the wild?

Facebook uses Erlang in their chat system.

Apache's CouchDB database system is written in Erlang.

The IM daemon ejabberd for Jabber is also written in Erlang.

Where will this be seen at CodeMash?

While looking at the CodeMash session list, it looks like there's only one Erlang presentation. Check out "Erlang: The Basics" by Kevin Smith.

Where can I learn more about Erlang?

I'd recommend starting with the Erlang Frequently Asked Questions, to get a base understanding of the language. From there, check out the Getting started section of the official Erlang site.

Tamale.net has a tutorial called Erlang for the C, C++, and Java Programmers.

Kevin Smith has put out a screencast series called "Erlang in Practice". Check it out on the Pragmatic Bookshelf.

Me Dev, You Jane also has some interesting articles on Erlang, including a knock knock joke and a series called Erlang Introduction (For the Ruby Guy).

Finally, for all sorts of Erlang news, check out Erlang Inside and Erlang Community (trapexit.org).

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 2 Comments Links to this post

Saturday, December 27, 2008

CG's CodeMash Countdown: C# and VB.NET

Continuing the countdown, let's look at the two common .NET languages - C# and VB.NET. Yes, I am combining both of these languages into one post. This may make some C# programmers cringe, as some may find VB.NET inferior. VB.NET seems to be the Rodney Dangerfield language - it gets no respect.

Seriously, though, I'm a C# developer in my day job, but my first foray into the .NET languages was with VB.NET. Before working with C#, I was a VB6 developer, but I knew that the app I was commissioned to make had to be web-based, so no VB6 for that. I figured I'd stick with a language that couldn't be that much different than what I was used to - how hard could it be to work in VB.NET? Boy was I foolish for thinking that!

These languages have been debated for eons, with Dan Appleman writing an eBook on it, Coding Horror blogging on it, and a little more recently, the DotNet Mafia mentioning it. Microsoft did release a white paper on the difference between the two languages. Though I have to wonder - why argue which one is "better"? Every language has its strong points and weak points - learn both and consider them as more tools in your toolbox when it comes to application building.

Both of these languages have the ability to show up in any Microsoft-related developer presentation, as these are the languages that get the most focus when showing off anything code-wise in the .NET realm.

Language: Visual C#
Website: http://msdn.microsoft.com/en-us/library/aa287558(VS.71).aspx

Language: Visual Basic .NET
Website: http://msdn.microsoft.com/en-us/library/aa903378(VS.71).aspx

Where will these be seen at CodeMash?

I'm going to guess that if a Microsoft-technology developer talk shows any code, it'll most likely be C#, as that appears to be the language of choice for most of the .NET blogs that I read. Maybe some of the speakers will see this blog post and throw me off by showing mostly VB.NET examples. (Ok... so maybe that's stretching it.)

Looking at the session list, I'd have to guess that you'll see C# or VB.NET in some of these sessions:

  • Modern Web Applications with .NET, presented by Drew Robbins

  • Dev Guide: Skinning Silverlight Controls, presented by Jesse Liberty

  • Managed Extensibility Framework, presented by Drew Robbins

  • A Lap Around the Live Framework and Mesh Services, presented by Jeff Blankenburg

  • Scaling Habits of ASP.NET Applications, presented by Richard Campbell

  • Deep LINQ: C# Query Expression Pattern, presented by Bill Wagner

  • Re-thinking UI - WPF DataTemplates, presented by Carey Payette

  • Reverse Engineering Applications, presented by Joe Kuemerle

  • Modeling types with extension methods, presented by Bill Wagner

  • Developing for Microsoft Surface, presented by Jennifer Marsman

  • Cloud Computing with .Net, presented by Wesley Faler


Where can I learn more about C#?

The MSDN C# tutorials cover a variety of features available, each rated either "Simple", "Intermediate", or "Advanced".

The Visual C# Developer Center on MSDN has articles, tutorials, starter kits, and videos just to name a few types of resources. Check out that site for all things C#.

C# Station has a series of tutorials as well, breaking the language into building blocks, similar to my data structures classes in college.

Where can I learn more about VB.NET?

Dan Mabbutt has put together a series of VB.NET tutorials on About.com.

Code samples can be found at VBnet™ Visual Basic Developers Resource Centre.

I've also found some VB.NET ASP.NET examples over at 4 Guys From Rolla.

Finally, to find all things VB.NET - including starter kits, tutorials, and videos - check out the MSDN Visual Basic Developer Center.

Labels: , , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Friday, December 26, 2008

CG's CodeMash Countdown: PHP

I am starting my CodeMash Countdown by featuring a language that I've worked with in the past and that I've helped others learn. Introducing one of my favorite web development languages...

Language: PHP

Website: http://www.php.net

A Little About PHP

PHP, as close to what we know it as today, first appeared in 1997, as PHP 3. What originally started with a guy named a bunch of Perl scripts his "Personal Home Page Tools" eventually evolved into a C implementation language called PHP/FI ("Personal Home Page/Forms Interpreter"). However, a couple guys found PHP/FI underpowered, and they beefed it up into what came out as PHP 3.

PHP 3 brought on a new abbreviation - PHP now is a recursive abbreviation, standing for PHP: Hypertext Preprocessor. It also brought a lot of extensibility - talking to more databases, over more protocols, with more APIs.

For a complete history, check out the history of PHP on the official PHP site.

Where can this be seen in the wild?

PHP has been used in an assortment of applications, including content management systems - such as Joomla, PHP-Nuke, and Mambo. Other popular PHP packages include MediaWiki (Wiki software), WordPress (blogging software), Gallery (photo gallery software), phpBB (bulletin board system), and Zen Cart (shopping software).

Some sites that use PHP include:


Where will this be seen at CodeMash?

Although there are no sessions featuring the language, it is used at the Code Jam on Day 0. This is my language focus, as I had worked with it extensively in the past, co-writing an inventory system in PHP.

If you want a preview of what kind of fun lies ahead at the CodeJam, you can see some of my JSON at my CodeMash PHP test bed on Cleveland Tech Events.

Where can I learn more about PHP?

The language FAQ is definitely a great place to start to learn about the language itself.

If you want to look at the various PHP frameworks available, check out this article that compares the PHP frameworks available.

You can also find links to articles and tutorials on PHP at DeveloperTutorials.com.

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Thursday, December 25, 2008

CG's CodeMash Countdown: Introduction

As is true with many of my friends, I'm excited about CodeMash. I had originally heard about it from my friend Russ, who had gone to past CodeMashes and came back excited about what he heard. Many months later, I met Jeff, who made sure to remind me that I missed the 2008 CodeMash and that I should be at 2009. He introduced me to a community, who has a whole have reminded me that I should be there as well. Thanks to everyone and their collective push, I will be at CodeMash this coming January.

So I'm eagerly looking forward to CodeMash 2009, not only as a participant but also as a speaker and precompiler event planner. After getting together for another meeting, I followed the guys to the Winking Lizard, and I managed to join the Code Jam team, bringing on my prior experience in MySQL and PHP. For the past few months, we've done weekly meetings, and I'm super excited about what we have to offer. I've been working with a talented group of guys, with a wide background of languages.

Speaking of languages, there will be plenty of languages to sample at CodeMash. I've always been fascinated with languages, and one of my favorite classes from college was my programming paradigms class. With my love of languages and as part of my countdown, over the rest of the days between now and then, I will give an intro to each language, which sessions may feature it, and links for more information. So look forward to hearing more about PHP, Python, Ruby, Scala, Groovy, Java, C#, VB.NET, IronRuby, SQL, Erlang, IronPython, and possibly other languages.

Towards the end of the series, I will focus on a few things that are going on or other things to note about the event.

Is it CodeMash yet? Hope to see you there!

Labels: , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Saturday, December 13, 2008

IronPython 2.0 Released and Other IPy Thoughts...

The big announcement came earlier this week - IronPython 2.0 is now released to the world. Check out the IronPython 2.0 Release Notes to see the changes.

In less than a month, I will be showing off IronPython in my "Pumping Iron into Python: Intro to FePy" talk at CodeMash. Coming from a mixed background, I'm hoping that I can show off the features of IronPython and what FePy can add to those who may not have a Windows background.

If you're interested in IronPython and are on Twitter, join the IronPython Twitter Group, and let's get a better way of seeing who all is using this language! I know that DevHawk is a prolific IronPython Twitterer, but there have got to be others. I'm sure there are other IronPython people out there wondering the same thing, so let's see who else is out there!

Labels: , , ,


Share this post:             kick this!  live it!

posted by Sarah at 12:00 PM 0 Comments Links to this post

Sunday, November 16, 2008

Pumping Iron into Python: Intro to FePy

One of the latest talks that I will be adding to my list is "Pumping Iron into Python: Intro to FePy". Originally, I had named the talk "Pumping Iron into Python : Intro to IronPython", but that title was too long for the CodeMash submission page. So then I shortened the name, but in changing the name, it changed the context of my talk as well. My abstract changed from an intro to IronPython similar to the one I did at Cleveland Day of .NET to this:


As python grows in popularity, IronPython has started making more waves. What is IronPython and why should regular python programmers be familiar with it? This session will introduce the open source .NET implementation of python known as IronPython without using Windows. Come see FePy (IronPython community edition) in action via Mono -- a cross-platform open source implementation of the .NET framework.


I'm extremely excited to announce that it has been accepted for CodeMash, so I will be giving this talk in January 2009 at the conference at Kalahari resort in Sandusky.

When I first put together the abstract for this talk, I was looking forward to showing just IronPython. But after seeing Catherine's comment here and having to shorten my title for the CodeMash submission, I changed my perspective and decided to take this another way.

I decided to act on Catherine's comment and submitted this talk for PyCon 2009. That talk is currently in the review process. Now I've spoken at user groups and Days of .NET, and those submission processes are fairly short and straightforward. Even the CodeMash submission process was fairly painless, other than maybe for the decision makers since they had quite a few sessions to review. But the PyCon submission process has been probably the most interactive, most detailed process that I've gone through so far - and I definitely like it.

I submitted the talk to PyCon on the same day I submitted it to CodeMash, before the November 3rd cutoff. Since then, I've had a few people look at my submission and comment on my submission. The comments came from my reviewers, who basically wanted to know more and had things to say about the topic with the description that I posted here. I was able to go in and hopefully answer their questions.

I liked that there was a way to interact with the reviewers. There are stricter guidelines and an agreement to be videotaped, amongst other things. This is what the PyCon submission timeline is for proposals. Now, I wait until December 15th or so, when I find out if my talk will be accepted.

However, I'm not really sitting and doing nothing while waiting. Remember... this talk has already been accepted for one conference, and I'm really looking forward to showing off IronPython in a different development environment besides Visual Studio. I'm looking forward to showing off Mono and developing with that. I will also be showing off some of the things that FePy has that makes it different from the standard IronPython implementation, as well as what IronPython has to offer for non-Windows users.

Look forward to hearing more about this talk as we get closer to CodeMash... teasers will definitely show up between now and then!

Labels: , , , , ,


Share this post:             kick this!  live it!

posted by Sarah at 0 Comments Links to this post

Tuesday, July 29, 2008

Desert Post 2: Codename "Kalahari"

CodeMash is looking for speakers for their 2009 conference.

What is CodeMash?

CodeMash is a conference for developers of all platforms to come together and exchange their knowledge, no matter what their choice of language may be. As they say on their site:
CodeMash is all about cross-domain, cross-discipline communication.

The 2009 conference is January 7-9, 2009 and will be held at Kalahari Resort in Sandusky, Ohio.

What do people speak on?

Past presentations included...

  • Introduction to Scala

  • DSLs in Static & Dynamic Languages

  • Putting the Fun into Functional with F#

  • Introducing Groovy

  • Ruby: Testing Mandatory

  • Sharepoint Services: My life with "Kate" MOSS 2007

  • RESTful Web Services

  • Crash, Smash, Kaboom Course in Python



These are just a few of last year's presentations. Check out the 2008 sessions to get an idea of what types of topics are presented at CodeMash.

The 2009 Tracks include...

  • Rich Clients

  • Web Frameworks

  • Dev Processes and Methodologies

  • Architecture and Design

  • Languages



If you want to present at CodeMash, keep in mind that their deadline for submissions is October 22nd. Whether you're new to presentations or a veteran, they're looking to put together a mix, so submit your presentation details today!

What's this we hear about you and CodeMash?

My buddy Russ has gone to it the past two years, and he's enjoyed it both years. I didn't know about it the first year (as I was still out of the realms of influence then), but I missed this year's CodeMash due to bad timing (and other lame reasons) of my own.

Some of my friends also have gone to CodeMash and constantly remind me that I missed this year's event. So I will be at next year's event, to see just what it is that I've missed.

Labels:


Share this post:             kick this!  live it!

posted by Sarah at 1 Comments Links to this post