-
Lack of Technical Management
I worked on many projects and found a repeating anti-pattern that is happening to the codebase, which is the lack of technical management. Here, I am sharing my thoughts about it. The problem definition: The team has no understanding of the size of the product and its complexity. There is a lack of metrics and…
-
Personal Maps in a Kick of Meeting
I was in a KOM (Kick-off meeting) for a new Agile coaching project with some organization in Egypt. In my first day, first meeting, I planned a simple Agenda as following: Know about the team Know about the product Know about the project And build a list of problems and objectives for the project So…
-
Organizing Application Classes into Packages
In Java language, we have encapsulation at many levels. First, is the class, as it may has private data members and methods. It has the benefits of hiding complexity and provides a layer of abstraction. Second is the package. It provides access rights to sibling classes inside it. Classes defined without being public are private…
-
Why Velocity is a Broken Performance Metric?
In Scrum, we have two main metrics to measure Sprints. The first one is the Velocity, which is defined as the total story points of completely developed and tested User Stories. The second measure is Burned Effort, which is the total number of hours spent by the team throughout the Sprint. We use Burn Down…
-
Is Time Pressure an Acceptable Reason for Poor Quality?
I worked with many teams who had the same issue. An intense time pressure that led them to react by doing either of or both of the following: Coding in hurry, and falling into too many cycles of testing and bug fixing, which delayed them much more time and made the situation worse. Delivering a…
-
Google Maps and Agility
I commute driving my car almost daily from 2 to 3 hours, . I live and work in one of the biggest and busiest cities I think, Cairo. If you are not regularly commuting in a busy and a big city, possibly you cannot imagine the hassle and uncertainty of it. It is disappointing. I face…
-
Joined Happy Melly
I just joined @Happy_Melly network! and became a supporting member. Why is that important? I love my programming work and find it a joy and it was miserable why current management practices make people unhappy and disappointed unnecessarily. But simply I have no solution. I worked as a manager for 8 years and still can…
-
Session Review: Next Evolution of Agile Leadership Roles
Session: Agile Project Manager, Product Owner and ScrumMaster are all broken – The Next Evolution of Agile Leadership Roles At: Holiday-inn Hotel … City Stars, Cairo, Egypt Date: 8 Sept 2016, ——– There was a QA session followed by a session by Ahmed Sidky. My comments here are related to Sidky session. In…
-
“As a system developer I want to …” User Story
I worked with a team who is used to have stories that represent the development tasks. It was a mobile application with back-end development. I explained to the team that, User Story is simply a story that is related to the system user. The developer is not a system user, he is the developer of…
-
User Story is Not a Documentation Format
User stories intent is not to capture requirements completely. We know that written words are not sufficient to capture requirements for two reasons. First there is a lot of knowledge regarding requirements that are very difficult to document and hence to consume. Second a large part of requirements is not visible. It is like an iceberg,…
-
Agile Business Value
Many times, you need to prove to your customer and business people the value of adopting Agile mindset, methods and practices. The following resource are very valuable in this regard: 1) The Business Value of Agile Software Methods by David Rico; Saya Sone; Hasan Sayani Published by J. Ross Publishing, 2009 This book has useful…
-
Discipled Agile (DAD) 2.0 and Agile
Disciplined Agile just has the same values and principles of Agile, with expanded terminology and additional 3 principles. It replaced working software with working solution, customer with stakeholder as example. This changes in my understanding of Agile Manifesto are inclusive of everything Agile. So, confidently, I can assure Discipled Agile (DAD) 2.0 is one of the…
-
Disciplined Agile Delivery and Agility
NOTE: The below article is written on DAD, not DAD 2.0. My opinion on DAD 2.0 is different. Here is my opinion about Disciplined Agile Delivery in relation to Agility. Disciplined Agile Delivery (DAD) is a software development methodology that targets the enterprise and promises a disciplined and scalable methodology. DAD is formulated and published…
-
GUI Test Automation at End of Release
Today, I was consulting Egyptian company in Cairo. They had an objection to the CEO request to write automated GUI tests per sprint. Typically, he asked them to include that GUI test automation as a done definition per story, so the story will not be scored as done if its related automation was not totally…
-
Agile Manifesto Principle 7
Agile Manifesto Principle 7: Continuous attention to technical excellence and good design enhances agility. In waterfall projects, the technical excellence happens at the start through focus on good design and architecture, and happens again at the end of the project by focusing on finishing features and fixing bugs. In the middle, do whatever or in…
-
Just discovered ethical principle in Agile Manifesto!
I instructed Agile introduction course many times. Every time I explained the 12 Agile Manifesto principles I felt a repetition of ideas between Principle 1 and 3. Here a copy of the two principles: Principle1: Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Principle 3: Deliver working software frequently,…
-
Just discovered ethical principle in Agile Manifesto!
I instructed Agile introduction course many times. Every time I explained the 12 Agile Manifesto principles I felt a repetition of ideas between Principle 1 and 3. Here a copy of the two principles: Principle1: Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Principle 3: Deliver working software frequently,…
-
Managing Browser Back/Forward when you use JqueryMobile
I am using JQueryMobile for building website that works on Mobile, tablet, and desktop computers. As my application is an Ajax application. I wanted to control the browser URL in order to enable browser back/forward button in my Ajax single-page application. The solution is really easy, whenever you want to change the location call location.hash…
-
Being a Javascript Expert
Recently I am focusing to be an expert in Javascript. Being an expert is not an easy task. I have to focus as much as I can. If you know how much technologies I learned and worked in lately, you will know how I am distracted. I developed iphone, android and web applications using Java,…
-
Discarding Arabic Diacritics From Text
To strip out diacritics from Arabic text, this is a little code in Python that I like a lot. import unicodedata return filter(lambda c: unicodedata.category(c) != ‘Mn’, s) Look how it is elegant and small. Just one line with Lambda expression and a check of which the letter is unicode diacritics…