ok so im moving forward with my blog recode/redesign... actually, this is the SECOND round since i last mentioned it. i was disgusted with the old-new stuff i wrote, threw it out, and started from scratch. again.
theres still a good bit of work left to be done, but its 70% of the way there... gotta get all the user-related stuff done, gotta reformat all the old posts in the database, gotta get all the interfaces done for posting articles and comments, gotta build the menuing subsystem, gotta build the custom-html-tag stuff (for things like flowplayer and polls etc)... but none of that is hard, just time consuming. all the hard stuff is pretty well banged out now.
if you want to take a look at the work in progress, head over to (edit: link removed, youre looking at the new stuff now)... what follows is a lot of rambling geeky rumination on this latest round of coding, and can be skipped for the faint of heart. but if youve ever wanted a little glimpse at what its like to be a programmer, read on...
the new software is fully object-oriented. it was a big hole in my PHP5 skillset, and the way i typically plug holes like that is to re-write the blog yet again forcing myself to use whatever particular thing im trying to learn. i cant learn anything by reading a book... i just cant. ive got to get in there up to my elbows, ive got to get dirty and break it and screw it up and do it wrong and keep pounding away at it until i have my "A HA!" moment, at which point i havent just "learned" it like someone would from a book or a class... i KNOW it. i UNDERSTAND it.
incidentally, i had my "a ha!" moment some time last friday night... which resulted in my throwing out of what i had done so far, and starting over with my new understanding of wtf i was doing. ill be honest, ive never really "got" object oriented philosophy before. it was a new thing, just coming into wide usage, back when i was getting professionally established... by then, i was firmly set in the "old school" and with over 10 years of coding procedurally, i wasnt about to jump on what looked like the latest stupid tech fad to me at the time.
wow was i wrong about that one.
anyhow, since ive been looking for work lately, everyone is wanting OO experience. so i decided i couldnt keep pooh-pooh-ing it and had to knuckle down and do it. even so, i still spent many hours of coding thinking to myself "this is stupid. i would be done by now if i were doing this the old way." and of course, i *would* have been done because i knew wtf i was doing... then, finally, i ran into a situation where i was able to save myself a BUCKETLOAD of time and effort by simply subclassing something and *PING* on goes the lightbulb.
i also realized, looking back over my work, how doing things OO forced me to change my coding methodology. the code was better organized, clearer, easier to debug, and easier to work on. that alone is worth a whole lot. now that i get it, im actually kinda becoming a convert. i still believe there are some things that OO is not the best tool for the job, but i do feel really good about having a different and very powerful new tool to employ.
now for the downside... this always happens when i learn something new, really have that epiphany moment... now that ive learned how to use this hammer, everything i look at starts to look like a nail :) so now i begin what is really the life-long process of gaining experience in the correct application of this shiny new hammer, the kind of thing that can only be gained by writing lots of code, hammering lots of nails as it were. knowledge comes easily, subtlety is hard :)
as for the DESIGN of the site, the actual thing that you see, ive also completely reworked everything. i decided it was time for me to really get a handle on css-driven tableless layout stuff, so i set myself a few restrictions: NO TABLES, and NO PRESENTATION-RELATED STUFF IN THE MARKUP. period. no cheating. ive done a bunch of this before in the course of my job, of course, but usually with legacy stuff (read, other people's sites) requiring compromise in the implementation... with my site, there would be no compromise, no client to appease, and no one to blame but me if i couldnt pull it off... and i was determined to.
the end result is 98% the same outwardly (100% to anyone not as picky as i am) as the current site, and 10000 times more flexible. i can easily change the entire look and feel of the site with one simple stylesheet swap. the site is also much faster to display, friendlier to text based browsers and mobile browsers, and just all-around nicer to work with.
anyhow, time and motivation willing, i hope to replace this old broke-ass site with the new hotness in 4-6 weeks...
The world according to Tim
making progress...
Comments:
(loading comments)
You must be logged in to post comments.