DClare

Wednesday, May 14, 2008

Published!

I've been slacking on my blogging lately and I got started thinking about it. The point of this blog was to help share what knowledge I have of programming with others. I'm not disciplined enough to come up with something on a regular basis and that's what would be required to get people to read my blog. I wrote an article for SQL Server Central and I gave it to them instead of posting it here. I'll get alot more readers there than on this little blog and I don't have to be so regular about posting. I'm hoping to still write some blog entries from time to time about random stuff, but hopefully the good stuff will be articles. I need to find a good place to post some .NET articles and give one of them a try now.

PIVOT working incorrectly?
http://www.sqlservercentral.com/articles/pivot/62808/

Sunday, May 4, 2008

Cookies

One of the greatest things I've learnt is how to solve a problem. I had a problem....I couldn't make orange cream cookies. I wanted to solve the problem myself. Sure I could go look at a recipie from some website but that wouldn't be my cookie. That wouldn't be the cookie I wanted. I took a recipie my grandmother found for macadamia nut cookies and made it my orange cream cookies.

I started out trying orange oil for flavoring...but that didn't give it the proper flavor. I also added an egg and some salt and regular sugar while cutting back on powdered sugar. All of these were educated guesses based on other cookie recipies and research I had done giving me a good starting point. This made some pretty darn good cookies. The only problem was you couldn't taste the orange very much. When you could pick out the flavor it wasn't quite right. I thought about this for a while and decided i needed something like OJ in there. I couldn't use anything liquid though cause that would jack with the consistancy. Suddenly I figured it out. That orange drink mix stuff would work perfectly. So I grabbed some Tang and gave it a try. Only changing the one thing. Despite wanting to change other things about it I stopped myself. The key thing to problem solving is to figure out what changes have what effect. If you change more than one thing at a time you don't know what caused those changes. The Tang was too powerful though. Again without changing anything else I reduced the amount of Tang and made my super yummy cookies.

I guess this was just a really long post about problem solving. Only change one thing at a time. If it doesn't work...undo it and try something different. Eventually you may have to combine effects to see the desired results but at least you know what each thing is doing and you've learned from trial and error.


Orange Cream Cookies

Ingredients:
1 cup powdered sugar
1/2 cup sugar
1/4 cup tang
2 eggs
1 cup butter
1 tsp vanilla
1 tsp baking soda
1 tsp backing powder
1 tsp salt
2 1/2 cups flour
1 bag white chocolate chips
1 bag macadamia nuts

Soften the butter then add the eggs. Mix in the sugars and tang then add the vanilla. Mix the dry ingredients seperately then mix them in with the wet ingredients. Mix in the white chocolate chips and nuts. Refrigirate the dough for about 2 hrs. Roll out using a bit of four to make it easier. Cut with cookie cutters. Bake the cookies at 350 degrees for 13 minutes.

Sunday, November 11, 2007

Professional Development

One of the important things when you’re working with technology is staying up with the times. Things change so fast and it’s often difficult to keep up.

Recently I’ve gotten a subscription to MSDN Magazine. It was free with the MSDN subscription I have at work so I figured I might as well. Just keeping it in the backseat of my car let some co-workers get a little bit of time in reading it on the way to and from lunch. So I started thinking maybe I should just try to take a glance in there every now and again. Just when you’re sitting there with nothing else to do maybe glance into the magazine and see if there’s anything you might need to get an update on.

Yesterday I was watching a movie on TV (Payback) and the commercials were stacked towards the end of the movie. They’d get you hooked then make you spend half your time watching a movie. That would be a perfect time to grab a magazine and read.

My problem is reading isn’t exactly a rainbow. I have to take some time and go through the information slowly. This is discouraging and more often than not the only time I get around to reading articles is when there’s something specific that I need to know how to fix.

Another good source I’ve found for intermittent reading is SQL Server Central’s newsletter. These newsletters have a lot of good articles and I’ll wind up going and reading one or two a week. Recently there was one that I just happened to open that explained the new pivot command. That solved a problem I’ve been procrastinating on for quite a while now.

Aside from spending just a bit of your time here and there looking at articles sometimes you need a lot more to get you started with a new product. Luckily I work at a place where they’ll buy books or send us to training if we need it. The only problem is it can’t impact our already tight schedules. Training works wonders and at least makes you feel like you know what’s going on with a new product. Often times the classes only teach the bare minimum to get you rolling and then you’re out scrounging for articles to fix the problems you’re having.

I guess I'm looking for how to teach myself the latest things just as much as I'm looking for how to teach others the basics.

Thursday, November 1, 2007

How do you teach programming? Part II

Well, this week I've been thinking about how to teach programming some more. One of the major barriers for people to learning programming is wanting to learn. There are a lot of people that I’ve come across who just don’t care. Maybe that’s the problem that I saw when teaching math students. The ones that picked it up the quickest were the ones that wanted to learn it.

I’m reminded of a girl from my Intro to Structured Programming class. She was a Computer Graphics Design major but was forced to take the first programming class as a part of her degree. It’s a wise thing for the professors to do. A bit of knowledge about programming can go a long way especially when designing websites with flash. She just didn’t understand how that class would help her so she was grumpy. I’m sure her attitude didn’t help her one bit.

“I can tell you how to teach GAME programming...With a semester on the mathematics of shading and raster graphics, heh heh heh.”

Jbjohns


This quote is what reminded me of how determination and actually wanting to learn will change everything. In a game programming class with the only prerequisite as Intro to Structured Programming and College Algebra we were taught the theory behind Open GL. We learnt how the Open GL engine renders graphics Linear Algebra and all. Our first assignment was to do a simple assignment with recursion. The only problem was half the class didn’t have a clue what that was. There were three people who did well in that class. Myself, Jbjohns, and a girl all managed to work our way through it. Jbjohns and I were both math minors/majors with plenty of background in programming for the class. The last person fought her way through that class and I’m assuming spent countless hours not giving up on the assignments and lecture notes. It did not come easily for her but with her determination she did very well.

I’m sure the way I learnt in that class was different from the way she did. But to this day I admire her for her determination. If everyone had that kind of determination to learn programming I don’t know if I’d be asking the question of how to teach it.

Friday, October 26, 2007

How do you teach programming?

This has to be the greatest questions I ask myself. I was gifted with an interest in programming and it has come somewhat easy for me so far. That’s why I took the path of least resistance and became a software developer. There’s always a need for good developers so how do we teach people who it doesn’t come easily for?

How do you teach someone to do something that comes easily to yourself? This isn’t just a problem in software development but math as well. It seems like most teachers will use the methods that work the best for them and hope it works for their students. (This could just be a misinterpretation and they are using the method that worked best for a given class but typically teachers only use one method.) In college I was a math tutor so I got to deal with several different kinds of people. Depending on the person I could sit them down and explain the logic behind doing something, show them an example of each type of problem, or have them do the same kind of problems over and over again.

Those 3 approaches seemed to work for most everyone I encountered. So the questions are:

1. Can everyone fit into one of those 3 categories?
2. How do we teach programming to those 3 kinds of people?

Hopefully by narrowing the scope of the question I can come to a reasonable solution. Then again, maybe I just need to give up and look for more sheep instead of trying to train goats.

First Post!

This is the first blog post I've made. After reading Jeff Atwood's Coding Horror and his latest entry berating people to start blogging I've decided to get started.

Currently I am employed by SAIC working on a NASA contract with aircraft in the Flight Crew Operations Directorate. I am a software developer and that is probably what most of my posts will lean towards.

I graduated from the University of Mary Hardin-Baylor with a double major in Computer Science and Math in 2005 so my professional experience has been short to say the least. Though hopefully I'll help a few people learn some interesting things here in the near future.