May 16, 2012

One can spend a great deal of time fussing over tiny design details if one is not careful. Something really neat I did was to incorporate some jQuery into my Portfolio page. If you go there now you will see some very simple, but rather neat, jQuery at work. It's the little interactive elements that can really set a web site apart, and though it is easy to add a little flare here and there, few sites really do. As for the thing that I spent much time on for not, it was an effort to change the height of my banner depending on whether or not a page contained an extra title. That was dumb, so I just added a div with a height of 50px to the pages that don't have an extra title below the banner, above the navigation. JQuery is awesome, and though I cannot write it from memory, I have taught myself enough to utilize it from internet examples.

We also started learning a lot of AJAX today, which provides a lot of really neat tools. That inspired me to add the interactivity to my portfolio page, but I did not use AJAX. As I said above, I actually used pure jQuery. But there will certainly be some AJAX in this site and future projects.

EndOfLine;

May 7, 2012

After beating gridviews and sql datasources to death for a week, I'm ready to move on to something else. Something quite useful that I learned to day is the code we C# developers use to make it so that the page you are on is highlighted in the navigation menu up top. That is really simple in a static HTML page, and requires no fancy code, but if you are using .aspx with a masterpage and your navigation menu is just on 1 page, the masterpage, then you can't just change a property on it. More importantly, we are starting to learn how to do sql data connections with code and not the premade gridview/detailsview controls. I am excited about coding more this week, though technically the controls supplied by Visual Studio can be set up very quickly, there are a lot of details to go in and configure and the design mode for using them are full of bugs. On a side note, I am reading up on my jquery, but I'm not sure how much of that I will use after we impliment AJAX. Hopefully we'll find out soon.

EndOfLine;

April 30, 2012

We're now learning about the integration of database and web application. During this process we will create a few projects with our own custom built databases, but the primary purpose of our learning is in the code which connects database to application. Though I could very well design many databases for a small company to go with my code, and especially if I started my own company, in larger companies they pay a Database Administrator just to maintain the database, so coders like me can (or have to) focus on developing. This is a very powerful tool which all shopping sites and many more encorporate in order for to allow the user to search through products and sort by categories, etc. You never think about it, but there isn't a page for each and every product on a website, that would be ridiculous, but rather when you search a list is populated with items matching your search and the rest of the page, even though it reloads, is mostly the same. In fact, it is possible to navigate through a lot of information without even changing pages using code, but that would not really be efficient. Stay tuned for my work in incorporating SQL and databases in my projects.

EndOfLine;

April 28, 2012

Fwew! Just spend over 6 hours (I didn't know a lot of how I was going to do what I did until I tried) designing my Job Finder project, our final and biggest coding project. We are encouraged to use templates for our projects, because we aren't being trainged to design, we're being trained to DEVELOP and code. However, because I had a distinct vision, which I go into greater detail about on my Projects page, I wanted to go ahead and create something from scratch, because I can. If you can, you should, and dominate at it. That's my philosophy of web development. The more I know about design side as well as code side and also database/server side, the more valuable I am in my field.

Also, behind the scenes, I have continued to develop the final version of AdrienneKnits.com, and hope to have that completed along with my other projects by July. You won't see much change to it, other than content, until then. As I learn more in class, I am implimenting all of it that I can on that site in my spare time, when I'm not trying to figure out why my login table won't move to the right a little bit. Design is very very time consuming, especially as a beginner, and while some of the premade Login tools for ASP.NET are helpful code side, they are a pain in the rear if you aren't used to changing their preset appearance and orientation.

Also... I have finally converted my Résumé completely over to .aspx format. There were a lot of hangups in the CSS department, because I had gone and made a StyleSheet just for that page and it wasn't jiving well with how I arranged my masterpage, since the Résumé page doesn't follow the template of the rest of my site, and I am keeping it the same because I like it. Also have a Themes folder and Skin file, so that I can for instance make all the Textboxes on a site the same from ONE file instead of giving them all a class (special word which applies styles). Neat, and challenging, and I really need to stop coding for today.

EndOfLine;

April 26, 2012

The last couple days we've been hitting security and membership pretty hard. That just means login pages, secure folders, and USERS. This is where the ASP.NET Framework is so awesome and well beyond its competitors, such as Java. There are tools in .NET that allow you to create a secure website very quickly, though there is still a lot to code, and there are a variety of ways to go about making login pages and user management functions. AdrienneKnits.com will eventually include all of those things and more as eventually Adrienne would like to be able to edit her own blog (as apposed to me just typing it in HTML) and sell knitting patterns. All of that requires a great deal more than what you see on the surface of a web page, which is where web developers like me come in. This site is only scratching the surface of what we'll be able to do when we complete our training, so stay tuned.

EndOfLine;

April 24, 2012

The Contact page is now up and running, so you can contact me through that and it will magically send me an email. As we get further into actual interactive content on websites the magic of the internet is less and less, until Google turns it's homepage into a giant zipper today, that is still magic, black magic even. Also learned about ViewState, which is where the page you are on remembers your input, like into a text box or a button click, but loses it when you leave the page. You can see that below on the button counter. Each time you click the button the number will go up, till you leave the page and come back. That is actually quite a bit of code for something so simple. Notice that it still reloads the page each time, that's because the button is asking the server (millions of miles away) for the equation to make that happen.

Engage Counter

We also talked about State Management, which is how the website stores data, like if it remembers your name after you type it in and clicking buttons. There are several ways to do that, all with different roles. View State is the most temporary, it only stores data on a single page for a single user. When you leave that page it will forget. Session is similar, but extends to the entire website, so that it doesn't forget new information until you leave the site completely. This is often used for shopping carts on websites, uses a "cookie," and is set to "timeout." Application is technically not used as much, but it remembers what ALL users are doing and permanently. Databases really make this unnecessary and even undesireable, and typically only site administrators doing two things at once will run into this, but you can lock the code when one person starts and unlock it when they finish so that only one person at a time can change the application. Cookies are of course a favorite of many sites and very common. They actually store text files somewhere on your computer so that when you return to a specific site it sees those documents and remembers you. This used to creep people out, but it is almost essential for many common websites, particularly shopping sites and banking sites. The former uses cookies to put up ads which match your remembered searches and suggest products to you. Online banking sites use this feature for security, to make sure a computer YOU chose is the one that is trying to login. They can be set by the programmer to expire at any time, sometimes in a few days, other times in 2036, and you can delete them with your internet history at any time if you surf sites a lot and it is creating some lag.

EndOfLine;

April 21, 2012

Welcome to the official relaunch of my website, after a mere 3 weeks! I know, it looks the same, and it should if I did it right. What I did was to take all my static html pages and copy them onto .aspx pages (which this page always was) which all derive from a common master page. That just means that the stuff that looks the same on every page of my site is all in one file so that these pages don't have to have all that info, like navigation bar, repeated on each page. Kinda neat, though in some ways restrictive, which is why I am maintaining a static html Résumé page. That's fine though, maybe I will change that later.

Being ignorant as I am, I did not realize that there was NO javascript powering my dropdown menu... nevertheless I am teaching myself javascript. Javascript is super easy once you know a language like C#, and many of the processes it performs are the same. There is javascript which I wrote on my Home page which will change the greeting from "Good Morning" to whatever other time of day it is. Like my CSS Style pages and my CS (CSharp) code behind pages, I am trying my best to keep the different languages separate so there will be a .js page for javascript as well. The external buttons like Google+1 and Facebook have ugly cumbersome javascript, and I am a neat code person, so I will be trying to figure out how to get those out into that .js file as I learn more. Javascript is really unnecessary for a pure web developer to know, as that falls into the web design category, but I really want to master it all and develop myself into more than a developer.

By the way, I started a knitting blog for my wife called AdrienneKnits.com, which will be a really nice(eventually) alternate from scratch website of mine. Also, I completed much of today's work in a the Roasterie, best coffee on earth, which makes me an official coffee shop coder.

EndOfLine;

April 18, 2012

Today we had a simple lab to start before we went home. I finished it in under fifteen minutes. We've been learning about different ways to select things and cause postback (reload page and do what you told it to do) with drop down lists, etc. This little lab required us to give the user a set of options to help them choose a pet, then give them a response based on the answers to those questions. Sometimes you just have those "ah ha!" moments, where you can picture exactly what you're going to do in your head so you just type that and it works. Actually, I almost did that except that I had to replace all my || (or's) with && (and's). So if you don't have allergies && you have quite a bit of time to spend && you want a lot of interaction with your pet, the app will tell you to get a dog... or will it? Adding the pictures was extra, and actually kept me busy for quite a bit longer to figure out.

Pet Matcherupper 1.2

Are you allergic to pet dander?

How much time do you have to spend with a pet?

Do you want a lot of interaction with a pet?

Submit Responses

EndOfLine;

April 17, 2012

I have updated the page to solve that "back to the top" issue I was having when my calculator app was engaged. The way to solve that is to use the longest single command I have ever seen, MaintainScrollPositionOnPostback="true", at the top of the page. It's self explanatory, as actually many code commands are, they just don't form normal sentence structures and omit spaces...

Today we are worked on another 'simple' app that the text book called Future Value, but I really prefer and have seen elsewhere it called Interest Calculator. Essentially, it compounds your interest monthly based on how much you contribute each month, a common tool. The math itself is not the complicated part, it's the way you write the code to incorporate what YOU the user type in.

Compount Interest Calculator 2.0

How much do you want to save montly:
What is your yearly interest rate:
How many months do you wand to save this:

Engage Calc! Reset

Future Value with Interest:
Future Total without Interest:

Disclamer: I have gotten slightly different results from various other online compounding interest calculators, but only ever two results: same as mine, and a result less than mine. Using a calculator, I came up with mine.

By the way, whenever I put these in my blog I am actively "recreating" them so to help familiarize myself with the code and the process. Like I said yesterday, this is like video games to me, I love it. (I actually started this on my lunch break...) A lot of the time is consumed in style properties. Once you figure out the solution to your coding problem you can easily do it again but the appearance...

Also, a take home lab below:

Vader vs T-rex

Lab 1 Mad Libz

Enter First Name:

Enter a Noun:

Enter another Noun:

Enter an Adjective:

Enter a plain Verb:

Clear Boxes

April 16, 2012

After a week of what I suppose was my Spring Break, I am glad to be back in class. In fact, I had a hard time sleepling last night in my excitement to get started again. To me, this is as much fun or more at times as playing video games. I love working with code (most of the time) and find it very fulfilling.

This is the first week of Data Driven Web Applications, and we finally get to start encorporating all the C#, SQL, and HTML into web sites with dynamic interaction, such as buttons. In honor of this, my Blog page is my first .aspx page on my website. Up to this point it has all be static HTML (which just means nothing but text and colors).

Below you will find my first displayable interaction between C# and HTML in the form of a simple calculator. If you don't follow the instructions, you will break it, but you can just click the "back" button in your browser in that case and try again.

To use it, just type numbers in the 2 larger boxes and type either a +, -, /, or * into the center box. Then click 'Engage Calc!', and if you did it right then it won't error (making it perfect is not my goal right now). The 'Clear' button is self explanatory.

=
Engage Calc! Clear Boxes

Be prepared, it will take you to the top of the screen(fixed that) (reloading the screen) each time you click the buttons. Do not be alarmed by this, I will figure out why it does that in due time.