// caseydunham.net

Friday, April 23, 2010

LD17 is a go

The theme is…ISLANDS!

I already have a pretty good idea of what I am going to be doing. I believe that the scope is perfect, the graphics will be manageable and I will be able to see it through to the end. I am going to spend a bit of time prototyping it tomorrow morning and stripping out some of my code base that I wrote for the last LD entry.

I suggest that if you are interested in learning what Ludum Dare is all about, check out the keynote from Phil Hassey, it even has a goat! PoV has also written a handy guide to getting started that’s worth reading if you have never participated in Ludum Dare.

Ludum Dare is also about the community and all participants are encouraged to post entries to the Ludum Dare blog site. I will be posting some stuff at my blog over there as well.

Now to flesh out the design a bit.

posted by Casey at 11:13 pm  

Wednesday, October 21, 2009

Microsoft Code Camp 12 Review

I know this is a bit late, but I was very busy after Microsoft’s Code Camp 12 last Saturday in Waltham, MA and this is the first chance that I have had to sit down and do a write up on it.

This was the first Code Camp I have attended and didn’t know what to expect. The format of the Code Camps are basically like a mini conference. They consist of a number of presentations packed into about an eight hour day. All the presentations are developer focused so they usually contain a decent amount of code which I wasn’t expecting but was very happy with. Registration is free and for the most part, a community effort for developers, by developers.

Code Camp 12 had about 45 presentations tracked to seven different conference rooms! That’s a lot of information to take in a short amount of time. I am not actively involved in a lot of the technologies that the talks were about, most on the topic of Silverlight, C# and Azure, but it was very interesting to see what everyone else is up too. Now onto some notes about the presentations that I have attended.

Presentation 1: So, You Want to Give a Code Camp Talk?
Presenter: Bill Wilder

Even though this particular presentation wasn’t about programming, I jump at any opportunity to better myself at public speaking. I meet a lot of students in the Computer Science department at my school, both new and old, who don’t quite grasp how important communication really is. Bill Wilder also talked specifically about giving presentations that are code or technology heavy, which was great, because not many books or sites that you read give much thought to it. It definitely changes your presentation style. The attendance was small at this one, which was great because we were able to get into a few discussions that greatly benefited myself and I think the others in the room as well.

Presentation 2: Dysfunctional programming with F#
Presenter: Talbott Crowell

I only had a vague notion of what F# was before this presentation. For those who haven’t heard of it, F# is a functional language for the .NET environment that is inspired in part by OCaml. Talbott Crowell, a beginner in the language himself, talked about some of the differences in F# compared to other languages and most importantly, why use F# at all? One big difference in functional languages is that the functions have no side effects, everything is immutable. In F#, if you want to be able to change a variable after it is created it has to be declared with the mutable keyword. This sounds like a big drawback, but I didn’t realize how much of a benefit this actually was until this presentation. The big gains that F# provides over other .NET languages, is when faced with heavy multi-thread use and multi core, multi processor programming. Anyone who has done a decent amount of multi threaded programming knows how aggravating it can be when you run into deadlock or concurrent variable modifications that weren’t supposed to happen. Even with the new frameworks for C++ and C# designed to make this an easier problem to deal with, it is still very hard to take advantage of.. This is going to get worse as more computers are shipping with quad core CPUS and with operating systems having the ability to offload tasks to the GPU, this problem is going to be a major hurdle to some of these other languages.

Talbot also demonstrated how easy it is to prototype and develop GUI’s in the language. Since the language is interpreted it can be executed on the fly through an interactive prompt just like Python, Ruby and other interpreted languages. This allows you the ability to build a GUI or run other programs dynamically and watch them execute as you code. Visual Studio 2010 is also going to provide even more built in support for F# upon its release, so I wouldn’t be surprised to see this becoming more popular over the upcoming year.

This was a very good presentation and would encourage everyone to check out F# a bit more.

Presentation 3: 7 on 7
Presenter: Jim O’Neil

This was mostly a recap of the entire New Efficiency event that I attended a couple of weeks ago, but I went to anyways to see if anything was explored in more depth. There were a few interesting points about the Federated Search functionality in Windows 7 that got glossed over at the New Efficiency, but for the most part I could have sat this one out.

(Lunch)

Presentation 4: Behavior Driven Development
Presenter: Tom Cooley

This one was a bit over my head as I am still working on developing my Test Driven Development mindset, but Behavior Driven Development is a natural next step for those who have attained a level of proficiency with TDD. While TDD is about ensuring that the code you are writing is correct, BDD aims to make the language that tests are written in as close to the domain as possible, making the transition from Use Cases, or User Stories, to actual code much easier than it can be in real life. The presentation itself was in a small room that was very well attended so I wasn’t able to take part in the discussions too much, but there were a lot of very knowledgeable people in this one. I had a chance to talk to Tom Cooley after his presentation and managed to get good answers to some of my TDD issues.
Presentation 5 and 6:

I skipped the presentations slated for these two slots as I was hanging out talking to some of the other Code Campers and presenters. My one big suggestion for this whole event would be to allow a bit more time for networking and conversation. There was only about 10 minutes or so between presentations and lunch was only about 30 minutes so it didn’t leave a whole lot of time to meet and network.

Presentation 7: Getting your game published on XBox Live Indie Games
Presenter: Michael Cummings

This was probably my favorite presentation of the day. It was very informative and has made me very interested in Indy Game development for the XBox. Michael Cummings talked about the XNA Creator’s Club in general, the review process games undergo and why they might fail or be rejected. He also presented solutions to many of the gotcha type of problems that people don’t think about, but aren’t too complicated to deal with (controller issues, differences between the PC monitors and television screens for starters).

He also presented a statistical summary of about fifty games from various income categories, some barely making any money and others that grossed a significant amount all over the last year or so. I really can’t wait to start working on a few XBox games so I think I might be seeing an XBox 360 in my near future.

Overall I had a good time especially for a free event. The drive down only took about two hours and while I was unable to stay long after the event to go the after party, I hope to make it to the next Code Camp, which I believe is going to be sometime near April since they attempt to do these every six months or so.

If you are a Windows developer or at all interested, I would definitely recommend checking this out.

posted by Casey at 11:14 pm  

Powered by WordPress