Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Programming IT Technology

Gallery 2.0 Released 224

uss_valiant writes "From the Gallery website: "We are incredibly pleased to announce the release of Gallery 2.0! Over three years of design and development have gone into creating the best online photo management product possible. Gallery 2.0 is the natural successor to Gallery 1, and we hope that you like what you see. Don't wait, download Gallery 2 now!" From a developers point of view, the Gallery 2 framework is particularly interesting because it's written with modern programming patterns (OOP, extreme programming, test driven development, MVC, factories, modularity, ...) in mind which is rather unusual for PHP based projects. Over 1500 unit tests ensure correct functionality and its architecture is really impressive."
This discussion has been archived. No new comments can be posted.

Gallery 2.0 Released

Comments Filter:
  • +5 Insightful! (Score:5, Insightful)

    by h0bbel ( 105687 ) on Tuesday September 13, 2005 @06:22PM (#13551666) Homepage
    RC1 was codenamed +5 Insightful, how nice :)
  • Gallery (Score:3, Insightful)

    by Saiyaman ( 859809 ) on Tuesday September 13, 2005 @06:25PM (#13551701)
    I have been using the Beta of 2 for Gallery for a while. I love it. It is great if you want to share photos with friends after a fun night partying. Also allows your friends to upload pictures if they are so inclined.
  • by staticdragon ( 95211 ) on Tuesday September 13, 2005 @06:26PM (#13551709) Homepage
    Anyone have an alternate link or a server thats running it since the site is borked?
  • by pete6677 ( 681676 ) on Tuesday September 13, 2005 @06:27PM (#13551724)
    A paid press release for free software? What the hell would they have to gain from that?
  • by man_of_mr_e ( 217855 ) on Tuesday September 13, 2005 @06:37PM (#13551807)
    The problem is, when those small projects become big projects, they usually need to be completely rewritten from scratch because the small projects were not written with maintainability in mind.

    This is the primary problem with languages like PHP. There is *NO* structure to them, no type strictness, no standard practices. ASP (original) suffered from the same problems.

    JSP and ASP.NET have a lot better structure to them, and standard practices, not to mention tools that follow them.
  • Re:uhh ohh (Score:3, Insightful)

    by msaver ( 907214 ) on Tuesday September 13, 2005 @06:42PM (#13551848)
    Yeah -- but it uses OOP! *cutting edge technology* It sound awesome... orienting objects and whatnot.

    But my favorite part is the bit about "test driven development." Of course it's test-driven... that's how programming generally works.

    And Zonk... please tell me what the program is before telling me to "Clickey here! Download Now!". I'm not really looking for online photo management software at the moment, thank you.
  • by yelvington ( 8169 ) on Tuesday September 13, 2005 @06:47PM (#13551880) Homepage
    Gallery2 is free software developed with the "release early, release often" philosophy, so of course it's been available for some time. But it's also been a moving target in terms of filesystem layout and API. Emerging from beta is NOT a small deal. It means that developers of add-ons can proceed with some confidence that the entire system won't turn to smoke with the next dot release.

    I've been using it in a high-volume production environment since April Fool's Day. We plan on dumping it next week and moving to our own code. It's a very nice system (and a tremendous leap forward from Gallery 1), but it's wedded to a folder organizational metaphor, and we need a richer taxonomy to support potentially tens of thousands of users.
  • by ilkahn ( 6642 ) on Tuesday September 13, 2005 @08:23PM (#13552720) Homepage
    I actually agree completely regarding caching... The proliferation of "databases that seem quick enough" has led to an entire generation of programmers that think that it's perfectly reasonable to do a handful of database queries per page load.

    However, in my particular case, I have different needs. My company writes "shop floor intelligence" systems in which PHP is my *middleware* language. We use Smarty/PHP to generate XML/[other streams] from proprietary interfaces to PLCs or embedded shop floor systems. This XML has to have whatever the state of the machine is *at that moment.* These systems are not neccesserally "Hard real time", but they need to be very performant. We feed the PHP systems XML configurations which tell the middleware which series of registers or memory locations on the "embedded controllers" to look for state, and how to package that state as a message to the decision support systems.

    The maintenance engineers / technicians on these machines may go in during a plantwide shutdown and code a series of changes to the flow control logic of a foamer (for example) in ladder logic (or even by wiring relays) and our code has to be able to take the new internal state of these machines, and turn it into a consumable format quickly. Often times, I might add, we're not notified until 4:45 on a Monday after a plant shutdown when the 1st shift build engineers realize that their decision dashboard is giving data that doesn't map the expected state of the machine. Utilizing PHP/Smarty we are able to very quickly either change the XML / whatever template, as well as the actual feed information, and in next to no time, get the line back up and running.

    One of the mantras which I used to abhor was: "there can be no unplanned system downtime on a production line" because it implied to me that everyone was lazy and simply didn't want to do their job. What it turns out happens, is that when you are retooling an entire line during a 5 day plant shutdown, sometimes little pieces don't get communicated, and one of the most prized assets of a system is the ability to dynamically reconfigure it to the changes on the line, while minimizing the downtime on the line.

    As silly as this sounds, even the 5 minutes neccessary in packing a WAR file, redeploying it, and having the system bootstrap itself (after having compiled it and tested it on your system) are 5 minutes that the line doesn't want to lose.

    So, in closing, I 100% agree with a great deal of your sentiment. PHP is most certainly not a splendid language for a great many applications, but I think it's a narrow point of view to believe that it's useful simply for quick one-offs... all the world is not a CRUD web app :)

    (I forgot to add that we use DBs simply as a place to store data until the next time that we request it from the shop floor system... so for our needs, PEAR::DB is a reasonable tool.)
  • by man_of_mr_e ( 217855 ) on Tuesday September 13, 2005 @08:35PM (#13552828)
    While I agree with you that you CAN create good and maintainable and scalable code in PHP (as well as just about any language), the question is, does the language, common toolsets, and best practices promote good use of the language. Also, does the language allow simple and easily caught mistakes?

    The lack of any real type safety in PHP makes it difficult to track down simple typos (for example, misspelling a variable name). I don't mean syntax errors, since those are easily caught, but typo's that are not syntax errors.

    The lack of any real scope in functions and the ability to RAII also make it difficult. Debugging is also pretty difficult, even if you use commercial tools (ie Zend).
  • Re:+5 Insightful! (Score:5, Insightful)

    by Q2Serpent ( 216415 ) on Tuesday September 13, 2005 @10:06PM (#13553395)
    Haha, have "+5 insightful" twice in a post and get modded insightful!

    Mods: The parent post was *informative*. See how it works? Not insightful, but informative.
  • by killjoe ( 766577 ) on Wednesday September 14, 2005 @03:01AM (#13554854)
    "In terms of how large can a PHP application scale? Is surviving a slashdotting a sufficient answer?"

    No, we have seem java sites and .NET sited keel over on slashdotting too.

    " it died because of a lack of connections since it was making lots of wasted database calls that aren't necessary."

    I don't think that's right. In PHP you get to set an absolute limit and once that limit is reached then it stops. You can not presume the database pooling was misconfigured, it probably worked just like the author intended.

    "The programmer productivity hit of using Java in a real IDE for something substantial isn't as big as you might think. "

    Having done both I don't think I KNOW. I was at least two to three times more productive with PHP.

    'Java just seems to have more of these that can scale well than PHP."

    That's just your opinion, you have no read data to back that up. Oh also since PHP can call java classes all of those are available to PHP as well.

    "Java just seems to have more of these that can scale well than PHP."

    This is just misinformation. There is the zend IDE as well as few other PHP IDEs which let you debug your code line by line. Having said that I programmed for four years in PHP using Jedit and never once wished I had a better IDE. I built and maintained a very busy commerce site which made millions of dollars per month and worked like a charm on single low end dell server. I won't say it was as busy as ebay or anything but it was able to take two to 20 hits per second with only 1 or 2 percent CPU utilization and ran comfortably on 512 megs of ram (freebsd).

    "Of course, you should always imagine the stuff you build will become as big as ebay or amazon! :)"

    Perfect is the enemy of good. That's premature optimization.

"Ninety percent of baseball is half mental." -- Yogi Berra

Working...