This is a list of books currently on my To Read shelf... literally. I do not suggest or anti-suggest any of them at this time as I haven't read them yet.
Current Efforts:
Blue Parabola, LLC
HubAustin
web2Project
PHP'ers:
Cal Evans
Eli White
Elizabeth Naramore
Joe LeBlanc
Matthew Turland
Matthew Weier O'Phinney
Planet PHP
Tony Bibbs
Business/mISV:
Bob Walsh
Eric Sink
Joel Spolsky
Micah Baldwin
Paul Graham
Past Projects:
CodeSnipers
HOBY
Judicial Watch
mobile FoxNews.com
NRTW
Great Tools I use:
Drupal
GitHub
NetBeans for PHP
phpUnit
Subversion
Zend Framework
This is not the home of dotProject or web2project. It is the home of CaseySoftware, LLC. Any dotProject support questions should be referred to their support forums.
When we start projects, we often follow the naming conventions of our frameworks without even thinking about the "Why?" It almost seems silly to ask until you run into a - hopefully, legacy - codebase that has an incomplete or inconsistent scheme.
Unfortunately, web2project is one of those codebases.
For those just joining us, we forked web2project in late 2007 from dotproject which itself was started in mid 2000. Therefore some of the code goes back nearly 13 years all the way back into the PHP 3 days. Therefore, there's a little.. cruft. And naming conventions are just one piece.
First, we've had a simple Object Relational Mapper (ORM) since the earliest days. It handles our object to database (and back) conversion with no configuration. While there are many arguments for and against ORMs, it works and makes things simple.
We're at that time of year where everyone wants to start something new. We have a flood of articles and blog posts about "what I'm going to do differently this year" and everyone wants to [choose: lose weight, read more, get out of debt, get that new job, etc, etc]. If they're lazy, this urge will last about a week.. aka it's probably done by now. Alternatively, if they're motivated, they might make it to February.
At the end of the day, it doesn't happen because starting something new is HARD.
Alternatively, in software development, we're spoiled. We can write a single line of code and do some interesting things. If we add a framework, that single line of code is backed up by thousands.. and can do even more impressive things. At Twilio, it's cool watching someone get excited that their three lines of code just made their phone ring. Unfortunately, we can take this too far..
One of the most common configurations out there is related to allowing web2project users to have access to only specific companies. While it's not as simple as saying "users should only see things from their own company," it's not as complicated as you might think. Here's how I've done it for various groups.
If you start with the basic roles, here are the step by step directions:
Role: Project Worker
Non-Admin Modules - Allow - Access, Add, Delete, Edit, View
Companies - Deny - Access, Add, Delete, Edit, View
Reports - Allow - Access, Add, Delete, Edit, View
Explanation: This gives access for a User to do anything they want on any of the non-admin modules *except* for Company. But since all of my Projects are assigned to a company, they can't actually see anything other than the navigation menu and empty screens.
When web2project was first formed in November 2007, I was recruited to work on the community side of things. I had previously earned a spot on the dotProject team by performing support in the forums, blogging, writing the occasional documentation, collecting user feedback, and tracking bug reports, so it was familiar ground.
At the insistence of John Mertic - Developer Liasion of SugarCRM - whom I met in January at PHPBenelux 2011, I submitted and was accepted to speak at SugarCon 2011 next month. My session - Transparent Collaboration - covers a part of open source that drives most of us up the wall.. integration. Here's the marketing version of the synopsis:
A few weeks ago at the PHPBenelux Conference, I gave my presentation on the rebirth of dotProject as web2project where I covered one way of rebooting a project. But after catching Elizabeth Naramore's talk on "Technical Debt" again, it got me thinking..
Within web2project, we made the deliberate decision to work on our technical debt. Even after 2 major, 5 minor, and one patch level release, we still occasionally find issues ranging from annoyances to things that will require major refactorings*. Either way, since we're steadily documenting them, we're constantly getting a better picture of the state of the system and its strengths and weaknesses.
Alternatively, we could have trashed the code and started from scratch..
The classic example is Netscape 5.
Recent comments
28 weeks 5 days ago
42 weeks 5 days ago
43 weeks 15 hours ago
44 weeks 5 days ago
46 weeks 1 day ago
46 weeks 1 day ago
49 weeks 14 hours ago
49 weeks 3 days ago
51 weeks 1 day ago
51 weeks 2 days ago