|
|
Link blogLinks to pages that we found interesting or worthy of a look.Best Practices for Speeding Up Your Web SiteFriday, 15th April 2011 - 10:26am by Richard Bennett http://developer.yahoo.com/performance/rules.html "The [Yahoo!] Exceptional Performance team has identified a number of best practices for making web pages fast. The list includes 35 best practices divided into 7 categories." How and why to create Value Stream Maps for software engineering projectsSunday, 6th March 2011 - 1:47pm by Richard Bennett Value Stream Maps help us bring about organizational improvement, progress in our processes and methods, and most importantly, better software. Value Stream Maps can help both identify and stop waste in an organization. By leveraging the lessons explained in this article, your organization can find greater efficiencies and deliver higher-quality products to your customers. Atul Gawande on why heroes use checklists « Jon UdellMonday, 22nd March 2010 - 4:22pm by Richard Bennett http://blog.jonudell.net/2010/03/04/atul-gawande-on-why-heroes-use-checklists/ "The biggest roadblock is pushback from highly-trained experts who are offended by the idea. After 8 years of medical school, and in a regime that already demands vast amounts of paperwork, why should a doctor have to check off basic items on a list? Because we are fallible in the face of complexity, Gawande says, and because checklists work. Although he led research in this area he was skeptical about adopting checklists in his own operating rooms. But when he did, he made two critical discoveries. First, well-made checklists are easy to use. Second, they almost always caught errors." InfoQ: Kanban Applied to Software Development: from Agile to LeanMonday, 22nd March 2010 - 4:13pm by Richard Bennett http://www.infoq.com/articles/hiranabe-lean-agile-kanban "Here, a Kanban system is used in a traditional waterfall development model but with a flow. This project has separate and serial processes which they call "design", "development", "validation" etc., and the Kanban cards move between processes. Each card represents a requirement for change or addition to the system and is a handoff to the downstream process. Note that this is not a classic waterfall process, where all the requirements are "designed" at one time, "developed", and "validated" at another time, which would cause all the cards to move in a group. Instead, the cards move one by one, like the one-piece-flow of manufacturing. What's happening here is a stable "sustaining" phase in a product‘s lifecycle, managed in a waterfall state transition model with a flow. Here, you can clearly see the "flow of work" concept instead, different from the "iteration" concept of Agile. It looks more like Kanban in factories than Agile Kanban does and it can be a pull system by making a rule to allow only the downstream process to move the cards 8. I call this "Sustaining Kanban", and find it similar to David Anderson's "Kanban System for Sustaining Engineering", which I discuss in the later section." Kanban for Software Development « Thoughts on Collaborative PlanningMonday, 22nd March 2010 - 4:10pm by Richard Bennett http://kswenson.wordpress.com/2009/11/22/kanban-for-software-development/ "You break the work process in a series different activities (phases). You then set a limit of how many job units you will allow at any phase. A simple rule of thumb: you can have a few more work units as you have people doing that job, so that each has one thing to work on at a time, and a small cache of completed jobs. The people in a given phase will do their work on a job unit to completion, so that it is ready for the next phase of work. "This is where the somewhat brilliant key idea behind KSDM comes to play. The completed job does NOT free the person for working on another job, until that job is pulled into the following phase and work is started there. If work is piling up at a particular phase, those people are NOT ALLOWED to work ahead. As Taiichi Ohno makes so clear, that working ahead is waste. Instead of working ahead, they can look around to see what is wrong." Goals Gone Wild: The Systematic Side Effects of Over-Prescribing Goal Setting — HBS Working KnowledgeMonday, 22nd March 2010 - 3:49pm by Richard Bennett http://hbswk.hbs.edu/item/6114.html "Advocates of goal setting have had a substantial impact on research, management education, and management practice. In this article, we argue that the beneficial effects of goal setting have been overstated and that systematic harm caused by goal setting has been largely ignored. We identify specific side effects associated with goal setting, including a narrow focus that neglects non-goal areas, a rise in unethical behavior, distorted risk preferences, corrosion of organizational culture, and reduced intrinsic motivation." Code Monkeyism: What Developers Need to Know About AgileFriday, 26th February 2010 - 3:25am by Richard Bennett http://codemonkeyism.com/developers-agile/ "Agile is mostly driven driven by managment and consultants, seldom bottom up by developers. Some developes are suprised about agile and don’t know how to react. Lots of literature is written about agile, but very little with the developer in mind. What do you need to know about agile as a developer?" PHP: Past, Present and FutureWednesday, 20th January 2010 - 3:39pm by Richard Bennett http://blogs.gartner.com/mark_driver/2009/12/03/php-past-present-and-future/ "The PHP worldwide developer count will grow to as high as 5 million developers by 2013, up from 3 million in 2007 and 4 million in 2009." Show #49 Eric Ries, Lean Startup and product/market fit - The Startup Success PodcastThursday, 14th January 2010 - 6:23pm by Richard Bennett http://startuppodcast.wordpress.com/2009/12/28/show-49-eric-ries-lean-startup-and-productmarket-fit/ This week Bob talks with Eric Ries about his Lean Startup concept and taking an entirely different approach to building your startup. Is 1 success and 9 failures the only way to build software startups? Eric doesn’t think so, and he convinced me. This is an approach to building your startup that I predict will get a lot of attention in 2010. No Clean Feed - Stop Internet Censorship in AustraliaWednesday, 16th December 2009 - 1:30pm by Richard Bennett The Australian Federal Government is pushing forward with a plan to force Internet Service Providers [ISPs] to censor the Internet for all Australians. This plan will waste tens of millions of taxpayer dollars and will not make anyone safer. Aussie content filters "work" (not counting IM, P2P, FTP...)Wednesday, 16th December 2009 - 1:18pm by Richard Bennett "Results of a public trial have bolstered the Australian government's plan to implement both mandatory and optional ISP filtering in 2010. For the moment, though, violent video games are safe." In case you misinterpret the sarcasm, we do not agree with the study, the outcome or the actual proposal. Engage: Getting on with Government 2.0: Draft report for comment | Government 2.0 TaskforceTuesday, 8th December 2009 - 1:50pm by Richard Bennett http://gov2.net.au/blog/2009/12/07/draftreport/ "The Government 2.0 Taskforce is being formed against a backdrop of increased interest by governments worldwide in the potential uses of public sector information and online engagement." "The Taskforce will advise Government on structural barriers that prevent, and policies to promote, greater information disclosure, digital innovation and online engagement including the division of responsibilities for, and overall coordination of, these issues within government. "The Taskforce will work with the public, private, cultural and not for profit sectors to fund and develop seed projects that demonstrate the potential of proactive information disclosure and digital engagement for government." Naked objects -- Richard Pawson's ThesisWednesday, 18th November 2009 - 11:41pm by Richard Bennett http://www.nakedobjects.org/downloads/Pawson%20thesis.pdf The contribution of this research is the development of the ‘naked objects’ approach to designing business systems, and the demonstration that the adoption of this approach yields significant benefits both to the developed system and to the development process. Using the naked objects approach to designing a business system, the domain objects (such as Customer, Product and Order) are exposed explicitly, and automatically, to the user, such that all user actions consist of viewing objects, and invoking behaviours that are encapsulated in those objects. Object-oriented user interface - Wikipedia, the free encyclopediaWednesday, 18th November 2009 - 11:39pm by Richard Bennett http://en.wikipedia.org/wiki/Object-oriented_user_interface In an OOUI, the user interacts explicitly with objects that represent entities in the domain that the application is concerned with. Many vector drawing applications, for example, have an OOUI - the objects being lines, circles and canvases. The user may explicitly select an object, alter its properties (such as size or colour), or invoke other actions upon it (such as to move, copy, or re-align it). If a business application has any OOUI, the user may be selecting and/or invoking actions on objects representing entities in the business domain such as customers, products or orders. YUI Graded Browser SupportFriday, 16th October 2009 - 2:33am by Richard Bennett This chart lists browsers that receive A-grade support as defined by Graded Browser Support. All YUI projects, including YUI 2 and YUI 3, aim to provide full A-grade support.Big GPL copyright enforcement win in Paris Court of Appeals - Ars TechnicaFriday, 25th September 2009 - 11:17am by Richard Bennett An education organization in France has successfully sued a software vendor for failing to comply with the open source General Public License. The ruling is significant because it demonstrates that software recipients, and not just developers, can launch GPL enforcement cases in France. patterns & practices - Performance Testing GuidanceWednesday, 9th September 2009 - 3:35pm by Richard Bennett http://perftesting.codeplex.com/Wiki/View.aspx?title=How%20Tos These are patterns & practices produced performance testing How Tos. You get to see them here first, before their final destination on MSDN. These How Tos represent current recommended practices. Use the how tos to supplement product documentation. Using the How Tos below, you can drill deeper into performance testing related areas, such as user experience modeling. Evidence Based Scheduling - Joel on SoftwareMonday, 27th July 2009 - 3:20pm by Richard Bennett http://www.joelonsoftware.com/items/2007/10/26.html Software developers don’t really like to make schedules. Usually, they try to get away without one. “It’ll be done when it’s done!” they say, expecting that such a brave, funny zinger will reduce their boss to a fit of giggles, and in the ensuing joviality, the schedule will be forgotten. Lessons Learned: Five WhysWednesday, 15th July 2009 - 12:19am by Richard Bennett http://startuplessonslearned.blogspot.com/2008/11/five-whys.html So far, this isn't much different from the kind of analysis any competent operations team would conduct for a site outage. The next step is this: you have to commit to make a proportional investment in corrective action at every level of the analysis. SproutCore 1.0 UpdateMonday, 13th July 2009 - 12:59pm by Richard Bennett http://www.sproutcore.com/2009/03/24/sproutcore-10-update/ SproutCore 1.0 is a huge milestone. It’s the point where you tell developers your code is good enough for them to base their business on it. You only get to do it once, so its worthwhile to take the time to get things right. Sometimes that means doing more surgery than you would like. In the end, though, it is worth the effort to have something you can really love to use. Email Blacklist Check - See if your server is blacklistedMonday, 15th June 2009 - 1:35pm by Richard Bennett http://www.mxtoolbox.com/blacklists.aspx Email Blacklist Check - See if your server is blacklisted. YouTube - The Downfall of Agile HitlerFriday, 12th June 2009 - 11:40pm by Richard Bennett http://www.youtube.com/watch?v=l1wKO3rID9g Great parody of Agile vs. waterfall methodologies. Hitler goes crazy when he learns his team has not been following the tenets of the Agile Manifesto. Conditional Compilation of JScript/JavaScript in IEThursday, 11th June 2009 - 3:50pm by Richard Bennett http://javascriptkit.com/javatutors/conditionalcompile.shtml In IE, there is a little known feature called conditional compilation. Supported since IE4, this feature starting getting some attention when it began showing up in some Ajax related JavaScripts. The Uncarved Blog: Partial Function Application is not CurryingThursday, 11th June 2009 - 12:55am by Richard Bennett http://www.uncarved.com/blog/not_currying.mrk Often you will see in computer books and articles a pattern where a function is applied to some but not all of it's required arguments, resulting in a function of fewer arguments. [..] This is called "partial function application" Currying - Wikipedia, the free encyclopediaThursday, 11th June 2009 - 12:47am by Richard Bennett http://en.wikipedia.org/wiki/Currying In computer science, currying, invented by Moses Schönfinkel and later re-invented by Haskell Curry, is the technique of transforming a function that takes multiple arguments (or more accurately an n-tuple as argument) in such a way that it can be called as a chain of functions each with a single argument. Guy Harpaz Blog: PHP IDE Debug ProtocolThursday, 4th June 2009 - 11:25pm by Richard Bennett http://guyharpaz.blogspot.com/2006/05/php-ide-debug-protocol.html Today there are two leading debug protocols: DBGp, an open source protocol and Zend Studio's protocol. Both protocols have been used in commercial products in the last few years and are good solutions for debugging PHP applications and PHP web servers. Agile AllianceThursday, 4th June 2009 - 9:40pm by Richard Bennett With more than members located around the globe, the Agile Alliance is driven by the values and principles of the Manifesto for Agile Software Development. We recommend agile approaches to software development because they deliver value to organizations and end users faster and with higher quality. |
Link blog
"The [Yahoo!] Exceptional Performance team has identified a number of best practices for making web pages fast. The list includes 35 best practices divided into 7 categories." Value Stream Maps help us bring about organizational improvement, progress in our processes and methods, and most importantly, better software. Value Stream Maps can help both identify and stop waste in an organization. By leveraging the lessons explained in this article, your organization can find greater efficiencies and deliver higher-quality products to your customers. "The biggest roadblock is pushback from highly-trained experts who are offended by the idea. After 8 years of medical school, and in a regime that already demands vast amounts of paperwork, why should a doctor have to check off basic items on a list? Because we are fallible in the face of complexity, Gawande says, and because checklists work. Although he led research in this area he was skeptical about adopting checklists in his own operating rooms. But when he did, he made two critical discoveries. First, well-made checklists are easy to use. Second, they almost always caught errors." "Here, a Kanban system is used in a traditional waterfall development model but with a flow. This project has separate and serial processes which they call "design", "development", "validation" etc., and the Kanban cards move between processes. Each card represents a requirement for change or addition to the system and is a handoff to the downstream process. Note that this is not a classic waterfall process, where all the requirements are "designed" at one time, "developed", and "validated" at another time, which would cause all the cards to move in a group. Instead, the cards move one by one, like the one-piece-flow of manufacturing. What's happening here is a stable "sustaining" phase in a product‘s lifecycle, managed in a waterfall state transition model with a flow. Here, you can clearly see the "flow of work" concept instead, different from the "iteration" concept of Agile. It looks more like Kanban in factories than Agile Kanban does and it can be a pull system by making a rule to allow only the downstream process to move the cards 8. I call this "Sustaining Kanban", and find it similar to David Anderson's "Kanban System for Sustaining Engineering", which I discuss in the later section." "You break the work process in a series different activities (phases). You then set a limit of how many job units you will allow at any phase. A simple rule of thumb: you can have a few more work units as you have people doing that job, so that each has one thing to work on at a time, and a small cache of completed jobs. The people in a given phase will do their work on a job unit to completion, so that it is ready for the next phase of work. "This is where the somewhat brilliant key idea behind KSDM comes to play. The completed job does NOT free the person for working on another job, until that job is pulled into the following phase and work is started there. If work is piling up at a particular phase, those people are NOT ALLOWED to work ahead. As Taiichi Ohno makes so clear, that working ahead is waste. Instead of working ahead, they can look around to see what is wrong." "Advocates of goal setting have had a substantial impact on research, management education, and management practice. In this article, we argue that the beneficial effects of goal setting have been overstated and that systematic harm caused by goal setting has been largely ignored. We identify specific side effects associated with goal setting, including a narrow focus that neglects non-goal areas, a rise in unethical behavior, distorted risk preferences, corrosion of organizational culture, and reduced intrinsic motivation." "Agile is mostly driven driven by managment and consultants, seldom bottom up by developers. Some developes are suprised about agile and don’t know how to react. Lots of literature is written about agile, but very little with the developer in mind. What do you need to know about agile as a developer?" "The PHP worldwide developer count will grow to as high as 5 million developers by 2013, up from 3 million in 2007 and 4 million in 2009." This week Bob talks with Eric Ries about his Lean Startup concept and taking an entirely different approach to building your startup. Is 1 success and 9 failures the only way to build software startups? Eric doesn’t think so, and he convinced me. This is an approach to building your startup that I predict will get a lot of attention in 2010. The Australian Federal Government is pushing forward with a plan to force Internet Service Providers [ISPs] to censor the Internet for all Australians. This plan will waste tens of millions of taxpayer dollars and will not make anyone safer. "Results of a public trial have bolstered the Australian government's plan to implement both mandatory and optional ISP filtering in 2010. For the moment, though, violent video games are safe." In case you misinterpret the sarcasm, we do not agree with the study, the outcome or the actual proposal. "The Government 2.0 Taskforce is being formed against a backdrop of increased interest by governments worldwide in the potential uses of public sector information and online engagement." "The Taskforce will advise Government on structural barriers that prevent, and policies to promote, greater information disclosure, digital innovation and online engagement including the division of responsibilities for, and overall coordination of, these issues within government. "The Taskforce will work with the public, private, cultural and not for profit sectors to fund and develop seed projects that demonstrate the potential of proactive information disclosure and digital engagement for government." The contribution of this research is the development of the ‘naked objects’ approach to designing business systems, and the demonstration that the adoption of this approach yields significant benefits both to the developed system and to the development process. Using the naked objects approach to designing a business system, the domain objects (such as Customer, Product and Order) are exposed explicitly, and automatically, to the user, such that all user actions consist of viewing objects, and invoking behaviours that are encapsulated in those objects. In an OOUI, the user interacts explicitly with objects that represent entities in the domain that the application is concerned with. Many vector drawing applications, for example, have an OOUI - the objects being lines, circles and canvases. The user may explicitly select an object, alter its properties (such as size or colour), or invoke other actions upon it (such as to move, copy, or re-align it). If a business application has any OOUI, the user may be selecting and/or invoking actions on objects representing entities in the business domain such as customers, products or orders. This chart lists browsers that receive A-grade support as defined by Graded Browser Support. All YUI projects, including YUI 2 and YUI 3, aim to provide full A-grade support. An education organization in France has successfully sued a software vendor for failing to comply with the open source General Public License. The ruling is significant because it demonstrates that software recipients, and not just developers, can launch GPL enforcement cases in France. These are patterns & practices produced performance testing How Tos. You get to see them here first, before their final destination on MSDN. These How Tos represent current recommended practices. Use the how tos to supplement product documentation. Using the How Tos below, you can drill deeper into performance testing related areas, such as user experience modeling. Software developers don’t really like to make schedules. Usually, they try to get away without one. “It’ll be done when it’s done!” they say, expecting that such a brave, funny zinger will reduce their boss to a fit of giggles, and in the ensuing joviality, the schedule will be forgotten. So far, this isn't much different from the kind of analysis any competent operations team would conduct for a site outage. The next step is this: you have to commit to make a proportional investment in corrective action at every level of the analysis. SproutCore 1.0 is a huge milestone. It’s the point where you tell developers your code is good enough for them to base their business on it. You only get to do it once, so its worthwhile to take the time to get things right. Sometimes that means doing more surgery than you would like. In the end, though, it is worth the effort to have something you can really love to use. Email Blacklist Check - See if your server is blacklisted. Great parody of Agile vs. waterfall methodologies. Hitler goes crazy when he learns his team has not been following the tenets of the Agile Manifesto. In IE, there is a little known feature called conditional compilation. Supported since IE4, this feature starting getting some attention when it began showing up in some Ajax related JavaScripts. Often you will see in computer books and articles a pattern where a function is applied to some but not all of it's required arguments, resulting in a function of fewer arguments. [..] This is called "partial function application" In computer science, currying, invented by Moses Schönfinkel and later re-invented by Haskell Curry, is the technique of transforming a function that takes multiple arguments (or more accurately an n-tuple as argument) in such a way that it can be called as a chain of functions each with a single argument. Today there are two leading debug protocols: DBGp, an open source protocol and Zend Studio's protocol. Both protocols have been used in commercial products in the last few years and are good solutions for debugging PHP applications and PHP web servers. With more than members located around the globe, the Agile Alliance is driven by the values and principles of the Manifesto for Agile Software Development. We recommend agile approaches to software development because they deliver value to organizations and end users faster and with higher quality. |


Creative Commons