What’s the most fun you’ve ever had … programming?

While blog-surfing tonight, I came across this entry on Inside the Machine. This has me thinking…

What’s the most fun you’ve ever had… programming?

I think for me, one of my more fun projects was taking part in CodeFest ’99 at OOPSLA, during my sophomore year of college. I was part of a team that had to implement a coffee machine design from the DesignFest team.

So… what made this project fun?

  • Working on a team: I had two other people who I had to work with that I had never coded with before. We hadn’t really prepared for our trip, but we knew that personality-wise we’d be fine together. But do personalities always line-up to coding styles? Surprisingly, in this case, they did. We were able to work together quite well. We figured each other’s strengths and weaknesses and were able to cover pretty much everything amongst the 3 of us.
  • Learning a new language: In the few days that we had to implement the design, I picked up enough Java and Java Swing to be able to run with it. If I get to learn a new language while doing something interesting, that definitely makes programming more fun for me. And yes, we did choose the language because of the coffee-Java relationship.
  • Taking on other challenges: Besides learning Java, we also had to work on changing our code towards the end, when they decided to implement more features in the coffee machine. Other curveballs were thrown throughout the conference, but I think our team handled them well.

That event made quite an impact on me, in ways that I can’t fully explain here, but it meant so much to me, that I figured when I returned to developer life, I would return to OOPSLA. This year, I will be doing just that, heading to Nashville at the end of October to participate in DesignFest at OOPSLA. This time, I look forward to being on the other side and putting my design skills to the test and seeing other people’s design styles. I haven’t seen much in the way of CodeFest mentioned, but I hope that it happens, as it was a great learning experience that I will always remember.

Ann Arbor Give Camp – July 11-13th

While reading Mike Eaton‘s blog, I had read about Ann Arbor Give Camp. He had mentioned it in the past, so it’s nice to finally get more information.

What is a Give Camp?

A Give Camp is a weekend-long event where software developers, designers, and database administrators donate their time to create custom software for non-profit organizations. This custom software could be a new website for the nonprofit organization, a small data-collection application to keep track of members, or a application for the Red Cross that automatically emails a blood donor three months after they’ve donated blood to remind them that they are now eligible to donate again. The only limitation is that the project should be scoped to be able to be completed in a weekend.

Source: http://www.annarborgivecamp.org/WhatIsAGiveCamp.aspx

So…

What: Ann Arbor Give Camp – a chance for architects, DBAs, devs, and designers to get together and donate their time and talent towards projects for non-profits. The projects should be completed within the weekend.

When: July 11-13, 2008

Where: Washtenaw Community College, Ann Arbor MI

Hope to see you there!

Cleveland Day of .NET “Thank You”s

After seeing how yesterday went, I’m looking forward to seeing how Cleveland Day of .NET will take off next year. We will have to do this again next year, and I look forward to help planning it yet again!

Thanks to our attendees for coming out and seeing what we had to offer.

Thanks to our many friends who’ve helped us along the way – including Mike Eaton, Brian Prince, Jeff Blankenburg, Jim Holmes, and many others.

Thanks also to our volunteers throughout the day – including Jeff McWherter, Kevin Dutkiewicz, Colin Richmond, Gary Mandela, and Brandon Joyce.

Thanks to our speakers for providing a variety of topics for our attendees and for keeping things quite interesting! Our speakers included Rich Broida, Joe O’Brien, Dan Hibbitts, Dan Hounshell, Alan Stevens, Josh Clark, Brian Shura, Nate Kohari, Carey Payette, Jason Follas, Chris Woodruff, James Bender, Mike Eaton, Amanda Laucher, Joe Brinkman, Dave Redding, Len Smith, Brian Prince, Leon Gersing, and Joe Wirtley.

Thanks to our sponsors for giving us the financial support to put on the event. Obviously, without them, we couldn’t have pulled this off. From swag to supporting the community, thanks goes out to Microsoft, Bennett Adelson, 4TechWork, Hyland Software, Lazorpoint, Exential, Beacon Hill Staffing Group, TEKSystems, Sogeti, Robert Half Technology, PreEmptive Solutions, RedGate, JetBrains, Wrox/Wiley, and InformIT.com/Pearson Education.

Thanks to my fellow planning committee members. From 3 of us saying “We need an event in Cleveland” to growing to 7 and pulling off our ideas, it was a great experience. I was incredibly honored to be working with such a talented group, with a wide variety of experience. I hope to work with you guys next year and put on an even better Cleveland Day of .NET! You guys – John Stockton, Mike Letterle, Mike Slade, Sam Nasr, Joe Fiorini, and Corey Haines – rock!

Finally, thanks to our spouses – for being supportive of us as we spent many nights planning and recapping what needs to be done. When we had to get things done, they were there for us. Our spousal acceptance factors probably went through a roller coaster ride, but in the end, I think the others would agree that it was well worth it.

Overall, yesterday was a great success, and I look forward to doing it again next year!

Cleveland Day of .NET Outings – Friday Night and Saturday Night

Corey Haines is organizing the get-togethers for this weekend. There’s talks of meeting up at Bahama Breeze for the pocketmod folding party around 6pm/6:30pm Friday (tomorrow). There will be lots of socializing, and I will make a presence for at least part of it. (Something about them wanting me to bring T-shirts, like I’m the swag queen or something… *shrug*)

Saturday night, after the event and after the speaker dinner, Corey is planning on meeting up with everyone at Capers, the bar at the Hilton.

Corey is mentioning the plans for the event over at the Cleveland Day of .NET CrowdVine site. So definitely check it out.

Looking forward to seeing many of you this weekend!

Web Sites, Web Applications, and Web Services… Oh My!

In my day job, I am a web developer. My title is simply Developer, but most of my projects focus specifically on the web side of things.

Background

Before working here, I did minimal web development professionally. What little web development I did focused on portal systems, but because they were geared for a small-scaled audience, I programmed things with a very primitive approach. I did the things that now make me cringe – hardcoding login information and other things that are probably considered extremely bad practices. But I didn’t have a solid enough foundation to steer me the right way, as all their previous apps were just as bad, if not worse. When I did work with another dev, it was a dev with similar background to mine, so that really didn’t help. To add to the mess, development was only a small part of my previous position, so I was usually too busy to focus on improving my code, even though I knew deep down that it would be messy to maintain.

Web Sites and Web Applications

For my sole .NET application, I used ASP.NET Web Matrix to develop my app. I was working with ASP.NET 1.1, and since I’m well-rooted in VB, I chose to run with VB.NET. Whatever type of project it generated worked for what it had to do.

When I started my current job, I made the leap to Visual Studio 2005. I also switched to C#, as that’s what they wanted to work with. I noticed I had the options of Web Sites and Web Applications. After finding many sites that talked about the differences, I learned that my project choice would come down to personal preference. Knowing how things work here, I’ve decided on web sites, which hasn’t caused any problems yet.

But… my development background in general has always been application development, typically data entry of some sort, with a simple client-server relationship. It was only a matter of time before something new (to me) would come along. Recently, I’ve been asked to develop web services.

Web Services… Oh My!

From attending SIG meetings, I understood the basic concept of a web service. However, I had never programmed one, so I had no idea what I was in for. Thankfully, my buddy Russ has worked with them, so I spent some time going back and forth with him on how they work.

When I first created the ASP.NET Web Service project, I saw declarations and code that I had recognized from the SIG, code that intimidated me, mostly since I was unfamiliar with it. I closed Visual Studio and walked over to talk with Russ. After discussing what my services had to do and talking about ASMX versus WCF, we came to the conclusion that ASMX would be the easier way for me to start, especially since I needed a simple service.

With that, I re-opened the intimidating code and slowly worked my way through figuring it out. I managed to write what I needed, and I had Russ look at my code. Apparently the ASMX syntax I am working with is more similar to WCF than to the ASMX that Russ remembers, but after having him look at my code, I felt much better knowing that I was on the right track.

After working on it for the past couple days, I now have a web service that gives me what I want, in properly-formatted XML output. I’ve also figured out how to work with web references and proxies to have a page turn the properly-formatted stuff into the format I need it in.

I’m looking forward to Cleveland Day of .NET coming and going, so that I can eventually get back into playing with new things (like Silverlight and SQL 2008) and learning about stuff that I probably should know but I haven’t experienced yet (like web services). And maybe one of these days I’ll put the coding back into my site name.

Cleveland Day of .NET this Saturday!

Cleveland Day of .NET is this Saturday at the Hilton in Beachwood. We have speakers coming in from MI, TN, other parts of OH, and even some local Cleveland-area speaker. Our topics are as spread as our locations – covering Silverlight, WCF, IronRuby, IronPython, F#, Agile development, ASP.NET, Sharepoint, SQL Server, SEO, TDD, WPF, and something a little non-technical but very useful – Soft Skillz.

If you don’t know what “soft skills” are, I’d recommend you check out Brian Prince‘s talk. He encourages audience participation, and it helps to hear about the non-technical skills that we really do need to focus on and use as developers and architects.

If you will be in town on Friday and want to get together with other people, check out our social networking site – Cleveland Day of .NET on CrowdVine. Corey is organizing the gatherings, and he is planning on mentioning the events there. As I hear of them, I will post them here as well.

If you haven’t registered yet, please get to the Cleveland Day of .NET site and register today!

Hope to see you on Saturday!

Crossing the line, the district line…

I was reading Dan Rigsby’s post on West Michigan Day of .NET, and one of his comments really struck me.

It seems if you are in a different Microsoft district, you either don’t know much about what is going in other districts, or are afraid the break the barrier.

He’s got a good point. I live in the Heartland District, which encompasses Tennessee, Kentucky, Ohio, and Michigan (south to north). Whenever there are events within our district, we have our evangelists who let us know what’s going on. But what about Days of .NET in places that are just across the state line, in one of the other districts? We don’t typically hear about those, and I don’t know why that is either.

While planning the Cleveland Day of .NET, I realized that our location is well within a few hours from the PA state line. Having made many day trips to Erie and Pittsburgh, I know just how long those drives are, and I know that I drove further just for Central Ohio Day of .NET. So, rather than letting this realization lead to nothing, I contacted every evangelist listed for PA, asking them to pass the word on to their followers. I did receive some support from them, and we were supposedly mentioned in the Pittsburgh .NET Users Group’s newsletter. So I’m hoping to see some PA .NET people at our event!

If you’re a .NET/CodeCamp/etc. event organizer, if you want to reach the districts outside of your own, check out the Meet Your Local Microsoft Evangelists page and reach out to them. Maybe we don’t get people crossing district lines because the word just doesn’t get out to them. Maybe people are afraid to spread the word. But if we want people to cross the district lines, we need to get the word out to them so that they know that our events exist!

A Little Humor to Lighten the Stress…

With the last 2 weeks of Cleveland Day of .NET planning here, I’m quite busy in getting the last minute stuff together. This FedEx box from DHL, with no damage on the outside so no UPS visit, has a lot of swag. Thanks to… oh wait… you’ll just have to come to the event to see what we have! Not registered yet? Get to it! Register at the Cleveland Day of .NET website!

My buddy Nivex though is good for keeping me in the loop on various web comics, and I had to laugh at this. So… a little math geek humor for you to enjoy.

And if you don’t get it, you just aren’t a math geek. Not all geeks are math geeks, oddly enough.

PyOhio Call for Proposals

While working on my IronPython presentation, I came across the announcement for PyOhio. They are now calling for proposals and accepting submissions until June 1. It’s good to see a familiar name to contact with proposal questions. Mat Kovach is a Cleveland-based developer who is involved with Northeast Ohio Open Source Society. He runs with my friend Martin, and he was also a presenter at Ohio LinuxFest 2007. He’s definitely someone to be familiar with, especially if you’re in the developer crowd in Cleveland.

If you’re interested in Python, definitely check out the PyOhio website. It’s taking place on July 26th in Columbus. As I hear more information about the PyOhio event, I will blog about it here!