Uncategorized


This week, I attended the Perl and PHP meetings. Though they were late nights for me, they were good meetings and worth the loss of sleep.

Perl – Catalyst
Catalyst is a MVC framework for Perl. I like Rails — alot, but not just cuz its Rails because its Ruby. I love Ruby. Perl I really like also, but I’m not so sure its a fantastic language to develop for the web. After seeing the presentation I say, thats nice… but.. I will probably use Rails if I were to use a MVC framework. I’m wearing my Perl shirt today!

By the way — if you are south of chicago there’s a Perl meet up in Tinley Park on Jan 24, 7pm

Caribou Coffee
16205 Harlem Ave
Tinley Park, IL 60477
(708) 444-0478
PHP – Firebug
We didn’t really have any topics planned out for this one — but we had some volunteers. Peter did a good overview of the indispensable tool for debugging javascript, css and HTML. Unfortunately, it only works in Firebug, but there is an add javascript to use with IE and get a few features to make your life a bit more bearable in IE. Larry jumped in and showed some Javascript Debugging. Next month at PHP — profiling fest with XDebug, and Valgrind. Should be interesting!

Ruby – no love!
I’ve been moping about this week about Ruby… I haven’t done it in about 4-5 months since being back in PHP-Land? I’m having withdrawals. It all started after I read this article Technologies of the Year 2006 (BTW -I have done all of them!). I was thinking ..awwww… Rails…. and I picked up my Rails book at work that I look at when I am fed up with PHP, just to cheer me up a bit. I skipped the last Ruby meeting, at the last minute the buddies that I thought would go with me backed out.. and.. well.. I was pretty tired and the topic of “Environments” made me think it would be a mac-love fest. I used to want a mac laptop, but… I’ve decided to stick with the PC environment since I am happiest in Ubuntu. I am determined, buddies or no buddies, to go to the next meeting which should prove more interesting. The Chicago Ruby list has been buzzing with topics and volunteers for presentations. There’s even an outbreak of smaller meetups in other areas of the city.. North, South… fun times.

Book Review
Beginning Ajax with PHP by Lee Babin, published by Apress

Book Site | Sample Chapter: 3 PHP and Ajax | Table of Contents

Although no stranger to Ajax, I received a review copy of Beginning Ajax with PHP expecting some watered down presentation of Javascript with some PHP thrown in. I was quite surprised to find a good presentation of using Ajax and PHP, easy enough for the beginner and still interesting for those who have done it for years.

The book starts out exactly how I would write it — SIMPLE! The first time I did Ajax with XHR (xml http request), I used a plain text file, which I then read into a DIV at the click of a link. This takes a similar approach and has data stored in an array which is then accessed with a simple call to a PHP file. The following chapter, takes it a step further and this building upon previous chapters is a common theme in the book.

After going through the basics, the book gets into more practical uses of Ajax. The latter chapters talk about using forms to pass along data to be processed by Ajax and doing form validation. It also gives a good explanation of the proper use of the form methods GET and POST. It goes into detail about uploading images and other files using a hidden form submit trick, since XHR doesn’t support file uploading (javascript is not allowed to access files on your harddrive). And this chapter is the perfect predecessor to the “Real-World Ajax Application” chapter where you will take what you have learned and create an Ajax based photo gallery. Practical, hand-on is the best way to learn something IMHO (Sorry “Hello World” scripts!). It is interesting that this chapter is in the middle of the book, when I would expect it at the end. Perhaps the author wanted the user to jump in and try it, instead of persevering to the end. I don’t know about you, but often the last few chapters of the book go unread by me.

After the reader has confidence on how to use AJAX, the book gives the warning, “Whoa! Wait a minute! AJAX isn’t appropriate for EVERYTHING!” It gives examples of when AJAX would be a good idea and when it would not. I think this is pretty important as each CEO now wants Ajax everywhere in their application but it’s not always the best solution! And it talks about the classic, “THE BACK BUTTON”, problem. Then, in the same chapter, the book takes sort of a funny turn (in my opinion) and gives an introduction to PEAR.  The book explains how to use PEAR’s HTML_TABLE class to illustrate a good use for Ajax in creating an Excel-like grid that sums columns. This is a very cool class but would have been better suited for an appendix.

The rest of the book seems to be a random splattering of interesting topics: web services, map applications, cross-browser issues (touches again on the back button problem – but a solution this time!). There is also a brief mention of security. This should have been more in the middle of the book (see above for skipped last chapters syndrome). What then follows is a testing and debugging chapter which would have been more effective as the 3 or 4th chapter in the book. Finally there is a chapter about the browser DOM.

A great minor addition to the book would be an overview of some Ajax libraries such as Prototype, JQuery, Dojo, etc.

Moved from Wednesday to Tuesday this week, I’ll be talking about testing. I’ll talk a bit about Selenium, test-more and PHPUnit.

Info.com
150 N Michigan
Suite 2800
6:30p

If you are arriving past 7:00pm, shoot me an email (or comment here) and I’ll give your name to the guard and he’ll let you in .. otherwise, call Rich or I.

I’m here at the PHP Zend Conference in San Jose, CA … what a beautiful city! I’ve never actually seen mountians! I don’t think I’ve ever been west of Iowa actually.

I got here saturday and had a lonely lunch by myself in the hotel restaurant, never before had I sat at a resturant and ate by myself! My coworker arrived later that evening and he talked me into trying Sushi. It was ok.. but… given a choice…I’d go for steak anyday. Not a big seafood fan.
Sunday – my coworker and I got adventurous and managed to get downtown and find directions to a mall. It was pretty much your average mall.. I bough a fleece shirt that came in handy on the ride back to the hotel.

Monday – Zend tutorials! I attended

Improving Performance of PHP Applications – Ilia Alshanetsky
It was very good, he’s a good speaker and I learned alot of things. About half of it was more hardware, apache fine tuning … and the other half, specifically PHP. For example, the @ error suppressor operator is actually quite slow. What it does is take the value of error_reporting and store in a variable, set the level to none, do your command, then set the reporting back to what it was. There were many other such things that I didn’t know before.

Essential PHP Security – Chris Shiflett
I thought I knew security stuff, since I’m an avid reader of Chris’s blog. But when I took the PHP Zend Certification practice tests at PHP Arch, I failed the security section!! So I knew I had to go to this one, I learned a few things I didn’t know or really understand before. I will be happy to say, that after this session when I took the practice test again – I passed  the security session!! Hope you are proud of me Chris!

more later ……..

The Chicago Google office volunteered to host and feed the Python meeting this month. Everybody I say this to, says “I didn’t know that Google had a Chicago office!?!” as if Google should make a full page annoucment when they open an office somewhere. I admit, I went partly to see what it was like and Python is on my radar of languages to learn next.

Brian Ray talked about operator overloading in Python, which is always cool to overload something. Then the Google guys gave an overview of Google Code and touched on things like Big Tables (of which I knew nothing). Then my buddy Jason Huggins (Selenium guy) talked about Selenium and showed off his freaking cool MAC laptop and virtual machines. I have got to see if I can do that on mine.

I had to leave early to catch the 9:20 train.. but such is life.

I accepted a job at www.info.com …. a pretty nifty search engine company in downtown chicago. Its quite interesting work!

I finally WROTE again.
. for a contest over at CodeSnipers. Vote if you want


I have some plans to write some more after my past three months of hermit mode. I guess, I was just soooooooo busy hitting the perl that I didn’t keep up with much anything. I even missed the July Issue of Linux Journal, with sexy ruby man (not my words, a friend calls him that!) DHH .. Maybe I can find someone to loan me a copy.

Well … I had to leave my Perl/Ruby job because of financial difficulties of the company on Monday. But I still learned a ton of stuff and worked with some great people. When I left I had a job offer and another possible one, so it wasn’t too upsetting to leave. SO – only one day of unemployment. I would have been very worried leaving and not having any options for employment.

So it seems that my fate is PHP but its all good. I guess I’m just a language freak .. I like perl, ruby too! Next is Python or maybe… smalltalk..

Instead of using Preview Template when I was creating a new template, I went ahead and saved.. I pasted in the wrong template and major borkage occured. So.. what the heck, I just picked a new design. Not done yet…

I’m looking for a new web host HiVelocity won’t fix the
problem with me emailing AOL. I want to have access as root(or a tech support that will
assist me when I want to make changes), at least 20 some domains (none very high traffic).
I need PHP, MySQL, Ruby, Rails, Python and Perl.

I want to spend around 40-70 a month.

I’ve been recommened to Dreamhost and I’ve been
looking at RailsPlayGround.

Any suggestions?

I want to do something like this:

SELECT h.username AS user
FROM userdata AS h
WHERE user=”nstowe”;

I am using the ALIAS of h.username, in my WHERE.

I’m using MySQL.

It doesn’t work, although I would of thought it would. Any ideas? is this same for Oracle, PG?

« Previous PageNext Page »