Welcome, Guest | Sign In

Submit - Cancel

Intro to SQL Part C

While the last two posts focused heavily on theory and fundamentals of SQL it's time to start on the actual usage. There's a ton of good tutorials out there that skip right to the code, but as a young developer, I wasn't convinced that SQL was a worthwhile tool until I was forced to use it. I wanted to spend a good amount of time discussing the basics before jumping into some examples. If you're looking for more advanced and specific uses, I'd highly recommend checking out w3schools SQL tutorials.

As I introduced in my last post, an SQL table is a collection of unique rows. There are two primary things that you do with the data in a table - read and write. With the proper syntax, a hacker can write to your database, injecting into or deleting your data, so it's important to restrict the front end privileges and validate. That's a subject for a later post, though. Let's look at how you can read a table.

Reading from a table is also known as a 'select' statement, since you're selecting entire rows of information. You can restrict how many rows you select, pulling single rows or entire tables, and you can also restrict what fields you select out of the rows. A select statement has several important...

read more »

Intro to SQL Part B

In my last post, I introduced some of the basic ideas of data storage and how I came to realize that SQL would be a great solution to my content handling problems. Now I'd like to walk through some of the more advanced concepts and start going through some basic uses. There's plenty of great tutorials out there if you'd like to take SQL to the next level (I'd recommend checking out w3schools), but I hope these posts make a great foundation for a starting developer.

An Excel workbook is a good way to picture a SQL database. A database is a collection of tables (one table per tab), with each table showing a different portion of the total content. Each table should be unique in most cases to avoid duplicating your data. The individual tables in the database have some constraints. Rows must have the same number of columns and identical column types. It's also a good idea to keep the columns simple. If you're saving numbers, then the column should be set to save numbers.

The last paragraph may be hard to understand at first, so here's another example. This blog is being saved in a SQL database. One table is saving all of the posts, with each row in the table relating...

read more »

Intro to SQL Part A

I like to think of myself as a practical web developer. With no true formal training, most of what I use to make my web sites is self-taught. Instead of trying to apply what I learned in a classroom into an online project, I went out and learned what I needed to get a project done. This allowed me to enter the world of web programming slowly, gradually picking up additional techniques and languages as my web sites became more advanced. There has been more than once that this approach has made my life difficult, though, and SQL is one of the more blatant examples.

After I learned xHTML and CSS, I thought that I was set with web development. I could design and launch fully compliant sites, updating them as necessary with new content. Once a few months passed, though, I started to realize that there was a big difference between markup and content, and that the content (data) of a web site should be handled separately from the markup (html tags). By keeping my changing content hard-coded on the page, I was losing my old data and funneling all of the updates through a single person, myself, who knew how to write markup.

I started looking at alternate methods of saving my dynamic content over the next year, using both xml and text files to save the data. With a static...

read more »

Modular Website Setup

After making several iterations of my personal site, I've finally found a php backend solution that has made me happy. While I have no doubt that I'll find a new system or methodology within the year that will warrent a complete redesign, my current setup is surprisingly simple and fun to play with.

As php is my primary coding language, I make it a personal goal to never use third party plug-ins. I often utilize jQuery or posted Javascript plug-ins in my work, mostly because working with Javascript and forcing it to work in every available browser can be excrutiating. I have never used Ignitor or Wordpress for a project and do not see the need for it in my near future. So, when I create new sites and applications, I might find myself copying some of my old code for a particular function, but often try to make it cleaner or more efficient during the development process.

When I tackled my personal site this time around, I tried to sketch out the data flow before coding. Not only did I want a central file to handle all web page requests (mod rewrite style) and create the wire frame of my div layout, but I also took all of the unique content, including meta data and navbar, and put it in a separate file outside of my public_html folder. All of this is generated and...

read more »

Why I Write Complaint Code

A few weeks back a colleague presented me with an interesting question. He works with an Oracle database and PL/SQL (a programming language deeply tied to Oracle) to create website applications. As he wasn't too familiar with HTML and other modern web content trends, he often ran into issues with different browsers. He used the w3c compliance test as part of his troubleshooting process but never understood what compliance was useful for, especially as his HTML, which would display and work properly, rarely passed the test.

To begin, the term 'compliant code' is thrown around quite a bit. I'm using it in this post to describe xHTML/HTML with no open tags, correct tag names, and no outdated coding techniques or methods. Also, I tend to keep CSS and Javascript in external scripts to make my code easier to read and update, but this is not necessary to pass the w3c compliance test.

I have always made my code compliant and leaned towards xHTML transitional or strict with my website projects without really thinking of a reason behind it. My original experience with website programming was under a strict teacher who was very adamant on clean, compliant code with external stylesheets and scripting. When my colleague...

read more »

Waterfalls of the Keweenaw

After graduating from Michigan Tech, I started to realize just how much free time I was going to have after a normal work day. The month of May was a bit hectic; moving into a new house, starting a new job, and adopting an 8 week old puppy was enough to keep both Katie and I occupied, but when my birthday rolled around in early June, we were looking for something new and exciting to do. Remembering a fun adventure in the late summer of 2007, where Katie and I had gotten lost near Skanee looking for the Mouth of Huron and accidentally found Lower Silver Falls, we decided to check out waterfalls in the Keweenaw Peninsula for my 23rd birthday.

Researching for waterfalls to stop at became more difficult then I had originally planned for. Though I found several websites with information, I also found inconsistencies, confusing directions, and poor descriptions of Keweenaw waterfalls. We finally picked out a route that included three waterfalls and several other local attractions, including the Gay Bar and Mt. Horace Greeley. We set off early in the morning, heading north of the bridge, and enjoyed the first half of the day exploring roadside sites. It wasn't until we visited Lower Montreal Falls that the real, if somewhat fearful, adventure began.

read more »

Current Programming Languages

I started learning about web development during the summer of 2006 when I took an undergraduate course at Michigan Tech involving basic xHTML and CSS. My professor was very strict on certain coding points, such as using valid, clean xHTML and the separation of content and style, which I still practice with my current coding projects. xHTML is the background code for almost all web pages today, containing the words and structuring the page. CSS designs the page, giving it color, special fonts, and images.

With the basics under my belt, I created my first website for the Inter-Residence Hall Council, a governmental student organization that I presided over. The site was basic but well-structured, even if it had no dynamic content. It wasn't until the next summer that I started learning a new language, PHP, partially to make updating my websites easier and partially out of curiosity. PHP is a server side language that creates xHTML - like pulling information from a database to display on a webpage. I also got a new job as a graphic designer and web developer for Housing and Residential Life at Michigan Tech, so the number of different projects I was working on dramatically increased. Not only did I do redo their entire web page, but I created a new IRHC and Dining Services...

read more »

Blog Introduction

After introducing myself in the first post, I feel that the next logical step is to introduce the blog. While most blogs aim for a single theme, I'm hoping to use this one for three different themes: programming, hiking, and personal. These will likely change in the future as my needs and interests develop, but they seem pretty solid for the next few years.

As I am a web developer, I feel that it's only right to devote most of the blog entries to web programming with both interesting programming experiences and light tutorials. While I do have quite a few languages under my belt already, I am constantly looking to optimize my skills and learn more, so this topic should be fairly dynamic and varied.

Hiking is a more recent interest of mine, but one that I thoroughly enjoy. While I have spent a lot of time looking for waterfalls in the Keweenaw Area, I also climb mountains and seek out interesting historic locations. With the recent gift of a GPS unit, I plan on providing images, descriptions, and KML/GPX waypoints of some of the more epic adventures.

I also plan on using this blog to discuss interesting personal items, such as relocation, job opportunities, life changes, etc. However, I will keep this final topic to a minimum, as I hope to only discuss items...

read more »

My Introduction

Hello, world.

My name is Jacob Emerick, and I am a web application developer and graphic designer. I also enjoy the outdoors, a good challenge, and learning opportunities.

Though I was born in Camp Pendleton, CA, most of my childhood was spent in a small farming community in Michigan called Port Hope. My parents are former Marines, so I was brought up in a fairly strict family environment where hard work was expected. I flip-flopped between a private Lutheran school and the local public school and was involved in sports and other extracurricular groups. Not only did I excel in the school environment, ending up as the Valedictorian of my class, but I worked between 20 and 60 hours a week as a grounds manager for a small housing development.

When I came to Michigan Tech, I had high expectations of my academic career as a physicist. However, I found a new passion within a year: student leadership. For the next four years I was heavily involved in committees and organizations within the university and managed to make quite a few changes before graduation. My largest success was within the Inter-Residence Hall Council, though I was also involved in Student Events Advertising and the Undergraduate Student Government. When I did graduate, I took the first job offered...

read more »