I had the opportunity to discuss the web project that I am currently working on with a friend and I was surprised at how much it made me want to jet out of the room and work on it. Discussing your dreams or goals is an excellent way for you to rediscover just why you made them in the first place. In my case it was a good indicator that a) I was still passionate about my goal, and b) that I was way overdue in working on achieving it. So in response I got back to the hustle, so don’t hesitate go and hustle!
when starting a web project you need to dream big! No I am not talking about hitting it big with the next facebook or YouTube and rolling in the snobby circles of Silicon Valley, but thinking big in regards to the back-end development of your site or web application. Being in the beginning stages of building a website myself, I am trying to guarantee that the the architecture of my site can handle scaling beyond even what I foresee as a successful amount of users. This is especially important for a newbie web developer like myself, because doing several key things wrong could be a costly mistake down the road if the site is a success.
While my personal knowledge on building to scale is limited, recently I have been focusing on the design of the database of my site, specifically in regards to database normalization, multiple databases versus numerous tables, and lean PHP code. I think that a common tendency I have, and most likely share with other newbies, is wanting to get something online ASAP and then ironing out the kinks later. While there is merit in this learning process, laying a solid back-end foundation is paramount. I love to learn by getting my hands dirty just as much as the next guy but the consequence of having a weak foundation could be that you miss a huge opportunity and more importantly you don’t get invited to that party in Silicon Valley.
for further reading; an interesting article about the importance of doing it right
While I should have been working diligently through my PHP book today, I was distracted messing around with my favicon (I tend to get distracted messing around with Fireworks all too often). For those unfamiliar, a favicon is the little icon that comes up by the address bar and shows up when you bookmark a site. The basic favicon in 16×16 pixels, however favicons frequently have multiple files within them, each in a different size. The purpose for this is so the icon can be used at various sizes and still look decent, because blowing up a 16×16 image would look pretty ridiculous. While creating a favicon is trivial with the appropriate program (I use Fireworks), adding the files together into one .ico file requires another program. I found a simple program that seems to do a good job. I created 3 .png files; at sizes 16×16, 32×32, 64X64, and put them all into one. After experimenting with a few designs I realized that I should keep it simple, because its hard to make something look good at 16×16 pixels. See an article about favicons here.
*don’t forget to add the code below into the <head> section
*if you do not want to mess around with multiple resolution favicons I would suggest just going with a simple site like http://www.favicon.cc/ to convert an image to .ico
Theme customization is easier than I thought. After starting around 11pm I was done about 2:30am, not bad for my first time. Basically I got the Thematic theme set up on my localhost and pulled up the default.css file and went to town. Not really being sure of the consequences of my actions within the code I just commented out the original code as a safe-guard. One big note, if you are working off of an existing theme (as I did using Thematic) make sure you change the info in the commented section at the top of the style.css file. This is mentioned here but I tend to just get too excited and start coding without reading the warnings. I decided to tweak the original design a bit, give me your feedback. I also seem to have lost my Twitter plugin, I will have to figure that one out…
Its time to quit fooling around and put the nose to the old grind stone, oh and put out some good content along the way. I am hoping to chronicle my journey into web development, and the first major project will be the customization of this site. Perhaps a little history is in order….
I began my curiosity with the web about 2 years ago, and a dropped an email to a friend of a friend; a Ruby on Rails god John Nunemaker. Despite his great advice I do nothing for a year. I puts around on sitepoint.com (a great resource for beginners and experts), and find their free sample book chapters very helpful. Yet its hard to just dive in and get my mind around everything that’s involved in the modern web. Per John’s advice, I finally pick up a copy of Designing with Web Standards (apparently its the Bible for web heads, and highly recommended for anyone doing things on the web). The book gives me some great bearings and I dive into CSS and XHTML with just online tutorials guiding the way and this guy encouraging me. After hours of going in circles of confusion I pound out a basic site that separates content from presentation, and I rejoice! I realized that a formal class really is necessary to get a firm foundation of CSS and XHTML, well for me at least. Being an undergrad engineering student at Notre Dame (goodbye Michigan fans, thanks for reading ), I get into a CSS class taught by John’s business partner Steve Smith; a CSS god and really cool guy (he even brews his own beer, I mean come on). The main text for the class was a book Steve co-authored, highly recommended! The class gave me a pretty firm foundation for creating static sites but I wanted to dive into dynamic sites, so I thought that messing around with Wordpress while tinkering around learning PHP and MySQL would be a good way to go. After some research on Amazon for the best PHP book, I picked up Larry Ullman’s book PHP 6 and MySQL 5. While the internet does have endless amounts of free tutorials, a book really is a good way to go because it gives you a firm foundation of the language. Oh I almost forgot, I need to give a shout out to Oak, for letting me sit in on his Adobe CS3 class at ND so that I could pick up a little on the design side of things. Thanks for bearing with such a design challenged engineering student.
So that is where I am at. Most recently I have been working my way through the book, I just got Wordpress set up on my localhost (tutorial link) so that I can do theme customization. I eventually want the site to look something like this. So I have my work cut out for me. More updates to come…