Monday, December 5, 2011

Where I'd like to start heading

A lot of what Bob is doing here is for programs that pretty much just work in the DOS command window. That's nice and all, but I doubt many people plan to create programs that work just in DOS.

I know I'm personally headed (eventually) to Windows Phone development and then hopefully Metro-style apps for Windows 8. I've got an idea for a project that's a bit esoteric, but will be very helpful for the people who could use it. But I've got a lot to learn until I can create that app.

I've already started down the road of learning to develop for Windows Phone, but I've yet to find anything as helpful as Bob's videos. I'm hoping that the folks at Channel 9 will consider putting together a video series that branches off from this and moves in that direction. With Windows 8 coming out and what appears to be a lot of similarity between Win8 and Windows Phone as far as development is concerned, it might be a good idea for Microsoft to do that.

Here's the site I've started learning Windows Phone development from. I see potential, but not being extremely familiar with the Visual Studio IDE, I feel like having videos would be very helpful. It'd also be nice to have someone like Bob "bring the cookies to a lower shelf" as I like to put it.

Lesson #9: Creating Arrays of Values

Video #9

This video gets us introduced to strings. There's one thing Bob does in this video that gets me a bit confused and he doesn't seem to really explain it. At one point he writes:


I did it without the ToString() and it worked just fine for me.

If you find arrays to be a bit confusing, I think of them as a group of variables in a single bucket. They all have to be the same variable type, though. It's almost like a single column matrix. I don't know if arrays can be expanded to be "multi-column" (if that's even the right term), so for now, I stick to working with them as single column matrix.

It's also good to fiddle around with arrays to help you understand them. I was a tad confused until I played with them a bit more and I started understanding them better.

Sunday, December 4, 2011

Update on the site and my progress

The eagle eyed viewers will have noticed that I've removed the embedded videos from the site. I was running into a problem where every time I opened up the site, I had it asking me a dozen of times for permissions and whatnot. Given how I've never had that on any other blog I've done and the fact that the messages are very similar to what I get when I log into a site using my Microsoft Live ID, I figured that the most likely cause was the Microsoft videos I had embedded. So to try to solve the problem, I've removed the embedded videos and just having a link to the page that has the videos.

As far as learning C# is going, I've been making quite the progress. I'm actually a bit further than what I've got on the site. I find myself taking what I've learned and experimenting with it. I recently completed my first app which converts temperatures from Celsius to Fahrenheit and vice versa. I had to look up and figure out a few things on my own, but it works. I've employed techniques that are used later on in this video series so I'll share the code as we get to those points.

I'm hoping to start work on my first legitimate application in a week or so. And by legitimate, I mean an app that I could put out to the public and there would be interest. I'll give more details on what I plan to do as time goes on. I can say that it will be for Windows Phone.

And the fact that the app is for Windows Phone has gotten me thinking about eventually porting it to Windows 8. From what I've been hearing and reading, it shouldn't be too hard to port it over. I just wish I had a tablet right now that had Windows 8 loaded up already. I've got a copy of Windows 8, but I don't have a spare computer to install it on and I don't have a touch screen to test out that functionality.

Friday, December 2, 2011

Lesson #8: For Iterations

For iterations, or for loops as I call them, are essentially a way of getting a program to do something repeatedly for a certain amount of time (or forever if your heart desires or your code has a flaw).

Lesson #8

This will probably be a very easy concept for people to grasp, it's just important to remember the syntax. Thankfully, it seems that Visual Studio has us covered as Bob demonstrates the whole Tab Tab deal. This is really nice.

I'm getting to the point that I'm thinking that C# is a lot easier than C++. I don't know how much of it is the language and how much of it is the IDE.

Lesson #7: Operators, Expressions, and Statements Durations

This lesson is pretty simple. It does take a level of memorization, but for now, you can create a cheat sheet or just bookmark this post for reference when needed. I felt that a lot of these were what I would have guessed they would be or they're something that just makes sense. >= makes sense for being greater than or equal to. && makes sense for the conjunction "and" because we use that symbol to mean "and" all the time and since we have the double equal sign for the check for equality, it follows form to do the double &.

Lesson #7

This is an important video because there are a lot of cases where we'll need to do these sort of checks. It's the most common thing I imagine programmers do to get a program to interact with the user.

If you have any thoughts or questions, let me know.

Tuesday, November 29, 2011

Lesson #6: Branching with the if Decision Statement and the Conditional Operator

This lesson provides two things that we'll need to learn: 1. How to assign string values a user entered value. 2. How to do if/then statements. After this, I'll have some things for you to try on your own.

Lesson #6

I'm going to present a simple challenge for what we've learned so we can make sure we can do what we've supposedly learned. Create a program that asks for a person's first name and their last name and then says "Hello" and addresses the user. So if it was John Doe, the program would output "Hello John Doe" If you want to get more practice on some techniques, try having the program add a "!" at the end of it. I'll present what I write here, but stop reading now, try it yourself, and come back...

OK, you're back. Here's how I went about it:

            string firstName = "";
            string lastName="";
            Console.WriteLine("First name:");
            firstName = Console.ReadLine();
            Console.WriteLine("Last name:");
            lastName = Console.ReadLine();
            Console.WriteLine("Hello " + firstName + " " + lastName);

If I wanted to add the "!" to the end, I would have changed the second to last line to:

Console.WriteLine("Hello " + firstName + " " + lastname + "!");

I also experimented and learned that if you change the "WriteLine" to "Write" it doesn't have the return after it writes what it's told to write. So instead of having the user enter their answer on the next line, they enter it right next to the ":" If I put a space after the ":" within the quote marks it provides a space between the ":" and the users answer. That's all just to make it look a little better.

Monday, November 28, 2011

Lesson #5: Declaring Variables and Assigning Values Duration

We're starting to get to the point where we can actually produce stuff that has value. As important as the "Hello World" program was for our progress, there's not much demand for those kinds of programs. But one important thing we need before we get to where we want to be is the ability to declare variables.

Lesson #5

The two most important things I take from this video are: 1. The type of variable declared is important. Using an int variable for a name just doesn't work. 2. It's important to keep track of the variable name and type it exactly as it is in the variable declaration. Otherwise, it's just not going to work.

And if you aren't already, be sure to follow along with Bob. It's going to be helpful in getting a lot of this stuff in your head so you don't have to go back and look it up later.