Posted by & filed under php.

My friend and I have decided to dedicate one night of the week, to go take photos. Just to get familiar with our cameras and to just get our money’s worth out of the investments we’ve made. I have a Nikon D50, he has a Nikon D80. Anyway, I wanted to share the photos I took with him, and other people, so I wanted a simple photo gallery. I didn’t want to put things on Flickr, and I didn’t want to use the Gallery project (overkill+ugly). So, I decided to make something small, clean and fast. Ever since Davey Shafik introduced me to Lightbox I’ve been wanting to use it more and more. So, using Lightbox, PHP 5, and ImageMagick, I wrote a quick gallery script.

It uses PHP 5′s RecursiveDirectoryIterator with that, I was able to write everything in ~37 lines. Along with a simple shell script to have imagemagick create thumbnails. Let me know what you think, if people ask for the source code, i’ll format it to not look like I wrote it at 5:00AM. The only thing I’ll add to it, is some sort of sorting functionality, and some CSS tweaks. Once again My Photo Gallery

Update Tuesday; June 26, 2007: The source code is now available.

Posted by & filed under iphone, php.

So, Mr. Jobs and his henchmen have an Ad, saying.. “This is the internet on your iPhone”.. and they show people using Safari to browse the tubes. So.. why do people need to write apps for the iPhone using HTML/Ajax/CSS? This seems to be the question most mac developers are asking.. but I am not.

“Web Services are the future” we’ve been hearing this.. since.. 1993? I believe the iPhone and it’s ability to render standards based HTML will usher in a new era for web services. The cell phone carriers are going to love it too, as every “application” on the phone needs to connect to the internet.. which obviously means.. more data plans will be sold.

I for one welcome our new paradigm. Not only does it make it easier for someone like me to write an app for the iPhone, it makes it easier for me to write an app for any phone. Opera Mini runs on pretty much everything, and it’s standards compliant.. so my app is instantly cross platform.

My questions/qualms are not with the idea of how apps will be written, but how will they be packaged, and monetized.

If I’m writing web pages that are calling PHP/Ruby/Python/.Net/Java pages via javascript… all I need to have on the iPhone is the HTML file.. which can call the CSS and JS files directly from my server.. which basically means.. all my apps are “hosted” on my server. Obviously, I can’t charge or license out the HTML file, so I’ll need to write my own user auth system, and licensing system? And, we only have 3 weeks to write and test something like this? I’m convinced, iPhone 1.0 would have ‘Beta’ written all over it, if it was a google product. Apple took too long to decide or reveal how apps will be written for the phone.. and honestly it shows they rushed the announcement for WWDC. I hope it’s not a new trend.

Posted by & filed under Apple, iphone.

So,
Yesterday I took the plunge, and switched to AT&T, getting ready for the iPhone. My contract with T-Mobile will be up next week, so I didn’t want to stay in limbo, nor did I want any issues with the number portability around the time of the release.. (I’m expecting a lot of switchers).. so anyway.. I am now an AT&T customer, I have been told that I can switch my temporary handset (A Nokia N75) will be accepted back on the 29th, if everything is in the same box and good condition, and I’ll get credit for the handset towards the iPhone.. so I’m using the $250 for the N75, as a layaway plan.. where I won’t have to shell out the entire $600 on the 29th. Anyway.. here is hope for the iPhone..

I hope the iPhone works with the Alpine iPod car adapter
I just replaced the stereo in my car, and now I have an iPod adapter with it.. I hope the iPhone can be plugged into the same interface.. and then it can use the speakers to let me hear the caller, and the built in mic for voice. Apart from the basic iPod functionality, then I won’t need to fumble for a bluetooth headset, and a car charger for the iPhone. It may not be available in the first edition, but I really hope the engineers thought of this when they were designing it.. it would be a killer feature.. considering all the new cars that are coming with iPod interfaces as an option. Plus it promotes road safety..

Posted by & filed under php, security.

In other words.. what makes people think about privacy, and how they value it. The official abstract says: “The purpose of this paper is to detect the presence of sophisticated economic motives behind individual concerns for privacy. Recent theories of privacy demands in commercial contexts have assumed an economically aware and sophisticated consumer, capable of evaluating the indirect consequences of information transmission. We present evidence, from a large-scale experiment evoking a realistic context, that privacy concerns are indeed sensitive to the indirect consequences of information transmission.” It’s a fascinating read for all who want to understand what customers value among their personal information. From my understanding so far, it’s data use that affects people, not data collection. Full Report Here.

Posted by & filed under Apple, php.

In case you’ve been living under a rock without an internet connection, I’m sure you’ve seen the new Microsoft Surface computing interface. It looks damn cool, I want a coffee table that can do this, like yesterday.

But, this is not to be.. it’ll be ready in Winter of 2007 (Spring 2008), and will only be available to retailers (home use is buggy, do not put in front of kids). So, why do all the demos show mothers and fathers looking at photos and videos of their own kids?
Why does it show people hunched over a coffee table, when it won’t be available for homes yet?

I think that shows the basic difference in the marketing department for  MS, and common sense. It seems the MS Marketing guys were shown the surface and told to make an Ad. They never bothered to ask..”who, what, when, where, why”. Or if they did.. the person who gave them the answers, wasn’t talking to the business guys.. I’m glad MS is doing this too, or they would’ve been left in the dust by Apple, and I’m glad they’ve been researching it for a few years. This doesn’t seem like a knee jerk reaction to the iPhone interface, but once again, MS had to have some pre-mature release.  6 months is a long time to forget, and with the apple machine starting to take off.. people will wonder.. surwhat?

The apple rumor mill is already stocked with rumors of touch enabled displays,super duper secret features of leopard.. after WWDC.. these will jump into high gear. As I write this, some apple rumor site, is coming up with ideas of how Apple’s next big thing is going to outshine Surface, “A UI that works based on eye movement.. using your hands is so 2007″.

So.. anyway, MS Surface, seems cool.. can’t wait to see it for normal home or even developer use.. it would truly give a new meaning to “Visual Studio”. It redefines what Tiger’s Dashboard should’ve been.. and probably will be.

Posted by & filed under php, security.

BlogSecurity, brings up an interesting point about blogs, and security. As vulnerabilities are found, patches are issued, but how does one educate the end user about these patches? I recently found an old old site of mine which I had put up to test a shared hosting provider, defaced. The reason? A vulnerable version of wordpress. I was able to patch the hole and fix the problem relatively easily, but what about joe blogger? He’s more passionate about politics than the blogging tool he uses, more than likely, he doesn’t even log in to the administrative interface, but uses a third party app to post to the blog. How do we let this person know that he’s vulnerable? Operating Systems have some version of “software update”. Desktop applications have a way of checking for “newer versions”, which can then help you decide if you want to upgrade or not.. but web based software normally doesn’t have anything like this.

SugarCRM seems to be the only thing that can check for newer version of itself, and then try to patch itself. So.. should non technical people be forced to use a hosted/managed service? (This is a dumb question.. please don’t answer it).. or should there be a standard way of letting package users about updates?

Example: WordPress.

Everytime you post, when WP hits pingomatic, it should also hit automattic, and do a version check. Automattic should ping back by saying, your version is

a: current

b: old

c: Critically vulnerable

Based on these responses, the user is notified via email, for answer b. But for version C, wordpress goes into read only mode.. no new posts, no comments, until the user acknowledges the threat, and does something about it.

To make it extra annoying, we allow the user to say “OK, I’m aware of the bug, but I want to post anyway”, but right after the post, we go back to read only mode. So, the user can continue to use the software, but we now have a web version of the shareware snag screen. I’m not sure how well this will work, or if it’s even a good idea.

It would be impossible to implement this idea on the already insecure installs out there, so it would address the needs of the future, but not the existing vulnerable installations. I don’t think this alone will solve the problem, except maybe create a new one, until we figure out a sane way of doing this..

So.. I guess I’ll ask you guys what you think.. I have no clue, I’m going to go back to my corner now..:)

Posted by & filed under Uncategorized.

PHP Developer beat me to the scoop already :) , but I’ve launched http://www.php-powered.com. The site is a simple listing service, but can be much more if the community desires. The main purpose is to list and show case all the sites in the world that are using PHP. So, next time someone asks you, who uses PHP? You can go to the site, and give them a loooong list, sort by category, OS, or PHP versions.

This is also me achieving, or starting to achieve one of my goals for the year. (Drupal).
I’m very impressed with drupal so far. I haven’t had to touch a single line of code, the existing modules let me create all of this functionality, by just clicking
and reading the manual.

PHP Tek was fun, everyone has given their roundup and photos from the conference, so I’ll share my photos from downtown Chicago, and the Navy Pier.

Posted by & filed under Uncategorized.

I’m now in Chicago, two days prior to PHPTek. I’ve never been to Chicago, so I wanted to take the conference as an excuse for a mini vacation. I’m staying at the Embassy Suites Rosemont, which is within a mile or so of the conference Hyatt. If you’re already here, or want to meet up with me during the conference.. here is my intended schedule..

Tuesday, May 15th 2007:


Wednesday, May 16th 2007:


Thursday, May 17th 2007:

Friday, May 18th 2007

I believe thursday night is a Facebook social event, and I saw my two favorite words.. ‘open’ ‘bar’.. so Friday is a maybe :)

So.. that’s that.. I’d love to hear from you guys, and meet the people of #phpc.. I look forward to a fun week. I hope to get my “learn on”. :) .

Posted by & filed under Uncategorized.

This is my own cheat sheet for svn propset, which I struggle with every few months. Hopefully, I can remember this next time..

Problem : I want to ignore certain files in my working copy, when I do an svn status, svn commit etc. I don’t want the cache, or my .pyc files to get committed.

Solution : svn pe svn:ignore .
this should open vim, and then on each line I enter the files I want to ignore..

*.pyc
*.swp
*.tmp
cache/*

Caveats: I need to do this for each directory, I can’t find a recursive option for this.. so when I’m doing python, and each application has it’s own dir, I need to do it for each sub dir.

PS: Yes, I’m using python these days.. have to do it for a client.