Scott's Recipes Logo

PHPLarge -- FuzzyOffice -- 000 - Genesis


Please note that all opinions are that of the author.


PHPLarge :: FuzzyOffice :: 000 - Genesis
Last updated: 8/9/2002; 5:50:38 AM
 
The FuzzyBlog!

Marketing 101. Consulting 101. PHP Consulting. Random geeky stuff. I Blog Therefore I Am.

PHPLarge :: FuzzyOffice :: 000 - Genesis

Well, all I have to say is that you really have to blame Alex for this series of articles / stories / essays / diatribes / fill in potentially derogatory statement here.  Let me explain.  Alex is also known as www.nosuch.org.  Yesterday he popped into my IM space with a highly reasonable request.  And we began chatting, discovered we have more in common than one would have suspected and then he made the responsible statement:

mrnosuch (08:57:04 AM): But my exp. is limited, and I’m just getting my head around the changes in 4.2.
mrnosuch (08:57:15 AM): I want to make sure I do things the “right way” (i.e. the secure way).
fuzzygroup (08:57:21 AM): Oh. 4.2. ACK FOO.
fuzzygroup (08:57:22 AM): http://www.fuzzygroup.net/products/fuzzyoffice/
mrnosuch (08:57:29 AM): Unforunately oodles of code examples and writings don’t address it.
mrnosuch (08:57:45 AM): Well, if you have existing code, yeah, it can be a headache.
fuzzygroup (08:57:53 AM): Oh totally.
mrnosuch (08:57:57 AM): I don’t have a lot, luckily, and I’d rather make sure I do things right going forward.
fuzzygroup (08:58:03 AM): do you control your php.ini ? Ah. Nvr mind.
mrnosuch (08:58:20 AM): Yeah, I do. But I actually don’t use much PHP now.
mrnosuch (08:58:30 AM): The comment system, the glossary, cheap hacks.
fuzzygroup (08:58:38 AM): Ah.
fuzzygroup (08:58:43 AM): It’s good for hacks too
mrnosuch (08:58:53 AM): But as I get a bit more clever, I want to be clever the RIGHT way.
fuzzygroup (08:58:59 AM): Yup.
mrnosuch (08:59:04 AM): And very little example code does it the new right way.
mrnosuch (08:59:11 AM): Being a coder, I learn best by example.
fuzzygroup (08:59:17 AM): I strongly discourage the php and html intermizxing that is so common
mrnosuch (08:59:28 AM): <- whistles innocently.
fuzzygroup (08:59:40 AM): lol
mrnosuch (08:59:44 AM): I agree, though.
fuzzygroup (08:59:52 AM): Almost all my stuff starts with switch($action) these days
fuzzygroup (08:59:59 AM): and when $action is null it goes to default:
fuzzygroup (09:00:17 AM): which just falls thru to a template driven page
mrnosuch (09:00:23 AM): Makes sense.
fuzzygroup (09:00:27 AM): it seems to be a _nice_ approach.
mrnosuch (09:00:42 AM): It’s frustrating that so little out there really talks about full web app development in PHP.

So you see people – it’s all Alex’s fault.  He prodded me.  He placed the idea in my head.  And then when I found out that he’s about to get married to Connie, my sole thought was “It’s a damn virtual wedding present”.  (Sure it won’t do anything for Connie but do the place settings you get in a wedding ever do anything for the man?  This is something that Alex even asked for!  I mean a wedding present that a man actually picked out himself.  How strange).  And, with that introduction, I give you …

Building a Large Scale Application in PHP: FuzzyOffice: Genesis

 I have a confession to make.  If my life was an adventure game, it would resemble this all too closely:

“You are trapped in a maze of twisty, windy urls, passwords, tasks, events,
email messages, bookmarks and more, all alike.  None will be accessible to you
if you leave your home computer.  No password, bookmark or url will be memorable. 
Your reaction will be Rage.  Extreme Rage.
Have a NICE day”

I’m sorry people.  That’s my life.  I have something like 15 different logins, 4 or 5 passwords (minimum), more bookmarks than you can swing a cat at (but my cats _hate_ it when I swing them; ‘nuff on that topic) and I’m increasingly mobile.  So, in the spirit of damn near all Open Source applications, I need to “scratch my own niche”. 

PS – please don’t tell me “Dude!  Normalize your logins and passwords.”  Sorry.  When some logins are 5 char max, some 7 char minimum and when you believe in security, not going to happen.  And don’t even get me started on the idiotic limitations on password length even on high security sites like Charles Schwab (where at least the last time you checked you could have no less than a 6 character password but no more than an 8 character password – and they have my damn money????).

Now you need to bear in mind some characteristics about me to understand my solution:

So, given the above, it wouldn’t probably surprise you that my answer is “Write Code.  Write Lots of Code.  Engineer (Hack) Together an Application.”  Yup.  And, so, I give you FuzzyOffice.  What’s that?  Don’t like the name?  Tough.  Fork the code and change the name (it’ll be ultimately GPL’d once I get a CVS server and such up and get it to a decent state).  Seriously, the name actually can be rationalized as this:

Well, ok.  We have a name.  We have an application language, PHP.  We can assume that an RDBMS will figure heavily.  But, what oh sensei, should FuzzyOffice do?  See

http://www.fuzzygroup.net/products/fuzzyoffice/
http://www.fuzzyoffice.com/ (damn little there now)

for the answer to that question.  Basically it’s PIM software that inverts the P (personal) and assumes that most stuff is shared.  Even if no one else in the universe ever uses it, it’s dramatically improving the productivity that Gretchen and I have and that’s wicked cool.  Also everyone else that I’ve run the idea by seems to like it.

Postscript

Since I posted a request for “should I do this or not”, I’ve gotten more Yes’s than I have for any blog topic and absolutely 0 No’s.  So I guess I have a new recurring topic. 

Acknowledgements and Thanks Extended to:

My usual cast of friends and colleagues with some additions:

I’m sure there are others I should thank but they don’t come to mind.  Thanks anyway.

 
Copyright 2002 © The FuzzyStuff