Agile Software Development
576252
Agile as a way of life Book review Alistair Cockburn is one of the most prominent and influential of the Agile development gurus. As well as being one of the original authors of the Agile Manifesto, he is also the developer of the Crystal family of agile methodologies and a pivotal figure in the evolution of the Use Case. He is also an articulate and passionate advocate for Agile as a philosophy over and above a set of prescriptive development practices.â¦
91596
Padraic Brady has posted a manifesto of sorts about the work that he's been doing on his PHPSpec library and trying to work it into the approval process for the Zend Framework.   I'll be attempting to pound the Zend Framework into submission so I can apply Behaviour-Driven Development (BDD) using PHPSpec when I write a Controller. Why? Because I feel like it, and it gives me an excuse to promote one possible incarnation of PHPMock and the PHPSpec Zend Framework extension. See? Perfectly reasonable selfishness!   He hopes to move it past the typical test-driven development process that PHPUnit offers and "kick your ass into high-TDD gear" without having to have worked much with it before then (the key is simplicity).   He includes some code examples (how it should flow) and describes some of the challenges that he's coming across so far, specifically with the way that the Zend Framework works with the Controllers and what he wants to accomplish.
581448
The fragmented  software business is growing up.
769015
Felix Geisendorfer shares, in this new post to the ThinkingPHP blog, some of his experiences with writing his code using test driven development.   So far I've had tons of fun trying to create php code using test driven development. It caused my code to become a lot more structured/consistent because writing the tests shows you interfaces problems right away. This is because the process of writing the test forces you to think a lot more about *how* you want to use some class / piece of code vs. your traditional "how can I get task x done"-thinking.   He also points out another benefit - it makes refactoring the code even easier (so there's more of a likelyhood that you'll use it again and again). He talks specifics about a library that he's been working on and the processes he's gone through to make things work with the testing versus his normal development cycle.
197740
InfoWorld - IBM is working on a project to enable agile development of Web 2.0 applications, but the effort has drawn criticism because it is not an open source endeavor.
613469
Macromedia promises to speed development of Internet applications with a new tool for its Flex platform. With Flex, enterprises can add interfaces to strategic applications, including visual
616165
The Zend Developer Zone has another new tutorial from Padraic Brady talking about testing your applications (i.e. unit tests). In this new article, he expands on his previous one and dives a bit deeper into the behaviour-driven development process.   In this article, I introduce a TDD related practice called Behaviour-Driven Development which has been gathering attention for over a year and gaining converts (like me!).   He briefly covers what BDD is and how it can be used to solidify code against issues that might come up down the road (and how it compares to test-driven development). Some sample code/tests are included to give you a better idea of how it all fits together - a set of scenarios for any given "story". True to the title, Padraic writes his tests around the construction of a Klingon Bird of Prey ship.
610817
Up against competition for markets and for hiring staff, Indian software outsourcers are focusing on building reusable software that automates specific business processes. These software components can in turn be used across a number of clients, saving costs, and time.
490298
Nobody writes software entirely in-house anymore. Almost everyone relies upon libraries and frameworks written by someone else. This allows programmers to concentrate on the actual logic of the application and shortens the development time. By Tim Boudreau, Jaroslav (Yarda) Tulach and Geertjan Wielenga. 0611
701641
Havard Eide is asking for your help in a new entry to his blog. He's looking for ways to speed up his development in Eclipse, specifically in the debugging.   There is one thing I do need over everything else: remote debugging. Having used Zend Studio for 3 years now it hasn't been the best editor ( I'd rather prefer PHPEclipse/PDT ) but the remote debugging facility is superb [...] Eclipse it has all the tools you need to develop with but the debugging is slow, way too slow!   He's looking for anyone out there that might be able to help him speed up the debugging on his Leopard-installed version of Eclipse ("So slow actually that I had to install Zend Studio 5.5 for whenever I have to debug a file...")
683421
(InfoWorld) - The Eclipse Foundation has established itself as a premier open source software tools project. The organization has gained support from vendors ranging from IBM (which helped found Eclipse in 2001) to Borland Software, BEA Systems, and seemingly every other major player in the software industry except Sun Microsystems and Microsoft. The EclipseWorld 2006 show in Cambridge, Mass. last week afforded those using Eclipse technologies a chance to get updated on the latest developments at Eclipse. InfoWorld Editor-at-Large Paul Krill attended and interviewed Mike Milinkovich, Eclipse executive director, about the state of Eclipse and subjects ranging from dynamic languages to rivalries with Sun and Microsoft. Â  InfoWorld: Where is Eclipse headed and what new technologies are on the horizon? Mike Milinkovich: Thatâs a open-ended question. When I look at the broad initiatives that are going on within Eclipse, a couple of things come to mind. First is continued growth and adoption around our Rich Client Platform, and thatâs something that we expect to see continued emphasis on. Weâre seeing more projects joining Eclipse around extending RCP in various areas, so thatâs good news for RCP. And as we talked about in our press release earlier this week, weâre very pleasantly surprised about the growing adoption and awareness of RCP. A couple of other things in just sort of broad terms [include] more support for multiple languages. Eclipse has always been focused on being a platform for the development of language environments, and weâre seeing some really interesting new developments, some of them within Eclipse and some of them in commercial products. In the commercial products space, Adobe is in the process of building and releasing its Flex Builder 2.0, which is an Eclipse-based development environment for ActionScript, which is their language for the Flex servers. And within Eclipse, in the next quarter weâre planning on having the first release from the PHP IDE project, which we think is really exciting. PHP [Hypertext Preprocessor] is a really important language both for enterprise development but [also for] Web development in general, and having Eclipse tooling available for PHP is something that weâre pretty excited about. IW: That leads right into my next question. Do you see more support for dynamic programming languages? You have PHP, you have the AJAX projects. Do you see more for some of the other languages that are out there? Ruby, Perl, Python? MM: Well, yes. Within the Eclipse ecosystem you can find Eclipse plug-ins and tooling for virtually every single dynamic language you can think of. Thereâs Eclipse tools for Ruby, RadRails is a project... These are not projects at Eclipse, but theyâre open source projects which are based on Eclipseâ¦ RadRails is an open source project based on Eclipse for building an IDE for Rails, which is the Ruby framework. And you have PyDev for Python, which is a fairly popular. This is another example of a plug-in, which is available from an open source project outside of Eclipse but is based on Eclipseâ¦. For virtually every dynamic language you can imagine, you can find Eclipse plug-ins to help enable development for it. And that really resonates back with what we were talking about previously about Eclipse being a platform for building development tools. Thatâs really the fundamental mission of the Eclipse platform. So within Eclipse, as I mentioned, we have the PHP tools. We also have the AJAX Toolkit Framework, and so this provides sort of added compiled debug for JavaScripts running inside the browser, so it provides an AJAX developer a very nice development environment for use with Firefox in building AJAX applications. And thereâs quite a few different AJAX frameworks out there, and it supports Dojo, Open-Rico and Zimbra currently, and I think theyâre definitely planning on adding more in the futureâ¦ And again, lastly I would mention the Rich AJAX Platform, which is a new project just getting started at Eclipse for providing an AJAX runtime thatâs based on the Eclipse component model for developers who want to use that style of development for building AJAX applications. IW: Which leads to my next question: Do you think thereâs kind of an overlap in some Eclipse projects? You have the Eclipse Rich AJAX Platform, thereâs also an AJAX Toolkit Framework. I know for the time being you have data tools in the Web tools Platform Project, you also have a separate Data Tools Platform Project. Do you think thereâs a lot of overlap going on or is it just based on which vendor proposes which project without too much thought given to consolidation? MW: Itâs a little bit of both. So within Eclipse as an open source community, we are willing to tolerate some overlap; let the projects work things out over time. And so far thatâs actually worked out pretty successfully. In the particular examples that you just raised, I donât see overlap. The AJAX Toolkit Framework and the Rich AJAX Platform, they donât overlap. Theyâre two very different things. The first one, ATF, is focused on the needs of developers looking for tools for building AJAX applications. And the second one, RAP, is a runtime environment, a runtime framework, for building AJAX applications. And on the other example, with Web tools and data tools projects, initially there was some overlap, but thatâs actually probably almost a poster child for project cooperation at Eclipse, because as data tools came to be and started to work, the Web tools guys moved their data connection layer and adopted the technology coming from data tools. IW: Is Eclipse de-emphasizing Java and refocusing on some of the other languages that we talked about? Is it focusing on some of the scripting languages as well as on .Net while de-emphasizing Java? MM: I wouldnât say weâre de-emphasizing Java. As Eclipse is growing and thereâs more projects joining the fold, there are more resources to take on more languages and more platforms. Now, almost every Eclipse project writes its code in Java. Weâre clearly heavy users of Java. But in terms of Java being the only platform or language that we support within Eclipse, thatâs never been the vision for Eclipse. Itâs always been about supporting as many languages and as many platforms as we can find people willing to work on projects for. IW: There's been some talk in the industry that Java is kind of yesterdayâs technology. Sun wouldnât like to hear that, but do you see it that way at all? MM: I kind of frankly take that stuff with a grain of salt. You know, thereâs this constant hype machine within the high-tech industry that the next shiny new thing is going to be the grand vision thatâs going to do everything that has never been done before. What my observation is, is that Java is now getting to the point where itâs clearly mature enough and stable enough to meet the needs of mainstream enterprise development and I think thatâs a good thing. Maturity isnât something to be ashamed of. Itâs something that the people that are talking about the shiny new things should treat with respect. IW: I guess thereâs kind of a trend toward putting the virtual machine on other languages. MM: Yes, and I think thatâs a great idea. Well, I think what youâre saying is thereâs a trend toward opening up the JVMs (Java Virtual Machines) to make it easier to support other languages. And I think thatâs a great idea. IW: Why? MM: Because the programmers want more than one language, but thereâs so much work and talent thatâs been invested in the runtime infrastructure thatâs part of the Java platform, that reinventing all of that technology for another language doesnât make any sense. You want to have a particular problem, which can be expressed more easily in a language other than Java, thatâs great. But you donât want to throw the baby out with the bath water. I mean you still want to be able to use this highly-tuned and mature runtime platform from companies like BEA and IBM and JBoss and Oracle that have spent years perfecting this middleware infrastructure for Web applications. You donât want to throw that out just because you want [to] program in another language. IW: How much money would you estimate is being generated by Eclipse-based software or is it still the main attraction to Eclipse is itâs all free? MM: I wish we actually had good numbers on trying to estimate the size of the Eclipse ecosystem. Iâm quite confident that itâs in the billion-dollar range and probably more, but we just donât have the hard numbers in terms of sizing that market. Unfortunately we havenât been able to get an analyst to actually spend the time to quantify those numbers. But what you said about the attraction to Eclipse being free, the economics of the Eclipse model is a little bit different than that, because the Eclipse community as a whole is almost uniquely focused on enabling a commercially profitable ecosystem or market around the free platform. So yes, we do provide open source tools and frameworks from Eclipse and those are provided for free. But we definitely are motivated across the Eclipse ecosystem to see people and companies make money from the Eclipse platform. IW: Whatâs going on with Eclipse as far as application lifecycle management? Some of thatâs on the agenda here, but could you maybe give a synopsis of whatâs going on there? MM: Sure. Thereâs several different projects going on at Eclipse in the area. Serena is leading a project called ALF, Application Lifecycle Framework, and Compuware is leading a project called Corona. And these are both projects that are in fairly early days, theyâre both in incubation. But application lifecycle management is an area where we see definite growth at Eclipse, but itâs going to take some time for these projects to mature and really hit their stride. IW: Whatâs the difference between Corona and ALF? MM: ALF is really focused on providing the technology for choreographing tools across multiple developers, and Corona is more focused on making it easier to integrate tools within a single workbench environment or within a single desktop environment. [There are subtle differences], but there actually are important differences for developers. IW: Like what? MM: You ask this every time we talk. [I am] just trying to think of a way to make it really simple to explain. I mean think if it as ALF is focused on choreographing tool integration across a whole team. Corona is more focused on making it easier for one developer in his particular environment to do his job. IW: This next question is about something you mentioned -- I guess it must have been last year -- at a conference in San Francisco. You talked about how you donât really need salespeople anymore. And I just met with a company (Genuitec) thatâs basing its technology on Eclipse and they donât have any salespeople. Do you see that as a trend where software companies, particularly open source software companies, donât have salespeople because they donât see the need? Do you see anything happening there? MM: I think that over time things are changing. What youâre really talking about is what is the channel by which people acquire software? Thereâs multiple ways you can acquire software. You can download it and use it, whether itâs for free or for purchase. You can buy it packaged or you can deal with a direct sales force and deal with people. Historically, enterprise software has been sold through the direct sales force channel, and I do believe over time, weâre starting to see success in open source software products in areas that have been traditionally the realm of the direct sales force. Iâm thinking of things like SugarCRM and Compiere and open source products like this. And those environments or those products have very, very low cost of sales, so as customers get more used to that, to being successful with that kind of software acquisition, I think that over time, yes, thereâs going to be fewer and fewer software salesmen. IW: Hereâs the standard question that I kind of usually ask last. Is anything going on as far as Sun joining Eclipse or merging NetBeans and Eclipse? MM: Nope, absolutely not. IW: No talks in the last year, two years? MM: I bump into (Sun executive) Simon Phipps at conferences and have a drink with him once in a whileâ¦. IW: There was one Java project that I guess Sun was working on with Eclipse. MM: There was a Sun committer working on -- it was actually on the base Eclipse platform to enable it for Solaris x86, as I recall correctly. So it was getting Eclipse running on one of their operating system platforms. IW: But thereâs no further movement since then? MW: No. And [in the] conversations Iâve had with Sun, theyâve made it pretty clear that theyâre not really interested in doing anything other than continuing to push their NetBeans strategy. IW: What do you think of their being two kind of rival camps? Is it good for competition? MM: Well, weâre certainly not shy of competition, and frankly weâre winning. IW: They seem to say differently. MM: Oh, good for them. I got the numbers, they donât. IW: Who do you see as your main rival, NetBeans or Windows .Net? MM: We clearly and have always felt that Eclipse is about enabling competition with Microsoft. IW: How have you fared there? MM: Actually, we started five years ago and I would say that starting from zero, the growth of Eclipse over the past five years has been absolutely phenomenal. Itâs been wonderful to see the development community embrace Eclipse the way it has over the last five years. IW: Is there anything else you wanted to mention? MM: Actually I just want to probably just close with reinforcing about RCP. To date, Eclipse has always been very much focused on tooling and being a tools platform, but what weâre I think really seeing now is RCP, Rich Client Platform, becoming a very important runtime infrastructure for application developers and ISVs who want to build multi-platform applications running on the desktop. And I think thatâs a very important niche for Eclipse and something that we expect to see continuing to grow.SEE ALSO:Eclipse chief talks up projects, awaits Sun and Microsoft
752202
Many useful programs take arguments and configuration options. It's easy to add one or two, but as your program grows, the difficulty of allowing configuration concisely and intelligently also grows. Jon Allen demonstrates how to unify argument and configuration processing in a way that lets you write good code and your users get on with their work.
17852
InfoWorld - Microsoft has built a tool to track the daily progress of Scrum-based software development projects.
513786
Nearly eclipsed by Eclipse, Microsoft opens tool platform to all Pop along to Sourceforge and youâll find many different programmersâ editors, many of which have been abandoned long before theyâre ready for use. Thereâs not really any point developing an editor, when toolkits like Scite exist. The same is true of IDEs, when thereâs the extensible Eclipse IDE to use. As a result itâs been gaining more and more market- and mindshare with development tools vendors around the world.â¦
113550
Matt Stephens gets to grip with people issues and team building  âThat it is people who write software is terribly obvious . . . and ignored.â So quotes Alistair Cockburn, himself quoting Gerald Weinberg, in his book Agile Software Development - catch our review of the Second Edition here. Itâs easy to see the people in your project as mere commodities â not helped by MS Projectâs insistence on labelling them as âresourcesâ â hot-swappable units that may be switched in and out of different roles or different projects, with no loss in productivity, creativity or morale.â¦
277396
Lukas Smith has posted his review of a book from Packt Publishing - "PHP Web 2.0 Mashup Projects: Practical PHP Mashups with Google Maps, Flickr, Amazon, YouTube, MSN Search, Yahoo!"   Duane from Pakt asked me if I would be interested in reviewing a few books for them in my blog. I picked "Mashup Projects" from the list of just released books, since I am interesting in the topic and I am actually going to give a presentation at the internal "PHP Day" we are doing at Optaros in November.   He points out the good (good writing style, well-chosen examples) and the bad (a log list of errors and oversights in the code). He also talks about the contents of the book - the different examples and the final more major project. Overall though, he sees it as a good book, one that would be a good introduction to mashups for PHP developers (if you look past the formatting issues).
372831
Many organizations allocate large resources to implement and deploy packaged ERP, CRM and SCM applications. Now these organizations need to move away from operational efficiency gains achieved and into leveraging their data for performance management and business intelligence.