Skip to main content

Home/ PHP Programming/ Contents contributed and discussions participated by Sarah HL

Contents contributed and discussions participated by Sarah HL

Sarah HL

Blog | Calling the community | symfony | Web PHP Framework - 0 views

  • I want to present to you the role I see myself playing in the symfony community
  • I would like to form a group of people who are interested in helping out.
  • I have created a new mailinglist just for this purpose: symfony-community.
  • ...1 more annotation...
  • So please feel free to join the list.
Sarah HL

PHP Depends On You | BrandonSavage.net - 0 views

  • elf in the community
  • PHP is one of the world’s largest open source projects.
  • people who write open source software generally aren’t paid to do it.
  • ...6 more annotations...
  • the core of PHP is contributed by people who are solely interested in making PHP better for their professional endeavors
  • it can be as simple as contributing to the documentation, or submitting a bug report
  • The community exists because people choose to contribute.
  • file a bug report or write some documentation today.
  • Remember: PHP depends on people just like you.
  • My Boss told me to prepare a paper how we interact good with open source project and how we can generate a win win situation on both sides by submitting (correct) bugreports.
Sarah HL

10 Principles of the PHP Masters | Internet Resources | Cpworld2000.com - 0 views

  • 1. Use PHP Only When You Need it – Rasmus Lerdorf
  • PHP was created out of a need to solve web development problems
  • Lerdorf is the first to admit that PHP is really just a tool in your toolbox, and that even PHP has limitations.
  • ...9 more annotations...
  • 2. Use Many Tables With PHP and MYSQL for Scalability – Matt Mullenweg
  • 3. Never, ever trust your users – Dave Child
  • 4. Invest in PHP Caching – Ben Balbo
  • 5. Speed up PHP Development with an IDE, Templates and Snippets – Chad Kieffer
  • 6. Make Better Use of PHP’s Filter Functions – Joey Sochacki
  • 7. Use a PHP Framework – Josh Sharp
  • 8. Don’t use a PHP Framework – Rasmus Lerdorf
  • 9. Use Batch Processing – Jack D. Herrington
  • 10. Turn on Error Reporting Immediately – David Cummings
Sarah HL

PHP Worst Practices at blog.phpdeveloper.org - 0 views

  • Beware the Outsiders
  • Sure, you could cobble together your own library to add that feature and yes, it might integrate excellently with your code, but what does that gain you? One of the points of Open Source development is to share your knowledge with the rest of the community.
  • Unplanification
  • ...8 more annotations...
  • This would be the combined voices of everyone in your past that tried to teach you the mantra: “Plan First, Code Later”.
  • The Documentation Wasteland
  • If you’re writing your code without any sort of documentation, you’re dooming you and possibly future maintainers of the code into many a pointless search to try to figure out why method a() returns two completely different value types depending on which parameters it’s given.
  • ets you know the “why” instead of just the “how” the code gives you
  • You’d be surprised how often you’ll find yourself referring to it once it’s reliable.
  • Free Your Mind
  • You, as a developer, know that there’s always more than one way to solve a problem.
  • Just like ‘anti patterns’, who are an important read as well, ‘worst practices’ help developers avoid mistakes.
Sarah HL

Easy Unit Testing - Web Mozarts - 0 views

  • Contrary to PHPUnit, lime tests are written in a procedural way.
  • Each test case is, by convention, introduced by a comment that explains the tests purpose.
  • requires you to initiate your fixture manually
  • ...7 more annotations...
  • sfLimeExtraPlugin introduces the new class lime_test_simple
  • @Test A test case @Before Executed before each test case @After Executed after each test case @BeforeAll Executed once before all test cases @AfterAll Executed once after all test cases
  • Currently the plugin is available in version 0.2.0alpha.
  • You can create stubs for interfaces, classes or abstract classes. You can even create stubs for non-existing classes, which is very convenient if you develop test-driven.
  • I personally think that tests can be written in a much more concise and readable way with sfLimeExtraPlugin.
  • Mock and Stub Objects
  • the code is not being considered 100% stable
Sarah HL

Nexen.net : portail PHP et MySQL - De retour de PHP Québec 2008 - 0 views

  • Il m'a signalé deux projets de BDD, qui permettent de faire le pont entre les demandes de tests fonctionnels, émis par des clients non-techniques, et les tests unitaires. Il s'agit de greenpepper (http://www.greenpeppersoftware.com/en/, Open Source et commercial ) et easyb (http://www.easyb.org/, logiciel libre).
  • Ces deux logiciels permettent de capturer les tests fonctionnels : on note les demandes de tests, puis on les convertis en un pseudo-langage. Une fois celui-ci écrit, le logiciel produit des tests fonctionnels à faire passer, et à exécuter automatiquement. Le concept est une couche qui ressemble aux tests unitaires, mais prend le problème à partir des clients, et non plus à partir des besoins de tests des couches base. Le concept est prometteur, notamment en conceptualisant les tests et les demandes clients, même si elles sont peut claires. Je me promets d'y consacrer un peu de temps.
Sarah HL

Rasmus Lerdorf: PHP Frameworks? Think Again. - 0 views

  • Rasmus Lerdorf is the creator of PHP and still continues as a core developer to the PHP project.
  • heavy Twitter mashup that he created. This does a lot of database calls and a lot of behind the scenes work. By hand-tuning it he was able to get on the order of 280 req/sec.
  • So, are there any frameworks that don’t suck? Rasmus did mention that he liked CodeIgniter because it is faster, lighter and the least like a framework.
  • ...2 more annotations...
  • "Any script based language is simply not fast enough".
  • It all starts with “I don’t need a framework.” 2. Then you create 7 classes. 3. Now you have a small library of classes. 4. Then you create an application that uses your library. 5. It works and it’s fast, hurray! 6. Then someone asks you to extend the functionality of your application. 7. And they keep asking for more, and more, and more and more… 8. Now you have 43 classes. 9. You’ve learn so much in the last 2 years. Design patterns, security, performance, testing… 10. What once was a small library is now a big, ugly, un-tested, un-documented, scary framework. 11. Then you change jobs. 12. And you create another 7 classes… This has been happening for the last 30 years.
Sarah HL

ongoing · Test-Driven Heresy - 0 views

  • As a profession, we do a lot more software maintenance than we do greenfield development.
  • the deep-TDD rules: ¶ Never write code until you have a failing test. Never write any more code than is necessary to un-fail the test.
  • we do way more maintenance than initial development. And in my experience, the first-cut release of any nontrivial software is pretty well crap.
  • ...38 more annotations...
  • But to do that well, you absolutely must have enough test coverage that you just aren’t afraid to rip your code’s guts out
  • I always end up sketching in a few classes and then tearing them up and re-sketching, and after a few iterations I’m starting to have a feeling for X and Y.
  • I freely admit that this is not really truly TDD
  • once you’re into maintenance mode, there are really no excuses. Because you really know what all your X’s and Y’s are
  • Writing the tests points out all the mistakes you might make in signatures, prerequisites, etc. If the tests are too hard to make then you know that your API will be too hard to use, you're doing it completely wrong, and may as well pause for a rethink.
  • While the approach you advocate makes sense, it does require professionalism, not just from the developer but from management too.
  • the person left to maintain the code isn't the person who wrote it, leaving the maintainer with an unholy mess to untangle. Getting unit tests into such code is a monumental task.
  • he failure to address how unit tests can be introduced to an existing non unit-test codebase. (i.e. go from non-TDD to TDD)
  • I feel the TDD community only wants to focus on greenfield projects and has ignored maintenance/legacy issues. Which is strange when as you say code spends most of it's time in maintenance
  • The thing is that as long as the project is small you really don't see the benefits of TDD. I've done a couple of small projects and never had to go back to them ever again
  • Never use mocks unless you are mocking an interface that will almost never change
  • You are writing the client code (in the form of a test) so you are thinking how the worker code will be used. What is its public interface and what do you want it to do when it's called
  • From: Tathagata Chakraborty (Jun 24 2009, at 07:31)TDD is useful in another situation - in a commercial setting and when detailed specification documents have already been created by say a technical expert/architect. In this case you don't have to do a lot of designing while coding, so you can start off with the test cases.
  • writing the tests *first* is that it helps keep your code focused on exactly what it's meant to do, and no more
  • When work on production code begins, most of the code should fall into the categories of things that are not to be tested.
  • In theory, TDD is a great idea. The problem with TDD can be expressed in one word: money.
  • One approach to the unknown X and Y problem that I've been using recently has been to pretend that class X has been written already, and then write code that uses this pretend X object/API. I usually write this directly in the file that will become my unit test. Since X doesn't exist, I'm allowed to call whatever methods I want and pretend it all works. Once I'm satisfied with how it all looks, I cut and paste everything into a bunch of failing tests.
  • I get really bored adding tests to code that already runs
  • the seductive TDD trap
  • religious zealots
  • There is nothing wrong with building tests after you have built your product.
  • that goes a long way towards taking software development from a form of artisanal craftsmanship to a real engineering profession.
  • using tests to drive development cripples innovation, dramatically slows development
  • It always seem to me to be a codified form of reverse engineering, or at least a way to force the programmers into looking at their code from two separate angles at the same time.
  • If you're just adding tests at the end, then it's normal unit-testing, isn't it?
  • I do realize that this type of exercise might help younger coders in getting better structure, they do often rush in too quickly and focus more on the instructions than the abstractions.
  • TDD is test-driven *design*
  • He said he didn't write tests in cases where it would have taken him several hours to get a working test for a small piece of code.
  • In some applications, objects are self-contained, activities are sequential, and algorithms are tricky
  • I've seen cases where people have wrecked the architecture of systems in the name of making them testable... But have never written the tests.
  • Yes, it's possible to make peace with testability, and in the best situation, testability can improve the architecture of a program, but it can also lead people away from highly reliable and maintainable KISS approaches.
  • Like any infrastructure, it is always beneficial to provide unit testing. The most benefit is derived from installing it as early on in the project as possible.
  • The value of an untested feature, to a client, is ... zero. So, it doesn't matter how many of these you have rattled off in the past week, your net throughput is effectively... zero."
  • You can see in this thread the word "professionalism" (substitute "morality" with little gain/loss of substance) and even "sin" (used in jest, but not really!)
  • if I delay writing unit tests until after all the units are working together then because the system "already works" my subconscious enthusiasm for writing unit tests falls markedly, and so their quality and coverage fall
  • Experience teaches that if I generate that output by hand (1) it takes *much* longer (2) I almost always get it wrong. So I often write the code, get its output, carefully check it (really...) and then use it as the correct result.
  • My main objections to TDD are: 1) it promotes micro-design over macro-design and 2) it's hard to apply in practice (i.e. for any code that is not a bowling card calculator or a stack).
  • the tests are just a persistent artifact of the exploratory coding I've already done.
Sarah HL

Les tests unitaires | Crossbow Labs - 0 views

  • Par rapport aux tests manuels évoqués précédemment, la granularité des tests unitaires est extrêmement fine
  • tests de recette, qui valident chaque fonctionnalité de l'application dans son ensemble et permettent ainsi de mesurer l'avancement du projet
  • La mise en place du contexte de test et la vérification du résultat sont le plus souvent très simples, et le coût d'écriture des tests est très réduit. Ils peuvent être exécutés très tôt dans le développement d'une tâche (les tests de recette ne peuvent être lancés que lorsque la fonctionnalité complète est implémentée). Ils peuvent être lancés à chaque compilation de la classe (les tests de recette ne peuvent être lancés que lorsque toute l'application est compilée).
  • ...2 more annotations...
  • Les tests unitaires apportent donc un feedback beaucoup plus rapide que les tests de recette, pour un coût nettement plus réduit.
  • Bien sûr, l'adoption de cette pratique n'est ni gratuite ni immédiate. Il faut d'abord apprendre à utiliser un framework de tests, et surtout ensuite apprendre à organiser son code pour le rendre testable unitairement.
  •  
    Très didactique pour expliquer le rôle des tests unitaires dans une application
‹ Previous 21 - 40 of 55 Next ›
Showing 20 items per page